From f6b3a0c6cffa5ebf10d20c20b5cadd575c91fe81 Mon Sep 17 00:00:00 2001 From: mathieui Date: Thu, 12 Feb 2015 12:17:01 +0100 Subject: Fix the uses of stanza.reply() This is relying on the stanzas being copied for each handler. We no longer do that for performance reasons, so instead of editing the copy in-place, stanza.reply() now returns a new stanza. --- slixmpp/plugins/xep_0323/sensordata.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'slixmpp/plugins/xep_0323/sensordata.py') diff --git a/slixmpp/plugins/xep_0323/sensordata.py b/slixmpp/plugins/xep_0323/sensordata.py index e032bb7b..21afb55a 100644 --- a/slixmpp/plugins/xep_0323/sensordata.py +++ b/slixmpp/plugins/xep_0323/sensordata.py @@ -303,11 +303,11 @@ class XEP_0323(BasePlugin): #print("added session: " + str(self.sessions)) - iq.reply() + iq = iq.reply() iq['accepted']['seqnr'] = seqnr if not request_delay_sec is None: iq['accepted']['queued'] = "true" - iq.send(block=False) + iq.send() self.sessions[session]["node_list"] = process_nodes @@ -327,11 +327,11 @@ class XEP_0323(BasePlugin): self._threaded_node_request(session, process_fields, req_flags) else: - iq.reply() + iq = iq.reply() iq['type'] = 'error' iq['rejected']['seqnr'] = seqnr iq['rejected']['error'] = error_msg - iq.send(block=False) + iq.send() def _threaded_node_request(self, session, process_fields, flags): """ @@ -515,21 +515,21 @@ class XEP_0323(BasePlugin): self.sessions[s]["commTimers"][n].cancel() # Confirm - iq.reply() + iq = iq.reply() iq['type'] = 'result' iq['cancelled']['seqnr'] = seqnr - iq.send(block=False) + iq.send() # Delete session del self.sessions[s] return # Could not find session, send reject - iq.reply() + iq = iq.reply() iq['type'] = 'error' iq['rejected']['seqnr'] = seqnr iq['rejected']['error'] = "Cancel request received, no matching request is active." - iq.send(block=False) + iq.send() # ================================================================= # Client side (data retriever) API @@ -610,7 +610,7 @@ class XEP_0323(BasePlugin): iq['req']._set_flags(flags) self.sessions[seqnr] = {"from": iq['from'], "to": iq['to'], "seqnr": seqnr, "callback": callback} - iq.send(block=False) + iq.send() return seqnr @@ -631,7 +631,7 @@ class XEP_0323(BasePlugin): iq['type'] = "get" iq['id'] = seqnr iq['cancel']['seqnr'] = seqnr - iq.send(block=False) + iq.send() def _get_new_seqnr(self): """ Returns a unique sequence number (unique across threads) """ -- cgit v1.2.3