[Telepathy] A query regarding Presences-update

Xavier Claessens xclaesse at gmail.com
Thu Jun 7 02:04:58 PDT 2012


Le jeudi 07 juin 2012 à 11:55 +0530, Ajay Garg a écrit :
> Hi all.
> 
> I have wriiten a basic python program using telepathy-salut, wherein
> buddies are able to see each other coming offline/online on a
> telepathy-salut connection.
> 
> 
> Following interfaces/signals are being used ::
> 
> a)
> http://telepathy.freedesktop.org/spec/Channel_Interface_Group.html#Method:GetMembers

> This interface is used to get the list (one-time, at startup) of the
> buddies, when a machine connects to telepathy-salut connection
> (obviously, one singular time).

That's the old way of getting the list of contacts, this interface is
easier to use:
http://telepathy.freedesktop.org/spec/Connection_Interface_Contact_List.html

> (iii)
> M1 disconnects from telepathy-salut.
> M2 goes offline from M1's context (as obviously expected).
> HOWEVER, M1 IS STILL SHOWN TO BE ONLINE IN M2'S CONTEXT (something not
> expected).
> 

I think what happens is the contact is removed from your roster, but his
presence may not get updated to offline, since the contact is not
supposed to exist anymore.

You should listen to that signal to add/remove contacts from the
context:
http://telepathy.freedesktop.org/spec/Connection_Interface_Contact_List.html#Signal:ContactsChangedWithID


You should also consider using telepathy-glib or telepathy-qt helper
libraries instead of listening to dbus directly. Those 2 libraries
provides much easier high level API.

Regards,
Xavier Claessens.



More information about the telepathy mailing list