services/presence: buddy: add mapping to/from Telepathy handles
This commit is contained in:
parent
cd0a2b3ecd
commit
f3a2d532f5
@ -236,6 +236,28 @@ class Buddy(ExportedGObject):
|
|||||||
full set of properties, just the changes.
|
full set of properties, just the changes.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
@dbus.service.signal(_BUDDY_INTERFACE, signature='sou')
|
||||||
|
def TelepathyHandleAdded(self, tp_conn_name, tp_conn_path, handle):
|
||||||
|
"""Another Telepathy handle has become associated with the buddy.
|
||||||
|
|
||||||
|
This must only be emitted for non-channel-specific handles.
|
||||||
|
|
||||||
|
tp_conn_name -- The bus name at which the Telepathy connection may be
|
||||||
|
found
|
||||||
|
tp_conn_path -- The object path at which the Telepathy connection may
|
||||||
|
be found
|
||||||
|
handle -- The handle of type CONTACT, which is not channel-specific,
|
||||||
|
newly associated with the buddy
|
||||||
|
"""
|
||||||
|
|
||||||
|
@dbus.service.signal(_BUDDY_INTERFACE, signature='sou')
|
||||||
|
def TelepathyHandleRemoved(self, tp_conn_name, tp_conn_path, handle):
|
||||||
|
"""A Telepathy handle has ceased to be associated with the buddy,
|
||||||
|
probably because that contact went offline.
|
||||||
|
|
||||||
|
The parameters are the same as for TelepathyHandleAdded.
|
||||||
|
"""
|
||||||
|
|
||||||
# dbus methods
|
# dbus methods
|
||||||
@dbus.service.method(_BUDDY_INTERFACE,
|
@dbus.service.method(_BUDDY_INTERFACE,
|
||||||
in_signature="", out_signature="ay")
|
in_signature="", out_signature="ay")
|
||||||
@ -294,6 +316,22 @@ class Buddy(ExportedGObject):
|
|||||||
props[_PROP_CURACT] = ""
|
props[_PROP_CURACT] = ""
|
||||||
return props
|
return props
|
||||||
|
|
||||||
|
@dbus.service.method(_BUDDY_INTERFACE,
|
||||||
|
in_signature='', out_signature='a(sou)')
|
||||||
|
def GetTelepathyHandles(self):
|
||||||
|
"""Return a list of non-channel-specific Telepathy contact handles
|
||||||
|
associated with this Buddy.
|
||||||
|
|
||||||
|
:Returns:
|
||||||
|
An array of triples (connection well-known bus name, connection
|
||||||
|
object path, handle).
|
||||||
|
"""
|
||||||
|
ret = []
|
||||||
|
for plugin in self.handles:
|
||||||
|
conn = plugin.get_connection()
|
||||||
|
ret.append((str(conn.service_name), conn.object_path,
|
||||||
|
self.handles[plugin]))
|
||||||
|
|
||||||
# methods
|
# methods
|
||||||
def object_path(self):
|
def object_path(self):
|
||||||
"""Retrieve our dbus.ObjectPath object"""
|
"""Retrieve our dbus.ObjectPath object"""
|
||||||
|
Loading…
Reference in New Issue
Block a user