diff src/core/xmpp.py @ 1573:6338677f3a89

core (client): added a sendError method to easily build error response from <IQ\> stanza
author Goffi <goffi@goffi.org>
date Wed, 11 Nov 2015 14:56:05 +0100
parents 001b62bed67c
children 5b24d6bf5d15
line wrap: on
line diff
--- a/src/core/xmpp.py	Sun Nov 08 15:16:14 2015 +0100
+++ b/src/core/xmpp.py	Wed Nov 11 14:56:05 2015 +0100
@@ -21,6 +21,7 @@
 from sat.core.constants import Const as C
 from twisted.internet import task, defer
 from twisted.words.protocols.jabber import jid, xmlstream
+from twisted.words.protocols.jabber import error
 from wokkel import client, disco, xmppim, generic, delay, iwokkel
 from sat.core.log import getLogger
 log = getLogger(__name__)
@@ -59,6 +60,15 @@
         iq_elt.timeout = timeout
         return iq_elt
 
+    def sendError(self, iq_elt, condition):
+        """Send error stanza build from iq_elt
+
+        @param iq_elt(domish.Element): initial IQ element
+        @param condition(unicode): error condition
+        """
+        iq_error_elt = error.StanzaError(condition).toResponse(iq_elt)
+        self.xmlstream.send(iq_error_elt)
+
     def _authd(self, xmlstream):
         if not self.host_app.trigger.point("XML Initialized", xmlstream, self.profile):
             return