GNOME Bugzilla – Bug 654447
Incoming 1-1 text channels from Salut are neither logged nor dispatched.
Last modified: 2011-07-12 14:26:59 UTC
Created attachment 191797 [details] Debug log Preconditions: No chat open with a user in people nearby and not running empathy after logging into the system. Steps to reproduce: Log in to the system and have a user in people nearby (or possibly any user) send you a message. The message appears in a bubble at the top right of the screen and you are given an option to reply to the message. Click on reply to message. Expected result: When reply to message is clicked, an empathy chat with the user who messaged you should open. Actual result: Nothing happens. Extra information: The attachment is a debug log showing actions from logging into the system up until the bug occurred.
This is interesting: mcd-DEBUG: 12/07/11 11:09:29.210206: observe_channels_cb: Observer /org/freedesktop/Telepathy/Client/Logger returned error: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. So is this: mcd-DEBUG: 12/07/11 11:09:29.210338: _mcd_client_proxy_handle_channels: calling HandleChannels on org.freedesktop.Telepathy.Client.Empathy.Chat ... mcd-DEBUG: 12/07/11 11:09:54.217051: _mcd_dispatch_operation_handle_channels_cb: error: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken. mcd-DEBUG: 12/07/11 11:09:54.217381: _mcd_dispatch_operation_set_handler_failed: All possible handlers failed: failing with the last error Could you post the versions of the logger, mission control and the empathy package? In a terminal, run: dpkg -l telepathy-logger telepathy-mission-control-5 empathy | cat and paste the output to this bug.
ii empathy 3.1.3-1 GNOME multi-protocol chat and call client ii telepathy-logger 0.2.10-1 Telepathy logger service - Daemon ii telepathy-mission-control-5 1:5.9.0-1 management daemon for Telepathy real-time communication framework
I can reproduce something like this on my system (using Gnome 3 rather than Gnome 2, so it's a little different, but with the same versions of Empathy, MC and logger): • Rob sends me a message on People Nearby; • I'd expect to see a bubble for the new message, but I don't; • In the contact list, his icon flashes, and the tray icon flashes; • Clicking either one has no result; after a while the logger times out and the window is displayed. So I only see half the problem: eventually, for me, the window does show up containing the message, but it is not logged: if I close and re-open the window the message is gone.
I'm pretty sure this is a bug in TpTextChannel, specifically in the fallback path for the CM not including message-sender-id in its messages. The Logger's ObserveChannels() implementation is never called. tp-glib gets the call, and tries to introspect the channel; we get this: (telepathy-logger:22455): tp-glib/channel-DEBUG: get_sender: Message received on /org/freedesktop/Telepathy/Connection/salut/local_xmpp/wjt/IMChannel/3 doesn't include message-sender-id, please fix CM (telepathy-logger:22455): tp-glib/channel-DEBUG: get_pending_messages_cb: Pending messages may be re-ordered, please fix CM (/org/freedesktop/Telepathy/Connection/salut/local_xmpp/wjt) and then TpTextChannel calls one of tp_connection_get_contacts_by_id or tp_connection_get_contacts_by_handle (depending on some logic that I can't follow) and the callback is never called! As far as I can tell, no method call is ever sent over D-Bus. So channel introspection never finishes, and eventually MC gives up. What I don't understand is: sometimes introspection seems to finish in Empathy, but not in the Logger; other times, neither works.
Jonny and I have confirmed that this is a regression in telepathy-glib, not a bug in Empathy. I've filed a bug against telepathy-glib at <https://bugs.freedesktop.org/show_bug.cgi?id=39172>, and am closing this one.