Returning to the initial question of this thread: Is there a common way
to indicate session start and session end.
Peter Saint-Andre skrev 2012-02-29 04:20:
Yes, but that doesn't necessarily mean you need an explicit negotiation
protocol.
Right. The first need I thought about can in fact be reduced to a text
session indicator, not even linked to RTT support.
I will take a scenario to make the need clear.
Assume that there is a SIP based stock exchange service, sending stock
exchange information in text in sessions. It continues as long as a
terminal is connected. A terminal indicates by a BYE that it leaves the
session, so that the server can release the resources. During the
session, the text information may be provided through RFC 4103 or RFC
3428 or RFC 4975. (RFC 4103 makes most sense of course for the RTT
example, but let us look at it in general).
Also assume that you want to make this service available to XMPP users
through a gateway.
Setting up a chat session to the gateway causes it to set up a SIP
session with the stock exchange server.
Messages or real-time text is flowing from the stock exchange server to
the XMPP client.
Then, the XMPP user want to leave the session. What does the user do and
what does the gateway use as an indication that the session is over and
it can take down the session towards the server?
The indication for setting up seems to be either the basic mechanism for
session control defined in RFC 6121 section 5.1 where it is stated that
initiation of a session should begin with a message with type=chat.
Or XEP-0085 chat state going "active"
But what is most appropriate as indication to the gateway that it is
time to take down the session on the SIP side?
The XEP-0085 chat states do not seem to be the primary means to use. The
user may sit there very actively watching the information coming, but
not touching the user interface for half an hour. According to XEP-0085,
the chat state would then be "gone" since long, so taking down the
session on "gone" indication does not seem appropriate.
How about relying on RFC 6121 section 5.1 requiring that
end of session should be signaled by indicating directed presence
"unavailable".
Will that be normally signalled by most XMPP text clients when the user
closes the window where the session was shown?
The stock exchange server example is of course artificial. There may be
many other cases when a simple session indication is important.
And this regardless of the support for and activation of the RTT
feature. So my conclusion now is that this is not at all a XEP-0301
issue, but if we get a conclusion, we could document it as a
recommendation in XEP-0301.
There are other valid cases, when full capability declaration, exchange
and negotiation or RTT capability is important, but let us take one case
at a time.
Thanks
Gunnar