diff options
Diffstat (limited to 'sleekxmpp/plugins/xep_0280/stanza.py')
-rw-r--r-- | sleekxmpp/plugins/xep_0280/stanza.py | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/sleekxmpp/plugins/xep_0280/stanza.py b/sleekxmpp/plugins/xep_0280/stanza.py new file mode 100644 index 00000000..94b37823 --- /dev/null +++ b/sleekxmpp/plugins/xep_0280/stanza.py @@ -0,0 +1,64 @@ +""" + SleekXMPP: The Sleek XMPP Library + Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout + This file is part of SleekXMPP. + + See the file LICENSE for copying permissio +""" + +from sleekxmpp.xmlstream import ElementBase + + +class ReceivedCarbon(ElementBase): + name = 'received' + namespace = 'urn:xmpp:carbons:1' + plugin_attrib = 'carbon_received' + interfaces = set(['carbon_received']) + is_extension = True + + def get_carbon_received(self): + return self.parent()['forwarded']['stanza'] + + def del_carbon_received(self): + del self.parent()['forwarded']['stanza'] + + def set_carbon_received(self, stanza): + self.parent()['forwarded']['stanza'] = stanza + + +class SentCarbon(ElementBase): + name = 'sent' + namespace = 'urn:xmpp:carbons:1' + plugin_attrib = 'carbon_sent' + interfaces = set(['carbon_sent']) + is_extension = True + + def get_carbon_sent(self): + return self.parent()['forwarded']['stanza'] + + def del_carbon_sent(self): + del self.parent()['forwarded']['stanza'] + + def set_carbon_sent(self, stanza): + self.parent()['forwarded']['stanza'] = stanza + + +class PrivateCarbon(ElementBase): + name = 'private' + namespace = 'urn:xmpp:carbons:1' + plugin_attrib = 'carbon_private' + interfaces = set() + + +class CarbonEnable(ElementBase): + name = 'enable' + namespace = 'urn:xmpp:carbons:1' + plugin_attrib = 'carbon_enable' + interfaces = set() + + +class CarbonDisable(ElementBase): + name = 'disable' + namespace = 'urn:xmpp:carbons:1' + plugin_attrib = 'carbon_disable' + interfaces = set() |