diff --git a/receptor/connection/manager.py b/receptor/connection/manager.py index f0885d6f..9f9c3537 100644 --- a/receptor/connection/manager.py +++ b/receptor/connection/manager.py @@ -37,6 +37,6 @@ def get_listener(self, listen_url): def get_peer(self, peer): service = parse_peer(peer) if service.scheme == "receptor": - return sock.connect(service.hostname, service.port, self.factory, self.loop) + self.loop.create_task(sock.connect(service.hostname, service.port, self.factory, self.loop)) elif service.scheme in ("ws", "wss"): - return ws.connect(peer, self.factory, self.loop) + self.loop.create_task(ws.connect(peer, self.factory, self.loop)) diff --git a/receptor/controller.py b/receptor/controller.py index 7658b6be..3a9547da 100644 --- a/receptor/controller.py +++ b/receptor/controller.py @@ -32,9 +32,9 @@ def enable_server(self, listen_urls): logger.info("Serving on %s", url) self.loop.create_task(listener) - async def add_peer(self, peer): + def add_peer(self, peer): logger.info("Connecting to peer {}".format(peer)) - await self.loop.create_task(self.connection_manager.get_peer(peer)) + self.connection_manager.get_peer(peer) async def recv(self): inner = await self.receptor.response_queue.get() diff --git a/receptor/entrypoints.py b/receptor/entrypoints.py index 9e7d396b..a4d6d85c 100644 --- a/receptor/entrypoints.py +++ b/receptor/entrypoints.py @@ -32,7 +32,7 @@ async def node_keepalive(): if not config.node_server_disable: controller.enable_server(config.node_listen) for peer in config.node_peers: - controller.loop.create_task(controller.add_peer(peer)) + controller.add_peer(peer) if config.node_keepalive_interval > 1: controller.loop.create_task(node_keepalive()) controller.loop.create_task(controller.receptor.watch_expire()) @@ -60,7 +60,7 @@ def ping_iter(): async def ping_entrypoint(): read_task = controller.loop.create_task(read_responses()) - await controller.add_peer(config.ping_peer) + controller.add_peer(config.ping_peer) start_wait = time.time() while not controller.receptor.router.node_is_known(config.ping_recipient) and (time.time() - start_wait < 5): await asyncio.sleep(0.1) @@ -85,7 +85,7 @@ async def send_pings(): def run_as_send(config): async def send_entrypoint(): read_task = controller.loop.create_task(read_responses()) - await controller.add_peer(config.send_peer) + controller.add_peer(config.send_peer) start_wait = time.time() while not controller.receptor.router.node_is_known(config.ping_recipient) and (time.time() - start_wait < 5): await asyncio.sleep(0.1)