/ / jaxl kann keine Verbindung zu Prosody herstellen - php, xmpp

jaxl kann keine Verbindung zu Prosody herstellen - php, xmpp

Ich kann mich gut mit anderen Clients wie SleekXMPP und Strophe authentifizieren.

Verwendung von Prosody 0.8.2 unter Ubuntu 12.04 und dem neuesten Master-HEAD von Jaxl (2518a44b9dfeb9ec947922f078cf4f8663497712).

Der Code:

require "JAXL/jaxl.php";
$cli = new JAXL(array(
"jid" => "yang@localhost",
"pass" => "asdf",
"bosh_url" => "http://localhost/chat/candy/example/http-bind/"
));
$cli->add_cb("on_auth_success", function() {
print "yay";
});
$cli->start();

vom Kunden:

<body xmlns="http://jabber.org/protocol/httpbind" content="text/xml; charset=utf-8" to="localhost" route="xmpp:localhost:5222" secure="true" xml:lang="en" xmpp:version="1.0" xmlns:xmpp="urn:xmpp:xbosh" hold="1" wait="30" rid="3937" ver="1.10" from="yang@localhost"></body>

vom Server:

<body authid="72604504-a5be-4ab6-aba0-9686cca478f3" xmpp:version="1.0"
xmlns:stream="http://etherx.jabber.org/streams"
xmlns:xmpp="urn:xmpp:xbosh" inactivity="60" wait="30" polling="5"
secure="true" hold="1" from="localhost" ver="1.6"
sid="72604504-a5be-4ab6-aba0-9686cca478f3" requests="2"
xmlns="http://jabber.org/protocol/httpbind">

vom Kunden:

<body sid="72604504-a5be-4ab6-aba0-9686cca478f3" rid="3938" xmlns="http://jabber.org/protocol/httpbind"><auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="SCRAM-SHA-1">biwsbj15YW5nQGxvY2FsaG9zdCxyPVpRWUp0b1JwUXMwTlFkYlJ3VnlNT1FvQXN5bnhLWlN1OUpocjdVeTdkbFE9</auth></body>

vom Server:

<body xmlns="http://jabber.org/protocol/httpbind"
sid="72604504-a5be-4ab6-aba0-9686cca478f3" xmlns:stream =
"http://etherx.jabber.org/streams">

vom Kunden:

<body xmlns="http://jabber.org/protocol/httpbind" sid="72604504-a5be-4ab6-aba0-9686cca478f3" rid="3939"></body>

Aus Prosody-Protokollen:

Oct 25 01:18:53 socket        debug   server.lua: accepted new client
connection from 127.0.0.1:41313 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid: %s)
Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
BOSH session created for request from 127.0.0.1
Oct 25 01:18:53 mod_bosh        info    New BOSH session, assigned it
sid "9096614e-a319-4234-b281-d5806b7bc558"
Oct 25 01:18:53 httpserver      debug   Sending response to c890f0
Oct 25 01:18:53 httpserver      debug   Destroying request c890f0
Oct 25 01:18:53 httpserver      debug   Request has destroy callback
Oct 25 01:18:53 socket  debug   server.lua: closed client handler and
removed socket from list
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 0 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 socket  debug   server.lua: accepted new client
connection from 127.0.0.1:41314 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid:
9096614e-a319-4234-b281-d5806b7bc558)
Oct 25 01:18:53 mod_bosh        debug   BOSH stanza received: <auth
mechanism="SCRAM-SHA-1" xmlns="urn:ietf:params:xml:ns:xmpp-sasl">

Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
Received[c2s_unauthed]: <auth mechanism="SCRAM-SHA-1"
xmlns="urn:ietf:params:xml:ns:xmpp-sasl">
Oct 25 01:18:53 auth_internal_plain     debug   NODEprep failed on
username: yang@localhost
Oct 25 01:18:53 localhost:saslauth      debug   sasl reply: <failure
xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>
Oct 25 01:18:53 mod_bosh        debug   We have an open request, so
sending on that
Oct 25 01:18:53 httpserver      debug   Sending response to ccd1d0
Oct 25 01:18:53 httpserver      debug   Destroying request ccd1d0
Oct 25 01:18:53 httpserver      debug   Request has destroy callback
Oct 25 01:18:53 bosh9096614e-a319-4234-b281-d5806b7bc558        debug
BOSH session marked as inactive at 1351153133
Oct 25 01:18:53 socket  debug   server.lua: closed client handler and
removed socket from list
Oct 25 01:18:53 mod_bosh        debug   Destroying the request now...
Oct 25 01:18:53 httpserver      debug   Destroying request ccd1d0
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 0 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 socket  debug   server.lua: accepted new client
connection from 127.0.0.1:41315 to 5280
Oct 25 01:18:53 mod_bosh        debug   BOSH body open (sid:
9096614e-a319-4234-b281-d5806b7bc558)
Oct 25 01:18:53 mod_bosh        debug   Session
9096614e-a319-4234-b281-d5806b7bc558 has 1 out of 1 requests open
Oct 25 01:18:53 mod_bosh        debug   and there are 0 things in the
send_buffer
Oct 25 01:18:53 mod_bosh        debug   Have nothing to say, so
leaving request unanswered for now
Oct 25 01:18:53 httpserver      debug   Request d8b230 left open,
on_destroy is function(mod_bosh.lua:81)
Oct 25 01:18:53 bosh67a53eee-1bdb-41f6-98cb-2413808fad65        debug
BOSH client inactive too long, destroying session at 1351153133
Oct 25 01:18:53 bosh67a53eee-1bdb-41f6-98cb-2413808fad65        info
Destroying session for (unknown) ((unknown)@localhost)

Irgendwelche Ideen? Vielen Dank im Voraus für jede Hilfe.

Antworten:

1 für die Antwort № 1

Wie aus dem Protokoll hervorgeht, schlägt Prosody mit der Authentifizierung fehl. Bitte versuchen Sie es mit einem von PLAIN, DIGEST-MD5, ANONYMOUS Authentifizierungsmechanismen und es sollte einfach funktionieren. SCRAM-SHA-1 und CRAM-MD5 Beide sind derzeit in JAXL v3.x defekt. Lass es mich wissen, wenn es immer noch nicht funktioniert.