Thanks Xavier. I would prefer keeping my current system (unless and until it is _absolutely_ necessary).
As part of me making the last-sub-use-case work, I tried the following signals as well :: (i) http://telepathy.freedesktop.org/spec/Channel_Interface_Group.html#Signal:HandleOwnersChangedDetailed (ii) http://telepathy.freedesktop.org/spec/Channel_Interface_Group.html#Signal:MembersChanged But none of them hit the callback function (nor do I get any missing function error), when the last-sub-use-case is hit. So, a) Is that expected? b) If yes, I just wonder when (if ever) is the case when the above two signal callbacks are hit, with a non-empty "Removed" list? Thanks and Regards, Ajay On Thu, Jun 7, 2012 at 4:37 PM, Xavier Claessens <xclae...@gmail.com> wrote: > Your packages are completely outdated. You need at least tp-salut 0.7.2. > > Again you should not use dbus directly. If your app is written in > python, please use telepathy-glib's python binding. see for example: > > > http://cgit.freedesktop.org/telepathy/telepathy-glib/tree/examples/client/python/contact-list.py > > Regards, > Xavier Claessens > > Le jeudi 07 juin 2012 à 16:14 +0530, Ajay Garg a écrit : > > Thanks a ton Xavier, for the reply. > > > > Even I had the uneasy feeling, since the 'GetMembers' had the > > semantics different from the other two. > > Looking at the "Connection_Interface_Contact_List", its semantics seem > > to be in line with the other two. > > > > > > However, I am getting the following key-error, when I use the above :: > > > > > #################################################################################### > > Traceback (most recent call last): > > File "/usr/lib/python2.7/site-packages/dbus/connection.py", line > > 586, in msg_reply_handler > > reply_handler(*message.get_args_list(**get_args_opts)) > > File "demos/Telepathy/telepathy_test.py", line 371, in > > __get_self_handle_cb > > > > > self._connection[CONNECTION_INTERFACE_CONTACT_LIST].GetContactListAttributes( > > File > > "/usr/lib/python2.7/site-packages/telepathy/client/interfacefactory.py", > line 74, in __getitem__ > > raise KeyError(name) > > KeyError: > > 'org.freedesktop.Telepathy.Connection.Interface.ContactList.DRAFT2' > > ^CTraceback (most recent call last): > > File "demos/Telepathy/telepathy_test.py", line 670, in <module> > > gobject.MainLoop().run() > > KeyboardInterrupt > > > #################################################################################### > > > > > > > > > > > > Following are the telepathy-packages on my system :: > > > > > #################################################################################### > > [ajay@localhost ~]$ rpm -qa | grep telepathy > > > > telepathy-mission-control-5.6.0-2.fc14.i686 > > telepathy-gabble-0.10.3-1.fc14.i686 > > telepathy-idle-0.1.6-1.fc14.i686 > > telepathy-salut-0.4.0-1.fc14.i686 > > telepathy-glib-0.11.16-1.fc14.i686 > > python-telepathy-0.15.18-1.fc14.noarch > > telepathy-logger-0.1.5-1.fc14.i686 > > telepathy-glib-devel-0.11.16-1.fc14.i686 > > telepathy-butterfly-0.5.14-1.fc14.noarch > > telepathy-farsight-0.0.14-2.fc14.i686 > > telepathy-glib-vala-0.11.16-1.fc14.i686 > > telepathy-haze-0.4.0-1.fc14.i686 > > telepathy-filesystem-0.0.2-1.fc12.noarch > > > #################################################################################### > > > > > > > > Which (minimum) package(s) do I need to upgrade, so that > > "CONNECTION_INTERFACE_CONTACT_LIST" can be queries upon? > > > > I will be grateful for a reply :) > > > > > > Thanks and Regards, > > Ajay > > > > > > > > On Thu, Jun 7, 2012 at 2:34 PM, Xavier Claessens <xclae...@gmail.com> > > wrote: > > 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. > > > > > > >
_______________________________________________ telepathy mailing list telepathy@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/telepathy