XEP-0352: Client State Indication¶
- class slixmpp.plugins.xep_0352.XEP_0352(xmpp, config=None)[source]¶
XEP-0352: Client State Indication
Stanza elements¶
- class slixmpp.plugins.xep_0352.stanza.Active(stream=None, xml=None, stype=None, sto=None, sfrom=None, sid=None, parent=None, recv=False)[source]¶
- name: ClassVar[str] = 'active'¶
The XML tag name of the element, not including any namespace prefixes. For example, an
ElementBase
object for<message />
would usename = 'message'
.
- namespace: str = 'urn:xmpp:csi:0'¶
The default XMPP client namespace
- plugin_attrib: ClassVar[str] = 'active'¶
For
ElementBase
subclasses which are intended to be used as plugins, theplugin_attrib
value defines the plugin name. Plugins may be accessed by using theplugin_attrib
value as the interface. An example usingplugin_attrib = 'foo'
:register_stanza_plugin(Message, FooPlugin) msg = Message() msg['foo']['an_interface_from_the_foo_plugin']
- setup(xml)[source]¶
Initialize the stanza’s XML contents.
Will return
True
if XML was generated according to the stanza’s definition instead of building a stanza object from an existing XML object.- Parameters
xml – An existing XML object to use for the stanza’s content instead of generating new XML.
- class slixmpp.plugins.xep_0352.stanza.ClientStateIndication(xml=None, parent=None)[source]¶
- iterables: List[ElementBase]¶
A list of child stanzas whose class is included in
plugin_iterables
.
- loaded_plugins: Set[str]¶
- name: ClassVar[str] = 'csi'¶
The XML tag name of the element, not including any namespace prefixes. For example, an
ElementBase
object for<message />
would usename = 'message'
.
- namespace: str = 'urn:xmpp:csi:0'¶
The XML namespace for the element. Given
<foo xmlns="bar" />
, thennamespace = "bar"
should be used. The default namespace isjabber:client
since this is being used in an XMPP library.
- parent: Optional[ReferenceType[ElementBase]]¶
A
weakref.weakref
to the parent stanza, if there is one. If not, thenparent
isNone
.
- plugin_attrib: ClassVar[str] = 'csi'¶
For
ElementBase
subclasses which are intended to be used as plugins, theplugin_attrib
value defines the plugin name. Plugins may be accessed by using theplugin_attrib
value as the interface. An example usingplugin_attrib = 'foo'
:register_stanza_plugin(Message, FooPlugin) msg = Message() msg['foo']['an_interface_from_the_foo_plugin']
- plugins: Dict[Tuple[str, Optional[str]], ElementBase]¶
An ordered dictionary of plugin stanzas, mapped by their
plugin_attrib
value.
- tag: str¶
The name of the tag for the stanza’s root element. It is the same as calling
tag_name()
and is formatted as'{namespace}elementname'
.
- xml: ET.Element¶
The underlying XML object for the stanza. It is a standard
xml.etree.ElementTree
object.
- class slixmpp.plugins.xep_0352.stanza.Inactive(stream=None, xml=None, stype=None, sto=None, sfrom=None, sid=None, parent=None, recv=False)[source]¶
- name: ClassVar[str] = 'inactive'¶
The XML tag name of the element, not including any namespace prefixes. For example, an
ElementBase
object for<message />
would usename = 'message'
.
- namespace: str = 'urn:xmpp:csi:0'¶
The default XMPP client namespace
- plugin_attrib: ClassVar[str] = 'inactive'¶
For
ElementBase
subclasses which are intended to be used as plugins, theplugin_attrib
value defines the plugin name. Plugins may be accessed by using theplugin_attrib
value as the interface. An example usingplugin_attrib = 'foo'
:register_stanza_plugin(Message, FooPlugin) msg = Message() msg['foo']['an_interface_from_the_foo_plugin']
- setup(xml)[source]¶
Initialize the stanza’s XML contents.
Will return
True
if XML was generated according to the stanza’s definition instead of building a stanza object from an existing XML object.- Parameters
xml – An existing XML object to use for the stanza’s content instead of generating new XML.