Add a xep-0334 plugin
This commit is contained in:
parent
e7248d9af9
commit
ffced0ed9a
3 changed files with 72 additions and 0 deletions
14
slixmpp/plugins/xep_0334/__init__.py
Normal file
14
slixmpp/plugins/xep_0334/__init__.py
Normal file
|
@ -0,0 +1,14 @@
|
|||
"""
|
||||
Slixmpp: The Slick XMPP Library
|
||||
Copyright (C) 2012 Nathanael C. Fritz, Lance J.T. Stout
|
||||
This file is part of Slixmpp.
|
||||
|
||||
See the file LICENSE for copying permission.
|
||||
"""
|
||||
|
||||
from slixmpp.plugins.base import register_plugin
|
||||
|
||||
from slixmpp.plugins.xep_0334.stanza import Store, NoStore, NoPermanentStore, NoCopy
|
||||
from slixmpp.plugins.xep_0334.hints import XEP_0334
|
||||
|
||||
register_plugin(XEP_0334)
|
28
slixmpp/plugins/xep_0334/hints.py
Normal file
28
slixmpp/plugins/xep_0334/hints.py
Normal file
|
@ -0,0 +1,28 @@
|
|||
"""
|
||||
Slixmpp: The Slick XMPP Library
|
||||
Copyright (C) 2016 Nathanael C. Fritz, Lance J.T. Stout
|
||||
This file is part of Slixmpp.
|
||||
|
||||
See the file LICENSE for copying permission.
|
||||
"""
|
||||
|
||||
import logging
|
||||
|
||||
from slixmpp import Message
|
||||
from slixmpp.plugins import BasePlugin
|
||||
from slixmpp.xmlstream import register_stanza_plugin
|
||||
from slixmpp.plugins.xep_0334 import stanza, Store, NoStore, NoPermanentStore, NoCopy
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
class XEP_0334(BasePlugin):
|
||||
|
||||
name = 'xep_0334'
|
||||
description = 'XEP-0334: Message Processing Hints'
|
||||
stanza = stanza
|
||||
|
||||
def plugin_init(self):
|
||||
register_stanza_plugin(Message, Store)
|
||||
register_stanza_plugin(Message, NoStore)
|
||||
register_stanza_plugin(Message, NoPermanentStore)
|
||||
register_stanza_plugin(Message, NoCopy)
|
30
slixmpp/plugins/xep_0334/stanza.py
Normal file
30
slixmpp/plugins/xep_0334/stanza.py
Normal file
|
@ -0,0 +1,30 @@
|
|||
"""
|
||||
slixmpp: The Slick XMPP Library
|
||||
Implementation of Message Processing Hints
|
||||
http://xmpp.org/extensions/xep-0334.html
|
||||
This file is part of slixmpp.
|
||||
|
||||
See the file LICENSE for copying permission.
|
||||
"""
|
||||
|
||||
from slixmpp.xmlstream import ElementBase
|
||||
|
||||
class Store(ElementBase):
|
||||
name = 'store'
|
||||
plugin_attrib = 'store'
|
||||
namespace = 'urn:xmpp:hints'
|
||||
|
||||
class NoPermanentStore(ElementBase):
|
||||
name = 'no-permanent-store'
|
||||
plugin_attrib = 'no-permanent-store'
|
||||
namespace = 'urn:xmpp:hints'
|
||||
|
||||
class NoStore(ElementBase):
|
||||
name = 'no-store'
|
||||
plugin_attrib = 'no-store'
|
||||
namespace = 'urn:xmpp:hints'
|
||||
|
||||
class NoCopy(ElementBase):
|
||||
name = 'no-copy'
|
||||
plugin_attrib = 'no-copy'
|
||||
namespace = 'urn:xmpp:hints'
|
Loading…
Reference in a new issue