[Telepathy] Review of MissionControl spec

Xavier Claessens xclaesse at gmail.com
Tue Jan 22 14:33:47 PST 2008

On mar, 2008-01-22 at 19:00 +0000, Simon McVittie wrote:
> Hash: SHA1
> On Tue, 22 Jan 2008 at 19:19:21 +0100, Xavier Claessens wrote:
> > On lun, 2008-01-21 at 21:43 +0000, Simon McVittie wrote: 
> > > Documented as returning (s, o) "if it's online". What happens if it's
> > > offline needs documenting too.
> > 
> > Ok so it should return the object path or "" if offline?
> Can't do that. Object paths aren't nullable. You could use a hack like
> returning "/", but raising an appropriate error would be better
> (NotAvailable springs to mind as appropriate).


> > We could set supress_handler=false like that MC gets NewChannel but MC
> > will think it's an incoming channel even if it should be outgoing.
> Dangerous. We don't want to conflate incoming/outgoing,
> handled/unhandled and whatever other boolean distinctions we're making.
> What do you mean by "incoming"/"outgoing" and is it the same thing Mardy
> means?

I think we have the same definition:
Incoming = A contact send us a new message so MC creates a channel.
Outgoing = We send a message so we request a new channel.

incoming are catched by MC by listening to
connection.NewChannel(supress_handle=false) and outgoing are channels
created by MC if the client calls mc.RequestChannel() which will call

> > In fact Empathy updates each value separately directly when you write
> > it, so there is not a "Cancel" and "Ok" buttons but only "Close" as
> > everything already got applied. I did that because GNOME applications
> > generally prefer instant-apply and NMC API makes that easy. However with
> > "new" behaviour of NMC is to reconnect the account each time a param is
> > changed so I really should change that in Empathy UI.
> > 
> > Not sure what's the best...
> NMC shouldn't do that. I'm not sure what it should do, but not that.
> The Nokia UI doesn't let you change account params unless the account is
> disabled, which seems somewhat reasonable - GNOME-style insta-apply isn't
> really feasible when these params don't take effect until the next time you
> reconnect!

In fact, when I designed the UI, NMC was not reconnecting account each
time, so it was a insta-apply to gconf rather than insta-apply to the
connection itself. If we change to a SetParameters call I can easily
change that and apply all changes at once when closing the dialog with a
dialog that pops "You have to reconnect some accounts before changes
take effect" or simply silently reconnect.

> > > RegisterChandler
> > > No. Wrong interface. Try again.
> > 
> > You mean that should be moved to another interface or that shouldn't
> > exist at all?
> I mean it should be on a ChannelDispatcher interface (or something),
> that might not even be part of the same service, and most importantly, that
> we don't need to talk about yet in order to get a good AccountManager
> design :-)


Xavier Claessens.

More information about the Telepathy mailing list