[Telepathy] Group interface usage?

Simon McVittie simon.mcvittie at collabora.co.uk
Thu Jul 19 09:44:58 PDT 2007


The three membership sets (Local Pending, Remote Pending, Members)
reflect call state. For a phone-like situation, here's what they might mean:

Incoming call
=============

No channel exists
  v
  v  Incoming network event indicates that remote user is calling us
  v  CM creates channel
  v
Local user in Local Pending, remote user in Members = our phone is ringing
  v
  v  UI calls AddMembers([local_user_handle]) to accept call
  v  CM responds by accepting the call
  v
Local and remote users in Members

Outgoing call (support for this API is required)
================================================

No channel exists
  v
  v  UI calls RequestChannel(..., type=0, handle=0, ...)
  v  CM creates channel
  v
Local user in Members
  v
  v  UI calls AddMembers([remote_user_handle])
  v  CM responds by calling the remote user
  v
Local user in Members, remote user in Remote Pending = their phone is ringing
  v
  v  Incoming network event indicates that remote user has accepted call
  v
Local and remote users in Members

Outgoing call, alternative (support for this API is recommended)
================================================================

No channel exists
  v
  v  UI calls RequestChannel(..., type=CONTACT, handle=remote_user, ...)
  v  CM creates channel and immediately calls the remote user
  v
Local user in Members, remote user in Remote Pending = their phone is ringing
  v
  v  Incoming network event indicates that remote user has accepted call
  v
Local and remote users in Members

We've just merged some clarifications to the streamed media spec which should
make this clearer.

	Simon


More information about the Telepathy mailing list