admin管理员组

文章数量:1425759

I'm trying to create a facebook/gtalk custom chat window. Already created a Facebook application with the xmpp_login permission and approved it by my user.

I'm using the following:

  1. node-xmpp-bosh
  2. jquery.xmpp.js

when I'm using the basic example provided, I can login to gmail with my credentials, but not to facebook. And when I change the BOSH server from :5280/xmpp-httpbind -> to my own I can't connect to none.

Here is the response I get from gmail from the example server:

<body xmlns='' inactivity='60' secure='true' authid='C410DDF349E5D6E4'
      content='text/xml; charset=utf-8' window='3' polling='15' sid='d97ad59c8741b5c97fc5d267cf9fa6d8' requests='2'
      wait='60'>
<stream:features xmlns:stream='' xmlns='jabber:client'>
    <mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
        <mechanism>PLAIN</mechanism>
        <mechanism>X-GOOGLE-TOKEN</mechanism>
        <mechanism>X-OAUTH2</mechanism>
    </mechanisms>
</stream:features>
</body>

and here is what I get from my own BOSH server

<body xmlns="" stream="7b7a5898-7d44-4459-b135-25d56db49f63"
      sid="66aec966-aba0-4021-b728-ae1879caee3a" wait="60" ver="1.6" polling="35" inactivity="70" requests="2" hold="1"
      from="gmail" content="text/xml; charset=utf-8" xmpp:restartlogic="true" xmlns:xmpp="urn:xmpp:xbosh"
      window="2">
</body>

What am I missing, and is there any other steps I need to take before connecting to facebook?

Update


Found an example for Facebook+Node chat by kissrobber I got it running on my local machine, but I still get an error when trying to connect with strophe.js.

I get an "item-not-found" response, according to XMPP the reason could be one of the following:

  1. 'sid' is not valid
  2. 'stream' is not valid
  3. 'rid' is larger than the upper limit of the expected window
  4. connection manager is unable to resend response
  5. 'key' sequence is invalid

Update


Here are strophe.js logs using:

  • punjab
  • Node js XMPP
  • Node js XMPP with pidgin_patible: true

