Source code for slixmpp.plugins.xep_0258.security_labels
# 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.importloggingfromslixmppimportIq,Messagefromslixmpp.pluginsimportBasePluginfromslixmpp.xmlstreamimportregister_stanza_pluginfromslixmpp.plugins.xep_0258importstanza,SecurityLabel,Cataloglog=logging.getLogger(__name__)
[docs]classXEP_0258(BasePlugin):name='xep_0258'description='XEP-0258: Security Labels in XMPP'dependencies={'xep_0030'}stanza=stanzadefplugin_init(self):register_stanza_plugin(Message,SecurityLabel)register_stanza_plugin(Iq,Catalog)defplugin_end(self):self.xmpp['xep_0030'].del_feature(feature=SecurityLabel.namespace)defsession_bind(self,jid):self.xmpp['xep_0030'].add_feature(SecurityLabel.namespace)defget_catalog(self,jid,ifrom=None,callback=None,timeout=None):iq=self.xmpp.Iq()iq['to']=jidiq['from']=ifromiq['type']='get'iq.enable('security_label_catalog')returniq.send(callback=callback,timeout=timeout)