[Telepathy] Proposed spec change: user-defined server-side groups

Simon McVittie simon.mcvittie at collabora.co.uk
Thu Oct 19 07:26:04 PDT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Now that we've branched off spec 0.14, various things I'm working on can
head into the unstable branch of the spec (soon to be 0.15). In case
anyone on the list wants to suggest changes, here are my proposed spec
changes for server-side groups:

http://projects.collabora.co.uk/~daf/monkey/spec.groups/

Summary:

* Protocol-defined lists (subscribe, allow, ...) are still channels
  of type ContactList and handle type CONNECTION_HANDLE_TYPE_LIST,
  manipulated by the Group interface; their name is one of a number of
  "magic" strings. I mention this merely for comparison.

* User-defined groups are also channels of type ContactList, but they
  have a new handle type CONNECTION_HANDLE_TYPE_USER_CONTACT_GROUP
  (I might shorten that to ..._TYPE_GROUP). They're also manipulated
  by the Group interface. Their names are arbitrary UTF-8 names chosen
  by the user and should be made visible in the UI as-is.

* Empty user-defined groups remain open, but if you exit the connection
  manager, they're not guaranteed to still exist after you reconnect
  (some protocols, like XMPP, have no server-side representation of
  empty groups). You can delete an empty group by calling its Close
  method.

* Channel.Close() can raise Disconnected, NetworkError or NotImplemented
  as before, but can also raise NotAvailable. The distinction is:
  NotImplemented means this channel can never be closed (like contact lists),
  NotAvailable means this channel can't be closed while in its current
  state (like non-empty user-defined groups).

* A new group flag CHANNEL_GROUP_FLAG_ONLY_ONE_GROUP is used to mark
  groups for which a given contact can only be in one group of this type
  (user-defined groups should have this flag if the protocol treats
  groups like directories rather than like tags).

These are implemented in a Gabble branch also available from the Merge
Monkey.

	Simon
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: OpenPGP key: http://www.pseudorandom.co.uk/2003/contact/ or pgp.net

iD8DBQFFN4r8WSc8zVUw7HYRAloyAKDtaUJ3FGNGLPpnchyWbeO3u6W6IwCfQSOK
hEB7CVdBi+1SE4zLFuUAI1A=
=rJGw
-----END PGP SIGNATURE-----


More information about the Telepathy mailing list