punjab log


Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: request id 1.0 posting facebook.html:20
LOG: request id 1.0 state changed to 1 facebook.html:20
SEND: <body rid='765843050' xmlns='' to='chat.facebook' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.0 posting facebook.html:20
LOG: request id 2.0 state changed to 1 facebook.html:20
SEND: <body rid='765843051' xmlns='' to='chat.facebook' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 2.1 state changed to 2 facebook.html:20
LOG: request id 2.1 state changed to 3 facebook.html:20
LOG: request id 2.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' inactivity='60' secure='true' authid='89141C54' content='text/xml; charset=utf-8' window='3' polling='15' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701' requests='2' wait='60'><stream:features xmlns:stream='' xmlns='jabber:client'><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>X-FACEBOOK-PLATFORM</mechanism><mechanism>DIGEST-MD5</mechanism></mechanisms></stream:features></body> facebook.html:20
Connecting status -> [3, null] facebook.html:24
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.0 posting facebook.html:20
LOG: request id 3.0 state changed to 1 facebook.html:20
SEND: <body rid='765843052' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='X-FACEBOOK-PLATFORM'/></body> facebook.html:20
LOG: request id 3.1 state changed to 2 facebook.html:20
LOG: request id 3.1 state changed to 3 facebook.html:20
LOG: request id 3.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.1 got 200 facebook.html:20
RECV: <body xmlns=''><challenge xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>dmVyc2lvbj0xJm1ldGhvZD1hdXRoLnhtcHBfbG9naW4mbm9uY2U9QjRGRjZBOTNDQUFENjlCMjYxQzkzNDczQjE5NUUwMDU=</challenge></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.0 posting facebook.html:20
LOG: request id 4.0 state changed to 1 facebook.html:20
SEND: <body rid='765843053' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><response xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>YXBpX2tleT0zMzE1MzAyNzM1ODg1OTAmY2FsbF9pZD0xMzQzNzIzNzY5Jm1ldGhvZD1hdXRoLnhtcHBfbG9naW4mbm9uY2U9QjRGRjZBOTNDQUFENjlCMjYxQzkzNDczQjE5NUUwMDUmYWNjZXNzX3Rva2VuPUFBQUV0aG1nd2hXNEJBRTRkUHVubVRqOUJoV0V1WkN3WFpBUVBkYnFJSG9yUGRFNkdxUnhxSldvWkJLUHM2VmNqbUJSbnlWUGlFaG9BdDBLYmdLa2xpV0pQVWRmd3VCNENPcklwWkFkck9RWkRaRCZ2PTEuMA==</response></body> facebook.html:20
LOG: request id 4.1 state changed to 2 facebook.html:20
LOG: request id 4.1 state changed to 3 facebook.html:20
LOG: request id 4.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.1 got 200 facebook.html:20
RECV: <body xmlns=''><success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/></body> facebook.html:20
LOG: SASL authentication succeeded. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5.0 posting facebook.html:20
LOG: request id 5.0 state changed to 1 facebook.html:20
SEND: <body rid='765843054' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701' to='chat.facebook' xml:lang='en' xmpp:restart='true' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 5.1 state changed to 2 facebook.html:20
LOG: request id 5.1 state changed to 3 facebook.html:20
LOG: request id 5.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5.1 got 200 facebook.html:20
RECV: <body xmlns=''><stream:features xmlns:stream='' xmlns='jabber:client'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></stream:features></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6.0 posting facebook.html:20
LOG: request id 6.0 state changed to 1 facebook.html:20
SEND: <body rid='765843055' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><iq type='set' id='_bind_auth_2' xmlns='jabber:client'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/></iq></body> facebook.html:20
LOG: request id 6.1 state changed to 2 facebook.html:20
LOG: request id 6.1 state changed to 3 facebook.html:20
LOG: request id 6.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6.1 got 200 facebook.html:20
RECV: <body xmlns=''><iq xmlns='jabber:client' type='result' id='_bind_auth_2'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><jid>[email protected]/168823c4_4C61C1205A1E5</jid></bind></iq></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7.0 posting facebook.html:20
LOG: request id 7.0 state changed to 1 facebook.html:20
SEND: <body rid='765843056' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><iq type='set' id='_session_auth_2' xmlns='jabber:client'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq></body> facebook.html:20
LOG: request id 7.1 state changed to 2 facebook.html:20
LOG: request id 7.1 state changed to 3 facebook.html:20
LOG: request id 7.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7.1 got 200 facebook.html:20
RECV: <body xmlns=''><iq xmlns='jabber:client' type='result' id='_session_auth_2'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq></body> facebook.html:20
Connecting status -> [5, null] facebook.html:24
Strophe is connected. facebook.html:20
Send a message to [email protected]/168823c4_4C61C1205A1E5 to talk to me. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8.0 posting facebook.html:20
LOG: request id 8.0 state changed to 1 facebook.html:20
SEND: <body rid='765843057' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><presence xmlns='jabber:client'/></body> facebook.html:20
LOG: request id 8.1 state changed to 2 facebook.html:20
LOG: request id 8.1 state changed to 3 facebook.html:20
LOG: request id 8.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8.1 got 200 facebook.html:20
RECV: <body xmlns=''><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>fe60b81022f853cc7feb596f443885e90f6631fe</photo></x></presence></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: Request 1 timed out (secondary), restarting facebook.html:20
LOG: request id 1.1 state changed to 4 facebook.html:20
LOG: request id 9.1 posting facebook.html:20
LOG: request id 9.1 state changed to 1 facebook.html:20
SEND: <body rid='765843050' xmlns='' to='chat.facebook' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 9.2 state changed to 2 facebook.html:20
LOG: request id 9.2 state changed to 3 facebook.html:20
LOG: request id 9.2 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 9 should now be removed facebook.html:20
LOG: request id 9.2 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' inactivity='60' secure='true' authid='CE3FA949' content='text/xml; charset=utf-8' window='3' polling='15' sid='bb0248e53bf29aa66162aa2884e08ec3d6c2302a' requests='2' wait='60'><stream:features xmlns:stream='' xmlns='jabber:client'><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>X-FACEBOOK-PLATFORM</mechanism><mechanism>DIGEST-MD5</mechanism></mechanisms></stream:features></body> facebook.html:20
Connecting status -> [3, null] facebook.html:24
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 10.0 posting facebook.html:20
LOG: request id 10.0 state changed to 1 facebook.html:20
SEND: <body rid='765843058' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='X-FACEBOOK-PLATFORM'/></body> facebook.html:20
LOG: request id 10.1 state changed to 2 facebook.html:20
LOG: request id 10.1 state changed to 3 facebook.html:20
LOG: request id 10.1 state changed to 3 facebook.html:20
LOG: request id 10.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 10 should now be removed facebook.html:20
LOG: request id 10.1 got 200 facebook.html:20
RECV: <body xmlns=''><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>98addc5cda3a34a0ecd0b9e09ae900eddcbbb8ea</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>105af5c5b0c5f028d93dca6e37f2c174dc4a62a5</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>e5d4693f8712d828f1b18d61e7f138511fc04968</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>6c235c1472d7b370771182085f9d0983b980e8b7</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>2f36c33ac86713a73a910db55f9ecac00e19ae63</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>eea1e5844ad62abad6043a39e8a3d66619490360</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>af784e43277ded69c16dcc02bffec6bf883b6e71</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>da16587560467f05f8b97810cbe0c59c01a1fb7c</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>5177a3daefecf3f2d5cac28809f8186ff3168ca8</photo></x></presence></body> facebook.html:20
LOG: no requests during idle cycle, sending blank request facebook.html:20
LOG: request id 11.0 posting facebook.html:20
LOG: request id 11.0 state changed to 1 facebook.html:20
SEND: <body rid='765843059' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'/> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
I sent [email protected]: TEST MESSAGE facebook.html:20
LOG: request id 12.0 posting facebook.html:20
LOG: request id 12.0 state changed to 1 facebook.html:20
SEND: <body rid='765843060' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><message to='[email protected]' type='chat' xmlns='jabber:client'><body>TEST MESSAGE</body></message></body> facebook.html:20
LOG: request id 11.1 state changed to 2 facebook.html:20
LOG: request id 11.1 state changed to 3 facebook.html:20
LOG: request id 11.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 11 should now be removed facebook.html:20
LOG: request id 11.1 got 200 facebook.html:20
RECV: <body xmlns=''/> facebook.html:20
LOG: request id 12.1 state changed to 2 facebook.html:20
LOG: request id 12.1 state changed to 3 facebook.html:20
LOG: request id 12.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 12 should now be removed facebook.html:20
LOG: request id 12.1 got 200 facebook.html:20
RECV: <body xmlns=''><iq xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='chat.facebook' id='fbiq4C61C13A7D2DD' type='set'><own-message xmlns='' to='[email protected]' self='true'><body>TEST MESSAGE</body></own-message></iq></body> facebook.html:20
LOG: no requests during idle cycle, sending blank request facebook.html:20
LOG: request id 13.0 posting facebook.html:20
LOG: request id 13.0 state changed to 1 facebook.html:20
SEND: <body rid='765843061' xmlns='' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'/>

NODE log


Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: request id 1.0 posting facebook.html:20
LOG: request id 1.0 state changed to 1 facebook.html:20
SEND: <body rid='627577970' xmlns='' to='chat.facebook' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.0 posting facebook.html:20
LOG: request id 2.0 state changed to 1 facebook.html:20
SEND: <body rid='627577971' xmlns='' to='chat.facebook' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 1.1 state changed to 2 facebook.html:20
LOG: request id 1.1 state changed to 3 facebook.html:20
LOG: request id 1.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 1 should now be removed facebook.html:20
LOG: request id 1.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' xmlns:xmpp='urn:xmpp:xbosh' stream='fc2182d8-124c-432f-aff0-bf8f58cd580d' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b' wait='60' ver='1.6' polling='35' inactivity='70' requests='2' hold='1' from='chat.facebook' content='text/xml; charset=utf-8' xmpp:restartlogic='true' window='2'/> facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.0 posting facebook.html:20
LOG: request id 3.0 state changed to 1 facebook.html:20
SEND: <body rid='627577972' xmlns='' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b'/> facebook.html:20
LOG: request id 2.1 state changed to 2 facebook.html:20
LOG: request id 2.1 state changed to 3 facebook.html:20
LOG: request id 2.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2 should now be removed facebook.html:20
LOG: request id 2.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' xmlns:xmpp='urn:xmpp:xbosh' stream='0739f763-51dc-4fa6-ae73-9c422898f8df' sid='f168a14f-c4e4-4796-b815-69cacddb82a2' wait='60' ver='1.6' polling='35' inactivity='70' requests='2' hold='1' from='chat.facebook' content='text/xml; charset=utf-8' xmpp:restartlogic='true' window='2'/> facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.0 posting facebook.html:20
LOG: request id 4.0 state changed to 1 facebook.html:20
SEND: <body rid='627577973' xmlns='' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b'/> facebook.html:20
LOG: request id 3.1 state changed to 2 facebook.html:20
LOG: request id 3.1 state changed to 3 facebook.html:20
LOG: request id 3.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3 should now be removed facebook.html:20
LOG: request id 3.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' condition='item-not-found' type='terminate'/> facebook.html:20
Connecting status -> [2, "item-not-found"] facebook.html:24
       ERR:[Strophe failed to connect!!!] - Strophe.Status.CONNFAIL facebook.html:20
