Hi ejabberd developpers,
We're developping a python based component with sleekxmpp. Our component is declared like this :
{5281, ejabberd_service, [
{ip, {0, 0, 0, 0}},
{access, all},
{shaper_rule, fast},
{service_check_from, false},
{hosts, ["mycomponent.domain.com"], [{password, "password"}]}
]}
]}.
Just after the connection, our javascript layer is sending two presence stanzas (one initial presence and one to the component):
<presence/>
<presence from='7950462871328538983351709@other.domain.com/3143590361328538983764857' to='mycomponent.domain.com'/>
The problem is that most of the time the stanza presence is not sent to the component.
We sniffed the packets http-bind (between ejabberd and the web client), and between ejabberd and the component (here, on the port 5281). We see presence stanzas in http-bind :
POST /http-bind/ HTTP/1.1..Host: localhost:5280..Origin: http://localhost..User-Agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.77 Safari/535.7..Content-Type: application/xml..Accept: */*.
.Referer: http://localhost/lib/html/chat.html..Accept-Encoding: gzip,deflate,sdch..Accept-Language: fr-FR,fr;q=0.8,en-US;q=0.6,en;q=0.4..Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3..Cookie: session="a8zboyfcFRC4wFJUx5Ru
6apGg3s=?logged_in=STAxCi4=&user=KGRwMQpWZmlyc3RfbmFtZQpwMgpWYWdlbnQKcDMKc1ZfaWQKcDQKY2NvcHlfcmVnCl9yZWNvbnN0cnVjdG9yCnA1CihjYnNvbi5vYmplY3RpZApPYmplY3RJZApwNgpjX19idWlsdGluX18Kb2JqZWN0CnA3Ck50UnA4ClMnT1x4MWZceGI3XHgwZThceGQ2XHhhMF
x4MDh5XHgwMFx4MDBceDAwJwpwOQpic1ZuYW1lCnAxMApWYWdlbnQKcDExCnNWcm9sZXMKcDEyCihscDEzClZhZ2VudApwMTQKYXNWbG9naW4KcDE1ClZhZ2VudApwMTYKc1ZwYXNzd29yZApwMTcKVmIzM2FlZDhmMzEzNDk5NjcwM2RjMzlmOWE3Yzk1NzgzCnAxOApzLg=="..X-Forwarded-For: 127.0
.0.1..X-Forwarded-Host: localhost..X-Forwarded-Server: myhost..Connection: Keep-Alive..Content-Length: 310....<body rid='2802647448' xmlns='http://jabber.org/protocol/httpbind' sid='9bfb668d303cc0cd70fd375f71cf05eced9c2
4b2'><presence xmlns='jabber:client'/><presence from='27474561331328541855702639@other.domain.com/33480094451328541856117608' to='mycomponent.domain.com' xmlns='jabber:client'/></body>
But nothing on the component side (when it fails).
Do you understand what could be wrong with our configuration or our protocol usage ?
Thank you for your help.
Bruno