Ejemplo n.º 1
0
    def up(self):
        while True:
            conn, addr = self.sock.accept()
            print 'Connection address:', addr
            while 1:
                data = conn.recv(BUFFER_SIZE)
                if not data: break
                package = Package(11, 320)
                package.setPackage(data)
                package.decode()


                if package.type == 0 or package.type == 1:
                    reply_package = Package(1)
                    messages_data = self.call(package)
                    reply_package.data = ''.join(messages_data)
                    if DEVELOP: print package.__str__()
                    conn.send(reply_package.getPackage())  # echo
                elif package.type == 2:
                    reply_package = Package(2)
                    reply_package.data = 'OK'
                    if DEVELOP: print package.__str__()
                    conn.send(reply_package.getPackage())

                if package.command.name == 'send_file':
                    var = package.command.variables.split()
                    filename = var[0]
                    mode = var[1]

                    print "Start receiving"
                    file = open(filename, mode)
                    file.write(package.data.decode())
                    file.close()

            conn.close()
Ejemplo n.º 2
0
    def sendFile(self, filename):
        s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        s.connect((TCP_IP, TCP_PORT))
        package = Package(3)
        package.command.variables = ' '.join([filename, 'wb'])

        print "Starting sending file"
        with open(filename,'rb') as file:
            print 'Sending..'
            data = file.read(2048)

            package.command.name = 'send_file'
            package.data = data.encode()
            s.send(package.getPackage())
            package.command.variables = '{} {}'.format(filename, 'a')