LOG: User connection callback caused an exception: TypeError: Cannot set property 'value' of undefined facebook.html:20
LOG: request id 4.1 state changed to 2 facebook.html:20
LOG: request id 4.1 state changed to 3 facebook.html:20
LOG: request id 4.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 4 should now be removed facebook.html:20
LOG: request id 4.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='' condition='item-not-found' message='Invalid packet' type='terminate'/> facebook.html:20
Connecting status -> [2, "item-not-found"] facebook.html:24
       ERR:[Strophe failed to connect!!!] - Strophe.Status.CONNFAIL facebook.html:20
LOG: User connection callback caused an exception: TypeError: Cannot set property 'value' of undefined

I'm trying to create a facebook/gtalk custom chat window. Already created a Facebook application with the xmpp_login permission and approved it by my user.

I'm using the following:

  1. node-xmpp-bosh
  2. jquery.xmpp.js

when I'm using the basic example provided, I can login to gmail with my credentials, but not to facebook. And when I change the BOSH server from http://bosh.metajack.im:5280/xmpp-httpbind -> to my own I can't connect to none.

Here is the response I get from gmail from the example server:

<body xmlns='http://jabber/protocol/httpbind' inactivity='60' secure='true' authid='C410DDF349E5D6E4'
      content='text/xml; charset=utf-8' window='3' polling='15' sid='d97ad59c8741b5c97fc5d267cf9fa6d8' requests='2'
      wait='60'>
<stream:features xmlns:stream='http://etherx.jabber/streams' xmlns='jabber:client'>
    <mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>
        <mechanism>PLAIN</mechanism>
        <mechanism>X-GOOGLE-TOKEN</mechanism>
        <mechanism>X-OAUTH2</mechanism>
    </mechanisms>
</stream:features>
</body>

and here is what I get from my own BOSH server

<body xmlns="http://jabber/protocol/httpbind" stream="7b7a5898-7d44-4459-b135-25d56db49f63"
      sid="66aec966-aba0-4021-b728-ae1879caee3a" wait="60" ver="1.6" polling="35" inactivity="70" requests="2" hold="1"
      from="gmail." content="text/xml; charset=utf-8" xmpp:restartlogic="true" xmlns:xmpp="urn:xmpp:xbosh"
      window="2">
</body>

What am I missing, and is there any other steps I need to take before connecting to facebook?

Update


Found an example for Facebook+Node chat by kissrobber I got it running on my local machine, but I still get an error when trying to connect with strophe.js.

