Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/services/presence2/presenceservice.py
diff options
context:
space:
mode:
authorDan Williams <dcbw@redhat.com>2007-03-01 03:13:27 (GMT)
committer Dan Williams <dcbw@redhat.com>2007-03-01 03:13:27 (GMT)
commit57b887df30e38da6ef116572ce87934931114aa4 (patch)
tree4acfa1683c55b7e24ee9a28a64f6a2493242afd5 /services/presence2/presenceservice.py
parent48e9887d92e08fb3f001957adb5e4f009699b864 (diff)
PresenceService fixes; request buddy presence when using existing connection
Diffstat (limited to 'services/presence2/presenceservice.py')
-rw-r--r--services/presence2/presenceservice.py20
1 files changed, 8 insertions, 12 deletions
diff --git a/services/presence2/presenceservice.py b/services/presence2/presenceservice.py
index f3739e3..cb9ad4f 100644
--- a/services/presence2/presenceservice.py
+++ b/services/presence2/presenceservice.py
@@ -82,13 +82,11 @@ class PresenceService(dbus.service.Object):
new_buddy = False
key = props['key']
buddy = self._buddies.get(key)
-
if not buddy:
# we don't know yet this buddy
objid = self._get_next_object_id()
- buddy = Buddy(self._bus_name, objid, handle=handle)
- buddy.set_key(key)
- print "create buddy", key
+ buddy = Buddy(self._bus_name, objid, key=key)
+ print "New buddy %s" % key
self._buddies[key] = buddy
new_buddy = True
@@ -101,6 +99,7 @@ class PresenceService(dbus.service.Object):
if new_buddy:
self.BuddyAppeared(buddy.object_path())
buddy.set_properties(props)
+ print "New buddy properties %s" % props
def _contact_offline(self, tp, handle):
buddy = self._handles[tp].pop(handle)
@@ -108,13 +107,10 @@ class PresenceService(dbus.service.Object):
# the handle of the buddy for this CM is not valid anymore
buddy.handles.pop(tp)
-
if not buddy.handles:
- # we remove the last handle of the buddy, so we don't see
- # it anymore.
- self._buddies.pop(key)
- print "remove buddy"
self.BuddyDisappeared(buddy.object_path())
+ print "Buddy %s gone" % buddy.get_key()
+ self._buddies.pop(key)
def _get_next_object_id(self):
"""Increment and return the object ID counter."""
@@ -123,15 +119,15 @@ class PresenceService(dbus.service.Object):
def _avatar_updated(self, tp, handle, avatar):
buddy = self._handles[tp].get(handle)
-
- if buddy:
+ if buddy and not buddy.is_owner():
+ print "Buddy %s icon updated" % buddy.get_key()
buddy.set_icon(avatar)
def _properties_changed(self, tp, handle, prop):
buddy = self._handles[tp].get(handle)
-
if buddy:
buddy.set_properties(prop)
+ print "Buddy %s properties updated" % buddy.get_key()
def _activities_changed(self, tp, handle, prop):
pass