diff options
Diffstat (limited to 'sleekxmpp/plugins')
-rw-r--r-- | sleekxmpp/plugins/xep_0045.py | 14 | ||||
-rw-r--r-- | sleekxmpp/plugins/xep_0280/carbons.py | 9 | ||||
-rw-r--r-- | sleekxmpp/plugins/xep_0280/stanza.py | 22 |
3 files changed, 25 insertions, 20 deletions
diff --git a/sleekxmpp/plugins/xep_0045.py b/sleekxmpp/plugins/xep_0045.py index 45f2915f..cba07702 100644 --- a/sleekxmpp/plugins/xep_0045.py +++ b/sleekxmpp/plugins/xep_0045.py @@ -245,11 +245,11 @@ class XEP_0045(BasePlugin): stanza = self.xmpp.makePresence(pto="%s/%s" % (room, nick), pstatus=pstatus, pshow=pshow, pfrom=pfrom) x = ET.Element('{http://jabber.org/protocol/muc}x') if password: - passelement = ET.Element('password') + passelement = ET.Element('{http://jabber.org/protocol/muc}password') passelement.text = password x.append(passelement) if maxhistory: - history = ET.Element('history') + history = ET.Element('{http://jabber.org/protocol/muc}history') if maxhistory == "0": history.attrib['maxchars'] = maxhistory else: @@ -271,10 +271,10 @@ class XEP_0045(BasePlugin): iq['from'] = ifrom iq['to'] = room query = ET.Element('{http://jabber.org/protocol/muc#owner}query') - destroy = ET.Element('destroy') + destroy = ET.Element('{http://jabber.org/protocol/muc#owner}destroy') if altroom: destroy.attrib['jid'] = altroom - xreason = ET.Element('reason') + xreason = ET.Element('{http://jabber.org/protocol/muc#owner}reason') xreason.text = reason destroy.append(xreason) query.append(destroy) @@ -294,9 +294,9 @@ class XEP_0045(BasePlugin): raise TypeError query = ET.Element('{http://jabber.org/protocol/muc#admin}query') if nick is not None: - item = ET.Element('item', {'affiliation':affiliation, 'nick':nick}) + item = ET.Element('{http://jabber.org/protocol/muc#admin}item', {'affiliation':affiliation, 'nick':nick}) else: - item = ET.Element('item', {'affiliation':affiliation, 'jid':jid}) + item = ET.Element('{http://jabber.org/protocol/muc#admin}item', {'affiliation':affiliation, 'jid':jid}) query.append(item) iq = self.xmpp.makeIqSet(query) iq['to'] = room @@ -317,7 +317,7 @@ class XEP_0045(BasePlugin): x = ET.Element('{http://jabber.org/protocol/muc#user}x') invite = ET.Element('{http://jabber.org/protocol/muc#user}invite', {'to': jid}) if reason: - rxml = ET.Element('reason') + rxml = ET.Element('{http://jabber.org/protocol/muc#user}reason') rxml.text = reason invite.append(rxml) x.append(invite) diff --git a/sleekxmpp/plugins/xep_0280/carbons.py b/sleekxmpp/plugins/xep_0280/carbons.py index fe2cdbb2..482d046a 100644 --- a/sleekxmpp/plugins/xep_0280/carbons.py +++ b/sleekxmpp/plugins/xep_0280/carbons.py @@ -47,13 +47,18 @@ class XEP_0280(BasePlugin): register_stanza_plugin(Iq, stanza.CarbonEnable) register_stanza_plugin(Iq, stanza.CarbonDisable) + register_stanza_plugin(stanza.ReceivedCarbon, + self.xmpp['xep_0297'].stanza.Forwarded) + register_stanza_plugin(stanza.SentCarbon, + self.xmpp['xep_0297'].stanza.Forwarded) + def plugin_end(self): self.xmpp.remove_handler('Carbon Received') self.xmpp.remove_handler('Carbon Sent') - self.xmpp.plugin['xep_0030'].del_feature(feature='urn:xmpp:carbons:1') + self.xmpp.plugin['xep_0030'].del_feature(feature='urn:xmpp:carbons:2') def session_bind(self, jid): - self.xmpp.plugin['xep_0030'].add_feature('urn:xmpp:carbons:1') + self.xmpp.plugin['xep_0030'].add_feature('urn:xmpp:carbons:2') def _handle_carbon_received(self, msg): self.xmpp.event('carbon_received', msg) diff --git a/sleekxmpp/plugins/xep_0280/stanza.py b/sleekxmpp/plugins/xep_0280/stanza.py index 94b37823..2f3aad86 100644 --- a/sleekxmpp/plugins/xep_0280/stanza.py +++ b/sleekxmpp/plugins/xep_0280/stanza.py @@ -11,54 +11,54 @@ from sleekxmpp.xmlstream import ElementBase class ReceivedCarbon(ElementBase): name = 'received' - namespace = 'urn:xmpp:carbons:1' + namespace = 'urn:xmpp:carbons:2' plugin_attrib = 'carbon_received' interfaces = set(['carbon_received']) is_extension = True def get_carbon_received(self): - return self.parent()['forwarded']['stanza'] + return self['forwarded']['stanza'] def del_carbon_received(self): - del self.parent()['forwarded']['stanza'] + del self['forwarded']['stanza'] def set_carbon_received(self, stanza): - self.parent()['forwarded']['stanza'] = stanza + self['forwarded']['stanza'] = stanza class SentCarbon(ElementBase): name = 'sent' - namespace = 'urn:xmpp:carbons:1' + namespace = 'urn:xmpp:carbons:2' plugin_attrib = 'carbon_sent' interfaces = set(['carbon_sent']) is_extension = True def get_carbon_sent(self): - return self.parent()['forwarded']['stanza'] + return self['forwarded']['stanza'] def del_carbon_sent(self): - del self.parent()['forwarded']['stanza'] + del self['forwarded']['stanza'] def set_carbon_sent(self, stanza): - self.parent()['forwarded']['stanza'] = stanza + self['forwarded']['stanza'] = stanza class PrivateCarbon(ElementBase): name = 'private' - namespace = 'urn:xmpp:carbons:1' + namespace = 'urn:xmpp:carbons:2' plugin_attrib = 'carbon_private' interfaces = set() class CarbonEnable(ElementBase): name = 'enable' - namespace = 'urn:xmpp:carbons:1' + namespace = 'urn:xmpp:carbons:2' plugin_attrib = 'carbon_enable' interfaces = set() class CarbonDisable(ElementBase): name = 'disable' - namespace = 'urn:xmpp:carbons:1' + namespace = 'urn:xmpp:carbons:2' plugin_attrib = 'carbon_disable' interfaces = set() |