I get an "item-not-found" response, according to XMPP the reason could be one of the following:

  1. 'sid' is not valid
  2. 'stream' is not valid
  3. 'rid' is larger than the upper limit of the expected window
  4. connection manager is unable to resend response
  5. 'key' sequence is invalid

Update


Here are strophe.js logs using:

  • punjab
  • Node js XMPP
  • Node js XMPP with pidgin_patible: true

punjab log


Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: request id 1.0 posting facebook.html:20
LOG: request id 1.0 state changed to 1 facebook.html:20
SEND: <body rid='765843050' xmlns='http://jabber/protocol/httpbind' to='chat.facebook.' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.0 posting facebook.html:20
LOG: request id 2.0 state changed to 1 facebook.html:20
SEND: <body rid='765843051' xmlns='http://jabber/protocol/httpbind' to='chat.facebook.' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 2.1 state changed to 2 facebook.html:20
LOG: request id 2.1 state changed to 3 facebook.html:20
LOG: request id 2.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' inactivity='60' secure='true' authid='89141C54' content='text/xml; charset=utf-8' window='3' polling='15' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701' requests='2' wait='60'><stream:features xmlns:stream='http://etherx.jabber/streams' xmlns='jabber:client'><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>X-FACEBOOK-PLATFORM</mechanism><mechanism>DIGEST-MD5</mechanism></mechanisms></stream:features></body> facebook.html:20
Connecting status -> [3, null] facebook.html:24
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.0 posting facebook.html:20
LOG: request id 3.0 state changed to 1 facebook.html:20
SEND: <body rid='765843052' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='X-FACEBOOK-PLATFORM'/></body> facebook.html:20
LOG: request id 3.1 state changed to 2 facebook.html:20
LOG: request id 3.1 state changed to 3 facebook.html:20
LOG: request id 3.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><challenge xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>dmVyc2lvbj0xJm1ldGhvZD1hdXRoLnhtcHBfbG9naW4mbm9uY2U9QjRGRjZBOTNDQUFENjlCMjYxQzkzNDczQjE5NUUwMDU=</challenge></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.0 posting facebook.html:20
LOG: request id 4.0 state changed to 1 facebook.html:20
SEND: <body rid='765843053' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><response xmlns='urn:ietf:params:xml:ns:xmpp-sasl'>YXBpX2tleT0zMzE1MzAyNzM1ODg1OTAmY2FsbF9pZD0xMzQzNzIzNzY5Jm1ldGhvZD1hdXRoLnhtcHBfbG9naW4mbm9uY2U9QjRGRjZBOTNDQUFENjlCMjYxQzkzNDczQjE5NUUwMDUmYWNjZXNzX3Rva2VuPUFBQUV0aG1nd2hXNEJBRTRkUHVubVRqOUJoV0V1WkN3WFpBUVBkYnFJSG9yUGRFNkdxUnhxSldvWkJLUHM2VmNqbUJSbnlWUGlFaG9BdDBLYmdLa2xpV0pQVWRmd3VCNENPcklwWkFkck9RWkRaRCZ2PTEuMA==</response></body> facebook.html:20
LOG: request id 4.1 state changed to 2 facebook.html:20
LOG: request id 4.1 state changed to 3 facebook.html:20
LOG: request id 4.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><success xmlns='urn:ietf:params:xml:ns:xmpp-sasl'/></body> facebook.html:20
LOG: SASL authentication succeeded. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5.0 posting facebook.html:20
LOG: request id 5.0 state changed to 1 facebook.html:20
SEND: <body rid='765843054' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701' to='chat.facebook.' xml:lang='en' xmpp:restart='true' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 5.1 state changed to 2 facebook.html:20
LOG: request id 5.1 state changed to 3 facebook.html:20
LOG: request id 5.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 5.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><stream:features xmlns:stream='http://etherx.jabber/streams' xmlns='jabber:client'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></stream:features></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6.0 posting facebook.html:20
LOG: request id 6.0 state changed to 1 facebook.html:20
SEND: <body rid='765843055' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><iq type='set' id='_bind_auth_2' xmlns='jabber:client'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'/></iq></body> facebook.html:20
LOG: request id 6.1 state changed to 2 facebook.html:20
LOG: request id 6.1 state changed to 3 facebook.html:20
LOG: request id 6.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 6.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><iq xmlns='jabber:client' type='result' id='_bind_auth_2'><bind xmlns='urn:ietf:params:xml:ns:xmpp-bind'><jid>[email protected]/168823c4_4C61C1205A1E5</jid></bind></iq></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7.0 posting facebook.html:20
LOG: request id 7.0 state changed to 1 facebook.html:20
SEND: <body rid='765843056' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><iq type='set' id='_session_auth_2' xmlns='jabber:client'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq></body> facebook.html:20
LOG: request id 7.1 state changed to 2 facebook.html:20
LOG: request id 7.1 state changed to 3 facebook.html:20
LOG: request id 7.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 7.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><iq xmlns='jabber:client' type='result' id='_session_auth_2'><session xmlns='urn:ietf:params:xml:ns:xmpp-session'/></iq></body> facebook.html:20
Connecting status -> [5, null] facebook.html:24
Strophe is connected. facebook.html:20
Send a message to [email protected]/168823c4_4C61C1205A1E5 to talk to me. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8.0 posting facebook.html:20
LOG: request id 8.0 state changed to 1 facebook.html:20
SEND: <body rid='765843057' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><presence xmlns='jabber:client'/></body> facebook.html:20
LOG: request id 8.1 state changed to 2 facebook.html:20
LOG: request id 8.1 state changed to 3 facebook.html:20
LOG: request id 8.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8 should now be removed facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 8.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>fe60b81022f853cc7feb596f443885e90f6631fe</photo></x></presence></body> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: Request 1 timed out (secondary), restarting facebook.html:20
LOG: request id 1.1 state changed to 4 facebook.html:20
LOG: request id 9.1 posting facebook.html:20
LOG: request id 9.1 state changed to 1 facebook.html:20
SEND: <body rid='765843050' xmlns='http://jabber/protocol/httpbind' to='chat.facebook.' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 9.2 state changed to 2 facebook.html:20
LOG: request id 9.2 state changed to 3 facebook.html:20
LOG: request id 9.2 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 9 should now be removed facebook.html:20
LOG: request id 9.2 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' inactivity='60' secure='true' authid='CE3FA949' content='text/xml; charset=utf-8' window='3' polling='15' sid='bb0248e53bf29aa66162aa2884e08ec3d6c2302a' requests='2' wait='60'><stream:features xmlns:stream='http://etherx.jabber/streams' xmlns='jabber:client'><mechanisms xmlns='urn:ietf:params:xml:ns:xmpp-sasl'><mechanism>X-FACEBOOK-PLATFORM</mechanism><mechanism>DIGEST-MD5</mechanism></mechanisms></stream:features></body> facebook.html:20
Connecting status -> [3, null] facebook.html:24
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 10.0 posting facebook.html:20
LOG: request id 10.0 state changed to 1 facebook.html:20
SEND: <body rid='765843058' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><auth xmlns='urn:ietf:params:xml:ns:xmpp-sasl' mechanism='X-FACEBOOK-PLATFORM'/></body> facebook.html:20
LOG: request id 10.1 state changed to 2 facebook.html:20
LOG: request id 10.1 state changed to 3 facebook.html:20
LOG: request id 10.1 state changed to 3 facebook.html:20
LOG: request id 10.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 10 should now be removed facebook.html:20
LOG: request id 10.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>98addc5cda3a34a0ecd0b9e09ae900eddcbbb8ea</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>105af5c5b0c5f028d93dca6e37f2c174dc4a62a5</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>e5d4693f8712d828f1b18d61e7f138511fc04968</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>6c235c1472d7b370771182085f9d0983b980e8b7</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>2f36c33ac86713a73a910db55f9ecac00e19ae63</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>eea1e5844ad62abad6043a39e8a3d66619490360</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>af784e43277ded69c16dcc02bffec6bf883b6e71</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>da16587560467f05f8b97810cbe0c59c01a1fb7c</photo></x></presence><presence xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='[email protected]'><x xmlns='vcard-temp:x:update'><photo>5177a3daefecf3f2d5cac28809f8186ff3168ca8</photo></x></presence></body> facebook.html:20
LOG: no requests during idle cycle, sending blank request facebook.html:20
LOG: request id 11.0 posting facebook.html:20
LOG: request id 11.0 state changed to 1 facebook.html:20
SEND: <body rid='765843059' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'/> facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
I sent [email protected]: TEST MESSAGE facebook.html:20
LOG: request id 12.0 posting facebook.html:20
LOG: request id 12.0 state changed to 1 facebook.html:20
SEND: <body rid='765843060' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'><message to='[email protected]' type='chat' xmlns='jabber:client'><body>TEST MESSAGE</body></message></body> facebook.html:20
LOG: request id 11.1 state changed to 2 facebook.html:20
LOG: request id 11.1 state changed to 3 facebook.html:20
LOG: request id 11.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 11 should now be removed facebook.html:20
LOG: request id 11.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'/> facebook.html:20
LOG: request id 12.1 state changed to 2 facebook.html:20
LOG: request id 12.1 state changed to 3 facebook.html:20
LOG: request id 12.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 12 should now be removed facebook.html:20
LOG: request id 12.1 got 200 facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind'><iq xmlns='jabber:client' to='[email protected]/168823c4_4C61C1205A1E5' from='chat.facebook.' id='fbiq4C61C13A7D2DD' type='set'><own-message xmlns='http://www.facebook./xmpp/messages' to='[email protected]' self='true'><body>TEST MESSAGE</body></own-message></iq></body> facebook.html:20
LOG: no requests during idle cycle, sending blank request facebook.html:20
LOG: request id 13.0 posting facebook.html:20
LOG: request id 13.0 state changed to 1 facebook.html:20
SEND: <body rid='765843061' xmlns='http://jabber/protocol/httpbind' sid='cb26009594cffefe0fe73cf4733ac2f7c8522701'/>

