PyMSNt Issue

Hi

I am running Wildfire on Windows 2003 Server. I have also installed PyMSNt. I have created windows service for PyMSNt. When I start the windows service, it works fine for 3/4 days i.e. It is listed in Component Sessions. But after that service stops working… I mean it runs in the background but It is not listed in Component Sessions and following it what I see in error log:

Error Log:

] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3850,localport=10015]
2006.09.07 21:55:49 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3851,localport=10015]
2006.09.07 21:55:52 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3852,localport=10015]
2006.09.07 21:55:54 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3853,localport=10015]
2006.09.07 21:55:57 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3854,localport=10015]
2006.09.07 21:56:00 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3855,localport=10015]
2006.09.07 21:56:02 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3856,localport=10015]
2006.09.07 21:56:05 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3857,localport=10015]
2006.09.07 21:56:08 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3858,localport=10015]
2006.09.07 21:56:11 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3860,localport=10015]
2006.09.07 21:56:14 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3861,localport=10015]
2006.09.07 21:56:16 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3862,localport=10015]
2006.09.07 21:56:19 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3863,localport=10015]
2006.09.07 21:56:22 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3865,localport=10015]
2006.09.07 21:56:25 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3866,localport=10015]
2006.09.07 21:56:27 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3867,localport=10015]
2006.09.07 21:56:30 [
|org.jivesoftware.wildfire.net.SocketReader.run(SocketReader.java:161)] Connection closed before session established
Socket[http://addr=/64.40.106.175,port=3868,localport=10015]

I am not getting whether the problem is with the PyMSNt or with Wildfire.

Please help me with this.

Thanks,

Deepak

Message was edited by: deepak

That is the error log right, what do the corresponding errors in debug say. it looks like the handshake is being broken on connection.

Jeff

Hrm. Try enabling debugging in your PyMSNt config.xml file. It may give you a good idea of what exactly is going on that’‘s failing. There’‘s a chance you may have a very slight misconfiguration in PyMSNt’‘s config that’'s confusing Wildfire and/or PyMSNt. You should see a section in your config file like:

and leave debugFile out of it for the moment since you are just debugging real quick. (leaving debugFile out means it’'ll go to the screen instead of to a file)

This is what I see in the Wildfire log viewer debug tab:

2006.09.09 00:19:10 Connect Socket[addr=/64.40.106.175,port=4107,localport=10015]

2006.09.09 00:19:10 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:10 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:13 Connect Socket[addr=/64.40.106.175,port=4108,localport=10015]

2006.09.09 00:19:13 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:13 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:15 Connect Socket[addr=/64.40.106.175,port=4109,localport=10015]

2006.09.09 00:19:15 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:15 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:19 Connect Socket[addr=/64.40.106.175,port=4110,localport=10015]

2006.09.09 00:19:19 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:19 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:21 Connect Socket[addr=/64.40.106.175,port=4111,localport=10015]

2006.09.09 00:19:21 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:21 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:24 Connect Socket[addr=/64.40.106.175,port=4113,localport=10015]

2006.09.09 00:19:24 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:24 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:27 Connect Socket[addr=/64.40.106.175,port=4114,localport=10015]

2006.09.09 00:19:27 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:27 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:30 Connect Socket[addr=/64.40.106.175,port=4115,localport=10015]

2006.09.09 00:19:30 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:30 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:33 Connect Socket[addr=/64.40.106.175,port=4117,localport=10015]

2006.09.09 00:19:33 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:33 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:36 Connect Socket[addr=/64.40.106.175,port=4118,localport=10015]

2006.09.09 00:19:36 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:36 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:39 Connect Socket[addr=/64.40.106.175,port=4119,localport=10015]

2006.09.09 00:19:39 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:39 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:41 Connect Socket[addr=/64.40.106.175,port=4120,localport=10015]

2006.09.09 00:19:41 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:41 Another component is already using domain: msn.64.40.106.175

2006.09.09 00:19:44 Connect Socket[addr=/64.40.106.175,port=4121,localport=10015]

2006.09.09 00:19:44 Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:44 Another component is already using domain: msn.64.40.106.175

and this is my config.xml (PyMSNt):

msn.64.40.106.175

I’‘m not entirely sure that that works. I guess if you can do a dns lookup of that and it returns something there’‘s no reason why it couldn’‘t… but I’'m really not sure.

Those shouldn’'t be the same btw. jid refers to what PyMSNt will be responding as, whereas host refers to what xmpp server PyMSNt will be connecting to.

so should it be like this ?

Hi,

I’'ve never used pyMSNt, so I may not be of any help. My explaination here is based on logic.

Would it help if you put the IP address of Wildfire server in , because I suppose that’'s what means. If you put a server name than that name must be resolveable to an IP.

2006.09.09 00:19:10 Connect Sockethttp://addr=/64.40.106.175,port=4107,localport=10015

2006.09.09 00:19:10 ExComp Starting registration of new external component for domain: msn.64.40.106.175

2006.09.09 00:19:10 ExComp Another component is already using domain:

That looks like you already have MSN transport running although I’‘m not sure why you didn’‘t see it in Component Session. Can you change the msn in the JID to something like msn2 and see if pyMSNt can connect? If it can then I’'m pretty sure that the component with msn is already running.

Hello aznidin

With the settings that I have currently PyMSNt works correctly for 3-4 days. It is listed in Component Sessions. But after 3-4 days It generates the above error. I am bit confused here But I will try your suggestion. Thanks for your reply. I will get back with the updates.

Well, how about this…

What is the name of your jabber server? Like what is your jid? Mine is, for example, daniel@jabber.vorpalcloud.org. My transports are set up as aim.jabber.vorpalcloud.org, msn.jabber.vorpalcloud.org, and so on. So I have:

and that will let you have ‘‘msn’’ as your entire jid, or at least that works with some servers, so… yeah. Long story short, you are treading on ground I’‘ve not seen folk try before. =) That said, if it -is- connecting and then is disconnecting later, that’'s very odd. The error you are seeing is as if one copy of PyMSNt is running and then another is trying to start up.

Hi Daniel,

Here’'s what I think…

Having an IP address as the xmpp.domain is normal, but to Wildfire it’‘s a qualified XMPP domain name. So, if you have a component, having msn.64.40.106.175 is perfectly acceptable. Again, it’‘s not a combination of host name and IP address. It’'s simply a complete sub domain in its entirety.

I -think- you can put jid as just msn and that will let you have ‘‘msn’’ as your entire jid, or at least that works with some servers, so… yeah.

That doesn’‘t seem to work with Wildfire because it requires that every connecting component be the sub domain of xmpp.domain. So, if a component send a mere msn in the stream header, wildfire will append it with xmpp.domain and return a reply to "<stream:stream to=’'msn.xmpp.domain …" with no error. The tricky thing here is that, if pyMSNt still assume that it is bearing msn as its domain instead of msn.xmpp.domain, the consequences could become confusing.

Just my $0.02

Added:

The altered sub-domain is actually depicted not in the replied stream header but subsequent packets, the first one being <iq type=“get” id=“xxx” from “component.xmpp.domain” to=“msn.xmpp.domain”>… Sorry about the mistake.

Message was edited by: aznidin