# HG changeset patch # User Goffi # Date 1447250165 -3600 # Node ID 6338677f3a8946c5da4aad03548c0d7528608bb5 # Parent 6a6fe840c3a6bb32d15d9cafd57542708ea10cfc core (client): added a sendError method to easily build error response from stanza diff -r 6a6fe840c3a6 -r 6338677f3a89 src/core/sat_main.py --- a/src/core/sat_main.py Sun Nov 08 15:16:14 2015 +0100 +++ b/src/core/sat_main.py Wed Nov 11 14:56:05 2015 +0100 @@ -478,6 +478,7 @@ def getJidNStream(self, profile_key): """Convenient method to get jid and stream from profile key @return: tuple (jid, xmlstream) from profile, can be None""" + # TODO: deprecate this method (getClient is enough) profile = self.memory.getProfileName(profile_key) if not profile or not self.profiles[profile].isConnected(): return (None, None) diff -r 6a6fe840c3a6 -r 6338677f3a89 src/core/xmpp.py --- 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