NODE log


Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: request id 1.0 posting facebook.html:20
LOG: request id 1.0 state changed to 1 facebook.html:20
SEND: <body rid='627577970' xmlns='http://jabber/protocol/httpbind' to='chat.facebook.' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
Connecting status -> [1, null] facebook.html:24
Strophe is connecting. facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2.0 posting facebook.html:20
LOG: request id 2.0 state changed to 1 facebook.html:20
SEND: <body rid='627577971' xmlns='http://jabber/protocol/httpbind' to='chat.facebook.' xml:lang='en' wait='60' hold='1' content='text/xml; charset=utf-8' ver='1.6' xmpp:version='1.0' xmlns:xmpp='urn:xmpp:xbosh'/> facebook.html:20
LOG: request id 1.1 state changed to 2 facebook.html:20
LOG: request id 1.1 state changed to 3 facebook.html:20
LOG: request id 1.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 1 should now be removed facebook.html:20
LOG: request id 1.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' xmlns:xmpp='urn:xmpp:xbosh' stream='fc2182d8-124c-432f-aff0-bf8f58cd580d' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b' wait='60' ver='1.6' polling='35' inactivity='70' requests='2' hold='1' from='chat.facebook.' content='text/xml; charset=utf-8' xmpp:restartlogic='true' window='2'/> facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3.0 posting facebook.html:20
LOG: request id 3.0 state changed to 1 facebook.html:20
SEND: <body rid='627577972' xmlns='http://jabber/protocol/httpbind' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b'/> facebook.html:20
LOG: request id 2.1 state changed to 2 facebook.html:20
LOG: request id 2.1 state changed to 3 facebook.html:20
LOG: request id 2.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 2 should now be removed facebook.html:20
LOG: request id 2.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' xmlns:xmpp='urn:xmpp:xbosh' stream='0739f763-51dc-4fa6-ae73-9c422898f8df' sid='f168a14f-c4e4-4796-b815-69cacddb82a2' wait='60' ver='1.6' polling='35' inactivity='70' requests='2' hold='1' from='chat.facebook.' content='text/xml; charset=utf-8' xmpp:restartlogic='true' window='2'/> facebook.html:20
LOG: _throttledRequestHandler called with 2 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 4.0 posting facebook.html:20
LOG: request id 4.0 state changed to 1 facebook.html:20
SEND: <body rid='627577973' xmlns='http://jabber/protocol/httpbind' sid='c8a300fc-28b7-49cc-8373-a8b3db5f894b'/> facebook.html:20
LOG: request id 3.1 state changed to 2 facebook.html:20
LOG: request id 3.1 state changed to 3 facebook.html:20
LOG: request id 3.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 1 requests facebook.html:20
LOG: _processRequest: first request has readyState of 1 facebook.html:20
LOG: request id 3 should now be removed facebook.html:20
LOG: request id 3.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' condition='item-not-found' type='terminate'/> facebook.html:20
Connecting status -> [2, "item-not-found"] facebook.html:24
       ERR:[Strophe failed to connect!!!] - Strophe.Status.CONNFAIL facebook.html:20
