# 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.importloggingfromslixmppimportIqfromslixmpp.pluginsimportBasePluginfromslixmpp.xmlstreamimportregister_stanza_pluginfromslixmpp.plugins.xep_0279importstanza,IPCheck
[docs]classXEP_0279(BasePlugin):name='xep_0279'description='XEP-0279: Server IP Check'dependencies={'xep_0030'}stanza=stanzadefplugin_init(self):register_stanza_plugin(Iq,IPCheck)defsession_bind(self,jid):self.xmpp['xep_0030'].add_feature('urn:xmpp:sic:0')defplugin_end(self):self.xmpp['xep_0030'].del_feature(feature='urn:xmpp:sic:0')defcheck_ip(self,ifrom=None,timeout=None,callback=None,timeout_callback=None):iq=self.xmpp.Iq()iq['type']='get'iq['from']=ifromiq.enable('ip_check')returniq.send(timeout=timeout,callback=callback,timeout_callback=timeout_callback)