From 6ba42759cf154e6344ac7545b1a55ea80942002c Mon Sep 17 00:00:00 2001 From: James Lu Date: Mon, 20 Jul 2015 23:53:21 -0700 Subject: [PATCH] ts6: manually set a timer for ENDBURST so relay's initializeAll works --- protocols/ts6.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/protocols/ts6.py b/protocols/ts6.py index 5c25d3f..38464cd 100644 --- a/protocols/ts6.py +++ b/protocols/ts6.py @@ -463,6 +463,14 @@ def handle_events(irc, data): # Does charybdis propagate these? If so, how? log.debug('(%s) irc.connected set!', irc.name) irc.connected.set() + + # Charybdis doesn't have the idea of an explicit endburst; but some plugins + # like relay require it to know that the network's connected. + # We'll set a timer to manually call endburst. It's not beautiful, + # but it's the best we can do. + endburst_timer = threading.Timer(1, irc.callHooks, args=([irc.uplink, 'ENDBURST', {}],)) + log.debug('(%s) Starting delay to send ENDBURST', irc.name) + endburst_timer.start() try: real_args = [] for arg in args: