[Telepathy] MissionControl's spec
Xavier Claessens
xclaesse at gmail.com
Tue Jan 8 11:15:31 PST 2008
On mar, 2008-01-08 at 11:42 +0200, Alberto Mardegan wrote:
> Other few things:
>
> 1) It seems that channel handlers cannot prevent a channel from being
> dispatched, other than not emitting the Dispatch signal; I think we need
> to add a boolean parameter to this signal, that tells MC whether it has
> to continue invoking other channel handlers or if should close the channel.
> I didn't notice this, because I assumed that channel handlers where
> allowed to close the channels; but in the specs I read this "Chandlers
> should never close channels, instead they should simply emit Dispatch
> signal and MissionControl will close the channel if there is no lower
> priority chandlers.", so something must be changed.
Right, spec should be changed to tell than the chandler should call
Close() if the channel is rejected.
> 2) I guess that the client that calls RequestChannel() would like to
> know if some errors occur; errors could be that the channel is not
> created, or that some high priority channel handler closes blocks the
> channel. In the former case, MissionControl has all the information it
> needs; in the latter, we also need to add some error code to the CH
> Dispatch signal (and here I miss a CloseWithReason() channel method in
> Telepathy...).
> Then MC must emit a signal (ChannelRequestFailed?) which carries the
> information needed for the requestor of the channel to know that his
> channel request failed, and the reason for it. I think the easies way
> would be to have RequestChannel return an integer request_id, that would
> then be used to identify the channel request in the ChannelRequestFailed
> signal.
I was thinking about changing RequestChannel(type,handle,handle_type) by
DispatchChannel(bus_name,object_path) and let the client call
RequestChannel from Connection iface and handle errors itself. The
motivation of that is for Media channels: Client making the call needs
to first create the channel and add the contact to the group interface
then dispatching the channel. With current NMC it's not possible because
if I RequestChannel (from Connection iface) NMC thinks it's a outgoing
channel.
Xavier Claessens.
More information about the Telepathy
mailing list