Is there a way to set the BOSH Wait parameter? Currently, Tigase appears to just use the value provided by the client. If we want to change that to a shorter value, is there a way to configure Tigase to return a different value?
We have noticed that when connecting via BOSH and publishing events, the client will occasionally not receive a 'result'. We are using nginx as our HTTP proxy since Tigase does not serve static files (clientaccesspolicy.xml). nginx only supports HTTP 1.0 on the backend without keep-alive, so each request/response is done on a separate TCP connection. Trace flow is below.
Client sends an empty POST on port 36419. Tigase delays response since there is no XMPP stanza to send to the client. 60 seconds later the client publishes an event via a POST on port 43030.
After running a bosh session where a client is publishing once a minute, the Bosh Connection Manager returns a random result for a different resource and from the session manager.
How do you configure Tigase bosh component to set the http header Connection: keep-alive? See trace below (body text omitted).
> POST /xmpp-httpbind/ HTTP/1.1
> User-Agent: curl/7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8l zlib/1.2.3
> Host: dev-xmpp-tigase.bdn.lab.xcal.tv:5280
> Accept: */*
> Content-type: text/xml
> Connection: keep-alive
> Content-Length: 270
< HTTP/1.1 200 OK
< Content-Type: text/xml; charset=utf-8
< Content-Length: 390
< Access-Control-Allow-Origin: *
< Access-Control-Allow-Methods: GET, POST, OPTIONS