summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRiccardo (C10uD) <c10ud.dev@gmail.com>2011-09-21 18:37:54 +0200
committerRiccardo (C10uD) <c10ud.dev@gmail.com>2011-09-21 18:37:54 +0200
commit22f3462812c6d7e2245c53df0ee2f5a0bbeeb4d7 (patch)
tree195bfa59a8e304296ba59462a2f764bf65e07f91
parent464f4b7e6717f156ac13fdb781bfff70b56a2377 (diff)
notification: correctly handle qng
-rw-r--r--papyon/msnp/notification.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/papyon/msnp/notification.py b/papyon/msnp/notification.py
index 964c566..15aad5a 100644
--- a/papyon/msnp/notification.py
+++ b/papyon/msnp/notification.py
@@ -317,10 +317,6 @@ class NotificationProtocol(BaseProtocol, Timer):
# Handlers ---------------------------------------------------------------
# --------- Connection ---------------------------------------------------
- def _check_ping(self, time_id):
- if self.time_id == time_id:
- self.emit("connection-lost", "Ping timeout")
-
def _handle_VER(self, command):
self._protocol_version = int(command.arguments[0].lstrip('MSNP'))
self._send_command('CVR',
@@ -402,8 +398,7 @@ class NotificationProtocol(BaseProtocol, Timer):
timeout = int(command.arguments[0])
self.start_timeout("ping", timeout)
self._time_id = time.time()
- self.start_timeout("ping-%s" % self._time_id, timeout+5, \
- (self._check_ping, self._time_id))
+ self.start_timeout(("qing", self._time_id), timeout+5)
def _handle_OUT(self, command):
reason = None
@@ -780,6 +775,10 @@ class NotificationProtocol(BaseProtocol, Timer):
def on_ping_timeout(self):
self._transport.enable_ping()
+ def on_qing_timeout(self, time_id):
+ if self._time_id == time_id:
+ self._transport.emit("connection-lost", "Ping timeout")
+
def _command_answered_cb(self, tr_id, *args):
callback, errback = self._callbacks.get(tr_id, (None, None))
run(callback, *args)