summaryrefslogtreecommitdiff
path: root/sleekxmpp/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'sleekxmpp/plugins')
-rw-r--r--sleekxmpp/plugins/xep_0045.py14
-rw-r--r--sleekxmpp/plugins/xep_0280/carbons.py9
-rw-r--r--sleekxmpp/plugins/xep_0280/stanza.py22
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()