LOG: User connection callback caused an exception: TypeError: Cannot set property 'value' of undefined facebook.html:20
LOG: request id 4.1 state changed to 2 facebook.html:20
LOG: request id 4.1 state changed to 3 facebook.html:20
LOG: request id 4.1 state changed to 4 facebook.html:20
LOG: removing request facebook.html:20
LOG: _throttledRequestHandler called with 0 requests facebook.html:20
LOG: request id 4 should now be removed facebook.html:20
LOG: request id 4.1 got 200 facebook.html:20
LOG: _connect_fb was called facebook.html:20
RECV: <body xmlns='http://jabber/protocol/httpbind' condition='item-not-found' message='Invalid packet' type='terminate'/> facebook.html:20
Connecting status -> [2, "item-not-found"] facebook.html:24
       ERR:[Strophe failed to connect!!!] - Strophe.Status.CONNFAIL facebook.html:20
LOG: User connection callback caused an exception: TypeError: Cannot set property 'value' of undefined
Share Improve this question edited Jul 31, 2012 at 11:20 Shlomi Schwartz asked Jul 22, 2012 at 12:52 Shlomi SchwartzShlomi Schwartz 8,91330 gold badges120 silver badges198 bronze badges
Add a ment  | 

3 Answers 3

Reset to default 2

