From 8eb1d320ae3048eb412c29f4b103892722c76a62 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 21 Nov 2018 14:24:09 +0000 Subject: [PATCH] Better reconnect logic --- chat.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/chat.py b/chat.py index 78ce251..e7e4c3a 100644 --- a/chat.py +++ b/chat.py @@ -37,12 +37,12 @@ S.Endpoint(conn, S.Observe(Says(S.CAPTURE, S.CAPTURE)), on_msg=lambda who, what: print(who, 'said', repr(what))) async def reconnect(loop): - while True: - await conn.main(loop, on_connected=lambda: print('-'*50, 'Connected')) - if not conn: break - print('-'*50, 'Disconnected') - await asyncio.sleep(2) - if not conn: break + while conn: + did_connect = await conn.main(loop, on_connected=lambda: print('-'*50, 'Connected')) + if did_connect: + print('-'*50, 'Disconnected') + else: + await asyncio.sleep(2) def accept_input(loop): global conn