zk / xmpp-clj

A lightweight clojure wrapper around the smack jabber/XMPP library
41 stars 21 forks source link

Defining a port to connect to? #2

Closed jasperla closed 12 years ago

jasperla commented 12 years ago

It seems xmpp-clj is currently lacking the functionality to connect to a port other than the standard 5222. I'm getting the following trace:

user=> (defonce my-bot (xmpp/start-bot xmpp-connection-info (var handle-message))) XMPPException SASL authentication failed using mechanism DIGEST-MD5 org.jivesoftware. smack.SASLAuthentication.authenticate (SASLAuthentication.java:325) user=> java.net.SocketException: Connection closed by remote host at com.sun.net.ssl.internal.ssl.SSLSocketImpl.checkWrite(SSLSocketImpl.java:12 53) at com.sun.net.ssl.internal.ssl.AppOutputStream.write(AppOutputStream.java:43) at sun.nio.cs.StreamEncoder.writeBytes(StreamEncoder.java:202) at sun.nio.cs.StreamEncoder.implFlushBuffer(StreamEncoder.java:272) at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:276) at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:122) at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:212) at java.io.BufferedWriter.flush(BufferedWriter.java:236) at org.jivesoftware.smack.PacketWriter.writePackets(PacketWriter.java:274) at org.jivesoftware.smack.PacketWriter.access$000(PacketWriter.java:40) at org.jivesoftware.smack.PacketWriter$1.run(PacketWriter.java:87) java.io.EOFException: no more data available - expected end tag /stream:stream to close start tag stream:stream from line 1, parser stopped on END_TAG seen ...... @1:758 at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3035) at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046) at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1144) at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093) at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368) at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44) at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76) java.net.SocketException: Connection closed by remote host

This is against ejabberd fwiw.

zk commented 12 years ago

@jasperla I added a :port config option, please try with 0.2.1 and let me know if that works for you.

68a5c5bb3746a27e69c802288b87464fde9e4052

jasperla commented 12 years ago

Thanks, I'll test it later this weekend :)

jasperla commented 12 years ago

It doesn't seem to work:

user=> (defonce my-bot (xmpp/start-bot connect-info (var handle-message))) java.io.EOFException: input contained no data at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3003) at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046) at org.xmlpull.mxp1.MXParser.parseProlog(MXParser.java:1410) at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1395) at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093) at org.jivesoftware.smack.PacketReader.parsePackets(PacketReader.java:368) at org.jivesoftware.smack.PacketReader.access$000(PacketReader.java:44) at org.jivesoftware.smack.PacketReader$1.run(PacketReader.java:76) XMPPException Connection failed. No response from server. org.jivesoftware.smack.PacketReader.startup (PacketReader.java:164) user=>

On the server I do see it's trying to connect though: =INFO REPORT==== 2011-12-17 14:23:39 === I(<0.943.0>:ejabberd_listener:281) : (#Port<0.67647>) Accepted connection {{xx,xx,xx,xx},32758} -> {{xx,xx,xx,xx},5223}

my connect info has ":port 5223" and this is being picked up as tcpdumping on that port shows the traffic..perhaps it's due to the required encryption?