After more then a week of struggle I got it to work, I switched to punjab instead of the node server and all works fine. so basically the structure is:

Strophe.js <-> Apache (proxy) <-> punjab <-> Facebook XMPP server

Author of node-xmpp-bosh here.

Try running the server with pidgin_patible: true (in the config file).

It's probably a bug in jquery.xmpp.js which doesn't handle the case when the bosh server sends an empty body as the 1st response instead of a <stream:features/> packet. According to the BOSH spec, both are valid. You can try filing a bug with the jquery.xmpp.js project. node-xmpp-bosh should work with strophe.js though. If it doesn't, you may file a bug.

LOG: request id 4.0 posting 

LOG: request id 4.0 state changed to 1 SEND: Problem looks in this packet.Here should be Auth Request but its empty request.

->Try to get latest revision.
->And make sure what method you're calling "facebookConnect = function (jid, callback, wait, hold, apiKey, accessToken)"
-> should be call this method.

function login() {
    FB.getLoginStatus(function(response) {
      if (response.authResponse) {
        connection.facebookConnect(
            response.authResponse.userId + "@chat.facebook./test", 
            onConnect, 
            60,
            1, 
            FB._apiKey,
            response.authResponse.accessToken);
        FB.api('/me/friends', function(response) {
            var to = $("#to");
            to.empty();
          $.each(response.data, function(i,v){
            to.append($("<option value='" + v.id + "'>" + v.name + "</option>"));
          });
        });

      } else {
       connection.disconnect();
      }
    });
}

本文标签: javascriptXMPP client Not connectingusing Node Bosh serverStack Overflow