There are two main use cases for Close() on a MUC not actually leaving the room: • If Empathy crashes, MC calls Close() on all channels it was handling. I'd rather not leave all the channels on my IRC proxy when that happens. (This is Idle bug #24273.) • Marco is in an XMPP MUC with three of his friends, who sporadically discuss Aqua. He doesn't want to have the conversation window open constantly, cluttering his desktop, but wants to be in the room in case someone says something. If we make Close() not actually leave the room (depending on RemoveMembers() for that) it needs to be opt-in until Telepathy 1.0. Rob suggests adding a property for this behaviour which could be requested, or set by the handler.
Another case where it is useful, and already implemented, are Skype chats. How about an interface, providing a (requestable) property like "LeaveWhenClosed" and method Leave? In Maemo, we have the latter for Skype-specific chat add-ons interface.
> How about an interface, providing a (requestable) property like > "LeaveWhenClosed" That means the channel requester has to know whether the handler supports this new method. I wonder whether we could use <http://telepathy.freedesktop.org/spec/Client_Handler.html#org.freedesktop.Telepathy.Client.Handler.Capabilities> for this? Technically it's imperfect, because if you have two handlers installed—one with and one without this feature—the CM can't tell them apart. But it might be good enough.
Similar bug in Empathy: https://bugzilla.gnome.org/show_bug.cgi?id=599184 And downstream Ubuntu: https://bugs.launchpad.net/libtelepathy/+bug/732688
I've implemented the respawning-Close() behaviour for chat rooms in Idle (bug 24273). I feel like time spent making it opt-in could be better spent elsewhere, so I haven't done that.
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-spec/issues/39.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.