Exemplo n.º 1
0
    def connect(self, connection_string, reconnect=None, connected=None, disconnected=None):
        """
        :param connection_string:
        :param reconnect: Optional reconnect period. Connection is attempted once if not set.
        :param connected: Optional callback for receiving connection establishment notifications.
        :param disconnected: Optional callback for receiving disconnection notifications.
        :return:
        """
        if self._connected.isSet() is False and self._disconnected.isSet():
            log.debug("connect")
            conntype, conninfo = split_in_two(connection_string, "@")
            if conntype in self.connection_types:
                self._connection_type = conntype
                self._connection_info = conninfo

                self._reconnect_period = reconnect
                self._event_connected = connected
                self._event_disconnected = disconnected

                self._disconnected.clear()
                self._queue.put((ConnectionEvents.EVENT_START_CONNECT, None))
            else:
                raise ConnectionException("Specified connection type {:s} not supported".format(conntype))
        else:
            raise ConnectionBusyException("Busy")
    def __init__(self, event_queue, port_and_baud, require_acks=True):
        super(SerialConnection, self).__init__()
        self._queue = event_queue

        self._serial_port = None

        self._settings_port, baud = split_in_two(port_and_baud, ":")
        if len(baud) > 0:
            self._settings_baud = int(baud)
        else:
            self._settings_baud = 115200

        self._alive = threading.Event()
        self._alive.set()

        self._connected = threading.Event()
        self._connected.clear()

        if require_acks:
            self._seq_out = 0
        else:
            self._seq_out = None
        self._seq_in = None

        self._outqueue = Queue.Queue()
        self._recv_length = 0
        self._recv_buf = None

        self.start()
Exemplo n.º 3
0
    def connect(self, connection_string, reconnect=None, connected=None, disconnected=None):
        """
        :param connection_string:
        :param reconnect: Optional reconnect period. Connection is attempted once if not set.
        :param connected: Optional callback for receiving connection establishment notifications.
        :param disconnected: Optional callback for receiving disconnection notifications.
        :return:
        """
        if self._connected.isSet() is False and self._disconnected.isSet():
            log.debug("connect")
            conntype, conninfo = split_in_two(connection_string, "@")
            if conntype in self.connection_types:
                self._connection_type = conntype
                self._connection_info = conninfo

                self._reconnect_period = reconnect
                self._event_connected = connected
                self._event_disconnected = disconnected

                self._disconnected.clear()
                self._queue.put((ConnectionEvents.EVENT_START_CONNECT, None))
            else:
                raise ConnectionException("Specified connection type {:s} not supported".format(conntype))
        else:
            raise ConnectionBusyException("Busy")
Exemplo n.º 4
0
    def __init__(self, event_queue, port_and_baud):
        super(SerialConnection, self).__init__()
        self._queue = event_queue

        self._serial_port = None

        self._settings_port, baud_acks = split_in_two(port_and_baud, ":")

        baud, acks = split_in_two(baud_acks, "*")
        if len(baud) > 0:
            self._settings_baud = int(baud)
        else:
            self._settings_baud = 115200

        require_acks = True
        if len(acks) > 0:
            if acks == "ACK":
                require_acks = True
            elif acks == "NOACK":
                require_acks = False
            else:
                log.warning("Unrecognized ACK configuration '%s'", acks)

        self._alive = threading.Event()
        self._alive.set()

        self._connected = threading.Event()
        self._connected.clear()

        if require_acks:
            self._seq_out = 0
        else:
            self._seq_out = None
        self._seq_in = None

        self._outqueue = queue.Queue()
        self._recv_length = 0
        self._recv_buf = None

        self.start()
    def __init__(self, event_queue, port_and_baud):
        super(SerialConnection, self).__init__()
        self._queue = event_queue

        self._serial_port = None

        self._settings_port, baud_acks = split_in_two(port_and_baud, ":")

        baud, acks = split_in_two(baud_acks, "*")
        if len(baud) > 0:
            self._settings_baud = int(baud)
        else:
            self._settings_baud = 115200

        require_acks = True
        if len(acks) > 0:
            if acks == "ACK":
                require_acks = True
            elif acks == "NOACK":
                require_acks = False
            else:
                log.warning("Unrecognized ACK configuration '%s'", acks)

        self._alive = threading.Event()
        self._alive.set()

        self._connected = threading.Event()
        self._connected.clear()

        if require_acks:
            self._seq_out = 0
        else:
            self._seq_out = None
        self._seq_in = None

        self._outqueue = Queue.Queue()
        self._recv_length = 0
        self._recv_buf = None

        self.start()
    def __init__(self, event_queue, host_and_port):
        super(SfConnection, self).__init__()
        self._queue = event_queue

        self._socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        host, port = split_in_two(host_and_port, ":")
        if len(port) > 0:
            port = int(port)
        else:
            port = 9002

        self._server_address = (host, port)

        self._alive = threading.Event()
        self._alive.set()

        self._connected = threading.Event()
        self._connected.clear()

        self._recv_length = 0
        self._recv_buf = None

        self.start()
Exemplo n.º 7
0
    def __init__(self, event_queue, host_and_port):
        super(SfConnection, self).__init__()
        self._queue = event_queue

        self._socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        host, port = split_in_two(host_and_port, ":")
        if len(port) > 0:
            port = int(port)
        else:
            port = 9002

        self._server_address = (host, port)

        self._alive = threading.Event()
        self._alive.set()

        self._connected = threading.Event()
        self._connected.clear()

        self._recv_length = 0
        self._recv_buf = None

        self.start()