[Bug 38248] Get handle identifiers for contacts related to a channel

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Sep 9 17:56:06 CEST 2011


--- Comment #13 from Will Thompson <will.thompson at collabora.co.uk> 2011-09-09 08:56:06 PDT ---
Spec looks good. But how is a client supposed to know whether or not the new
signals will be emitted? In your tp-glib branch you're emitting the new ones
after the old ones, so… yeah, it's just “some properties are randomly NULL”.

I hate to say it, but at least throw in a new group flag so that Empathy or
whatever can just say “no, I refuse to deal with this old CM” or at least spit
something in its debug log. Hey, you could make TP_CHANNEL_FEATURE_CONTACTS
fail to prepare in this situation.

+++ b/telepathy-glib/channel-contacts.c
@@ -0,0 +1,546 @@
+ * channel.c - proxy for a Telepathy channel (contacts feature)

That's not what the file is called.

+  /**
+   * TpChannel:target-contact:
+   *
+   * Same as #TpChannelIface:handle but gives a #TpContact instead of
+   * handle if #TpChannelIface:handle-type is %TP_HANDLE_TYPE_CONTACT, %NULL
+   * otherwise.
+   *
+   * If the Connection Manager is too old, could return %NULL.
+   *
+   * Since: 0.UNRELEASED

This documentation is really unhelpful: it doesn't tell you what the property
actually means, it just links to an even less helpfully documented property on
some random interface! How about:

  If this channel is for communication with a single contact (that is,
#TpChannelIface:handle-type is %TP_HANDLE_TYPE_CONTACT), then a #TpContact
representing the remote contact. For chat rooms, contact search channels and
other channels without a single remote contact, %NULL.

  If TP_CHANNEL_FEATURE_CONTACTS is not prepared, this property will be %NULL.

You can remove the stuff about the CM being too old, and add to the

  On older connection managers, this feature may fail to prepare.

I haven't finished reviewing this branch. I'll pick it back up on Monday.

Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.

More information about the telepathy-bugs mailing list