[Standards-JIG] Chat Session Negotiation

Peter Saint-Andre stpeter at jabber.org
Thu Jul 13 22:45:27 UTC 2006

On 2006-01-04 (!), Thomas Charron wrote:

>   There should probrably also be a way to renegotiate an existing
> conversation to use different parameters then the ones that existed at
> the initiation of the chat session.  In SIP, for example, this is
> handled by renegotiating capabilities by quite literally re INVITE with
> the new paramaters using the same session.  This could be handled pretty
> much the same way w/ JEP-0155, but there's one issue.  Clients
> connections are, for the most part, considered stateless.  If I
> disconnect from one client, and reconnect with another, the chat session
> 'state' information is unknown to the new client.
>   Perhaps a presence change off offline at any point should trigger an
> automatic renegotiation of params, or at least confirmation of params?

I've looked at this again after all these months, and I think that if
you receive unavailable presence from the other party, you must consider
the active session to be terminated and therefore you must re-initiate
rather than re-negotiate. Here is some proposed text:


If a party receives XMPP presence of type "unavailable" from the full
JID (<node at domain.tld/resource>) of the other party (i.e., the resource
with which it has had an active session), the receiving party MUST
consider the session to be terminated. If the receiving party then
receives presence of type "available" from that same resource or another
resource associated with the other party and the receiving party desires
to restart the chat session, it MUST initiate a new chat session
(including a newly-generated ThreadID) with the other party rather than
renegotiate parameters for the terminated session.


Bonus points: this is consistent with how we do chat state notifications
(JEP-0085) and, specifically, how we handle ThreadIDs in JEP-0085.


Peter Saint-Andre
Jabber Software Foundation

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 7358 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://mail.jabber.org/pipermail/standards/attachments/20060713/e283cd62/attachment.bin>

More information about the Standards mailing list