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.
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. -- http://www.mardy.it <-- Geek in un lingua international! _______________________________________________ Telepathy mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/telepathy
