mesh portal discovery

Morgan Collett morgan.collett at collabora.co.uk
Thu Jan 10 13:10:43 EST 2008


david at lang.hm wrote:
> On Thu, 10 Jan 2008, Dan Williams wrote:
> 
>>> In the server-based backend, an IP address change *will* cause a
>>> disconnect and reconnect. This is definitely unavoidable, since XMPP
>>> uses a long-lived TCP connection to the server.
>> IP addresses are going to change; that's a fact of life.  The best
>> anyone can do is try to not make an IP address change a traumatic
>> experience for the user, and provide mechanisms to ensure that whatever
>> the user was working on at the time doesn't just disappear in a puff of
>> smoke.
>>
> 
> this means changing every app to be aware of IP changes so that they know 
> that they need to re-connnect to the far end. and for many apps, 
> modifying them to be able to pick up where they left off (and to do so in 
> a secure way so that bad guys can't claim to be you on a new IP address 
> and connect into an authenticated session)
> 
> good luck in re-writing the world.

We'll add some API to PresenceService and sugar.presence, and put some
signal into Sugar similar to the buddy-left signal to indicate you were
disconnected, and ensure that the activity gets back into an unshared state.

If we find the shared activity ID in presence we can attempt to rejoin,
handing switching of one IP address to another without changing from
gabble to salut (or vice versa).

Then Activities will only need to hook the disconnected signal to clean
up state, if that is necessary.

</handwave>

Morgan



More information about the Devel mailing list