fixed bug #16 Roster not updating

This commit is contained in:
Nathan Fritz
2010-03-26 13:55:03 -07:00
parent 0659ddeff0
commit 0fc9072e5d
2 changed files with 14 additions and 10 deletions

View File

@@ -1,10 +1,12 @@
from .. xmlstream.stanzabase import ElementBase, ET, JID
import logging
class Roster(ElementBase):
namespace = 'jabber:iq:roster'
name = 'query'
plugin_attrib = 'roster'
interfaces = set(('items',))
sub_interfaces = set()
def setItems(self, items):
self.delItems()
@@ -27,8 +29,8 @@ class Roster(ElementBase):
items = {}
itemsxml = self.xml.findall('{jabber:iq:roster}item')
if itemsxml is not None:
item = {}
for itemxml in itemsxml:
item = {}
item['name'] = itemxml.get('name', '')
item['subscription'] = itemxml.get('subscription', '')
item['groups'] = []
@@ -36,7 +38,7 @@ class Roster(ElementBase):
if groupsxml is not None:
for groupxml in groupsxml:
item['groups'].append(groupxml.text)
items[JID(itemxml.get('jid'))] = item
items[itemxml.get('jid')] = item
return items
def delItems(self):