Hi all, I think BOSH is currently a bit inconsistent. It says: "If the connection manager supports stream restarts, it MUST advertise that fact by including a 'restartlogic' attribute (qualified by the 'urn:xmpp:xbosh' namespace) whose value is set to "true" [5]. It is STRONGLY RECOMMENDED for all XMPP connection managers to support stream restarts, since they are an integral aspect of stream negotiation in XMPP. However, note that some older BOSH implementations do not explicitly advertise support for stream restarts."
Which suggests that there's wriggle room (RECOMMENDED == SHOULD != MUST) for not supporting stream restarts. It also says: "Upon receiving the <success/> element, the client MUST then ask the connection manager to restart the stream by sending a "restart request" that is structured as follows: The BOSH <body/> element MUST include a boolean 'restart' attribute (qualified by the 'urn:xmpp:xbosh' namespace) whose value is set to "true" [9]." and "Upon receiving a restart request, the connection manager MUST consider the previous stream with the XMPP server to be closed. It MUST then initiate a new stream by sending an opening <stream:stream> tag over the same TCP connection to the XMPP server. If the connection manager receives a <stream:features/> element from the XMPP server, it MUST forward that element to the client:" Suggesting that stream restarts are entirely mandatory. Thoughts? /K
