Fix issues in Google settings plugin.

This commit is contained in:
Lance Stout 2013-01-21 01:38:42 -08:00
parent f34b9399cc
commit 903e641457
2 changed files with 9 additions and 6 deletions

View file

@ -10,7 +10,7 @@ import logging
from sleekxmpp.stanza import Iq
from sleekxmpp.xmlstream.handler import Callback
from sleekxmpp.xmlstream.matcher import MatchXPath
from sleekxmpp.xmlstream.matcher import StanzaPath
from sleekxmpp.xmlstream import register_stanza_plugin
from sleekxmpp.plugins import BasePlugin
from sleekxmpp.plugins.google_settings import stanza
@ -37,9 +37,7 @@ class GoogleSettings(BasePlugin):
self.xmpp.register_handler(
Callback('Google Settings',
MatchXPath('{%s}iq/%s' % (
self.xmpp.default_ns,
stanza.UserSettings.tag_name())),
StanzaPath('iq@type=set/google_settings'),
self._handle_settings_change))
def plugin_end(self):
@ -51,7 +49,7 @@ class GoogleSettings(BasePlugin):
iq.enable('google_settings')
return iq.send(block=block, timeout=timeout, callback=callback)
def update(settings, block=True, timeout=None, callback=None):
def update(self, settings, block=True, timeout=None, callback=None):
iq = self.xmpp.Iq()
iq['type'] = 'set'
iq.enable('google_settings')
@ -62,4 +60,9 @@ class GoogleSettings(BasePlugin):
return iq.send(block=block, timeout=timeout, callback=callback)
def _handle_settings_change(self, iq):
reply = self.xmpp.Iq()
reply['type'] = 'result'
reply['id'] = iq['id']
reply['to'] = iq['from']
reply.send()
self.xmpp.event('google_settings_change', iq)

View file

@ -6,7 +6,7 @@
See the file LICENSE for copying permission.
"""
from sleekxmpp.xmlstream import ElementBase, register_stanza_plugin
from sleekxmpp.xmlstream import ET, ElementBase, register_stanza_plugin
class UserSettings(ElementBase):