Installing PyMSNT on Wildfire running Win 2K3

It doesn’'t seem like the PyMSNT instructions cover installing it with Wildfire on Win2K3. Has anyone else had problems?

My Steps:[/b]

Installed Python 2.4

Added Python executables to PATH enviroment variable

Twisted, Crypto, and OpenSLL binaries for Python 2.4

Configured “config.xml”

When I ran PyMSNt.py I reliazed that I’‘m missing Windows DLL’'s. These include libeay32.dll and ssleay32.dll. After searching the web I found the files and placed them in my Windows System32 directory.

Here is my screen shot:

Unable to install any good reactors (kqueue, epoll, poll).

We fell back to using select. You may have scalability problems.

This reactor will not support more than 1024 connections +at a time.

WARNING! Only PNG avatars will be understood by this transport. Please install t

he Python Imaging Library.

You must install pycrypto and pyopenssl.

Traceback (most recent call last):

File “D:\Wildfire\pymsnt-0.11\PyMSNt.py”, line 11, in ?

import main

File “D:\Wildfire\pymsnt-0.11\src\main.py”, line 102, in ?

import session

File “D:\Wildfire\pymsnt-0.11\src\session.py”, line 7, in ?

import legacy

File “D:\Wildfire\pymsnt-0.11\src\legacy_init_.py”, line 4, in ?

from glue import LegacyConnection, LegacyGroupchat, translateAccount, startS

tats, updateStats, reloadConfig

File “D:\Wildfire\pymsnt-0.11\src\legacy\glue.py”, line 8, in ?

from tlib import msn

File “D:\Wildfire\pymsnt-0.11\src\tlib\msn_init_.py”, line 1, in ?

from msnw import MSNConnection, MultiSwitchboardSession

File “D:\Wildfire\pymsnt-0.11\src\tlib\msn\msnw.py”, line 14, in ?

from tlib.msn import msn

File “D:\Wildfire\pymsnt-0.11\src\tlib\msn\msn.py”, line 104, in ?

from twisted.internet.ssl import ClientContextFactory

File “D:\Python\lib\site-packages\twisted\internet\ssl.py”, line 47, in ?

from OpenSSL import SSL

File “D:\Python\Lib\site-packages\OpenSSL_init_.py”, line 11, in ?

import rand, crypto, SSL, tsafe

ImportError: DLL load failed: The specified procedure could not be found.

Any help would be much appreciated. Thanks!!

Message was edited by: snoris

Ok…Disregard above. It was just as I suspecteed. The 2 required DLLs that I downloaded were invalid. I kept searching the web and tried another site.

Now all I see is:

Unable to install any good reactors (kqueue, epoll, poll).

We fell back to using select. You may have scalability problems.

This reactor will not support more than 1024 connections +at a time.

WARNING! Only PNG avatars will be understood by this transport. Please install t

he Python Imaging Library.

I can see the transport running within Wildfire. I’‘m not quite sure what to do next. My JAJC client isn’'t seeing the transport.

Thanks

I can see the transport running within Wildfire. I’'m

not quite sure what to do next. My JAJC client isn’'t

seeing the transport.

try with other client. Say Exodus or PSI.

You don’'t need the twisted stuff anymore.

Thought I’'d share exactly how I got pyMSNt (and pyAIMt) to work here, if anyone is still interested. Did it by scouring the web for dependencies and downloading them all.

The “You must install pycrypto and pyopenssl” warning is from missing dependencies. (See installation list below). The “This reactor will not support more than 1024 connections +at a time” error is because the thread models that work for Linux, etc. don’'t work under Windows, so the reactor autoselect option “select” fixes it.

My working MSN transport config.xml is here:

D:\Wildfire\transports\pymsnt\config.xml

/code

And also my working AIM transport here:

D:\Wildfire\transports\pyaimt\config.xml

/code

One note… Although these configurations work, they do not display avitars for some reason. Perhaps someone here could say why. I’'m open to suggestions.

I found that the ActiveState Python installer saves much time, since it changes your Windows path and associates .py files with Python for you. The following list of software is what’'s installed on my Windows XP box:

ActiveState ActivePython 2.4.3

http://www.activestate.com/Products/ActivePython/

OpenSSL v0.9.8a

http://www.slproweb.com/products/Win32OpenSSL.html

Python 2.4 PIL-1.1.5

http://www.pythonware.com/products/pil/

Python 2.4 pycrypto-2.0.1

http://www.voidspace.org.uk/python/modules.shtml#pycrypto

Python 2.4 pyOpenSSL-0.6

http://webcleaner.sourceforge.net/install.html

Twisted 2.2.0 (Python 2.4)

http://twistedmatrix.com/trac/

pymsnt-0.11a.tar.gz

http://msn-transport.jabberstudio.org/?page=downloads

pyaim-t-0.7c.tar.gz

http://www.blathersource.org/releases.php?projid=pyaim-t

Startup is done with these commands:

D:\Wildfire\transports\pymsnt\PyMSNt.cmd

@echo off

D:

cd \Wildfire\transports\pymsnt

python PyMSNt.py

/code

D:\Wildfire\transports\pyaimt\PyAIMt.cmd

@echo off

D:

cd \Wildfire\transports\pyaimt

python PyAIMt.py

/code

The dependencies and reactor settings above work with both pyMSNt and pyAIMt running under Windows. I should also mention that I’'m running Wildfire 2.6.2 (wildfire_2_6_2.exe).

Oh by the way, I’‘ve used Gaim, Psi and Meebo successfully with these configurations. I run everything with SSL, so it’'s stealthy and the Jabber connection is secure end to end, (not AIM or MSN though). These are more like the actual “cone of silence” http://en.wikipedia.org/wiki/Cone_of_Silence.

Enjoy!

Brett

Addendum: Corresponding relevant Wildfire configuration settings, and session status example:

Under the tab…

=== Server Settings ===

Below are properties for this server. Click the “Edit Properties” button below to

change some of the server settings. Some settings can not be changed.

Server Properties

Server Uptime: 3 days, 20 hours, 38 minutes – started May 21, 2006 10:47:20 PM

Version: Wildfire 2.6.2

Wildfire Home: D:\Wildfire

Server Name: example.com

Server Ports

1: IP:Port, Security: 192.168.0.2:5269, NORMAL

Domain Name(s): example.com

2: IP:Port, Security: 192.168.0.2:10015, NORMAL

Domain Name(s): example.com

3: IP:Port, Security: 192.168.0.2:5222, NORMAL

Domain Name(s): example.com

4: IP:Port, Security: 192.168.0.2:5223, TLS (SSL)

Domain Name(s): example.com

Environment

JVM Version and Vendor: 1.5.0_06 Sun Microsystems Inc. – Java HotSpot™ Server VM

Appserver: Jetty/5.1.x

OS / Hardware: Windows XP / x86

Locale / Timezone: en / Pacific Standard Time (-8 GMT)

Java Memory 9.51 MB of 63.31 MB (15.0%) used

/code

Again under the tab…

=== External Component Settings ===

Service Enabled

(_) Disabled - External components are not allowed to connect to this server.

(*) Enabled - External components can connect to this server.

Port:

Default shared secret:

Allowed to Connect

(*) Anyone - Any component is allowed to connect to this server. Use the table below

to override the default shared secret.

(_) Whitelist - Only some components are allowed to connect to this server. Use

the table below to define the allowed components and their shared secret keys.

Subdomain Shared secret Delete

Subdomain:

Shared secret:

Not Allowed to Connect

The components listed in the following table will not be able to connect to this server.

Use the form below to block new components from connecting to this server.

Subdomain Delete

Subdomain:

/code

Under the tab…

=== Component Sessions ===

Domain Name Category Type Creation Date Last Activity Close Connection

msn.example.com MSN Transport gateway msn May 21, 2006 10:52:30 PM May 24, 2006 5:24:02 PM (X)

/code

Message was edited by: bretts5964

I followed all this step. whe i run the PyMSNt.py i get this messages:

Unable to install any good reactors (kqueue, epoll, poll).

We fell back to using select. You may have scalability problems.

This reactor will not support more than 1024 connections +at a time.

Unknown reactor: select . Using select(), reactor.

I can see the session component on administration Wildfire, but

i can´t see the name, type and category…

What is wrong?

What is the name of your MSN gateway instance?

Hi, the MSN gateways is pymsnt-0.11a

Madeleine

Sorry, the MSN gateways instance is “msn”

Madeleine

I can see the session component on administration

Wildfire, but

i can´t see the name, type and category…

What is wrong?

Apparently, I failed to include my Wildfire configuration settings in my previous post. Those must match some of the settings in your PyMSNt of course. I don’‘t have access my Wildfire admin console right now, but I’'ll copy those and post them here later today. Maybe something you see will solve your problem.

Brett

Okay, I updated my original post (see above) with Wildfire configuration settings that are relevant to running the PyMSNt transport. You should be able to compare these and match up the settings with your transport’'s JID, server domain name, IP address, port and password.

  • Brett

I followed all step. But Under the tab…

=== Component Sessions ===

Domain Name Category Type Creation Date Last Activity Close Connection

1 msn.adverweb.com.ve 9:35 9:35

Última actualización de la lista: 26-may-2006 9:50:23

Not Name, Category, and Type . does not seem to recognize which kind of gateway transport is…

I installing neos client to try register MSN contact but does not show the MSN transport…

Thank a lot for all your reply…

Madeleine

How can we run msn transport as a windows service so that it will also run if the server is in logoff mode.??

Message was edited by: deepak

Hi Madeleine,

Why don’'t you post your PyMSNt & Wildfire configurations here. Then everyone here can try to help.

Brett

Hi Deepak,

I didn’'t have complete success creating a service. I could get PyMSNt to start and stop as a service, but could not get it to survive logoff. The service was running after logon, but the PyMSNt code was halted. I think it fails because it runs under the Python bytecode interpreter rather than as a binary executable.

I have not tried this, but I think maybe compiling PyMSNt source into a Windows binary executable might work. Perhaps you could try something found here?

py2exe - convert python scripts into standalone windows programs

http://py2exe.sourceforge.net/

Good luck,

Brett

Ok. My PyMSNt configuration:

Thanks,

Madeleine

I found the error in instead 127.0.0.1

Now I can see the MSN transport

Madeleine;)

Great! Glad you got it working.

So your Wildfire server is not listening to localhost , but instead must be using a static IP address assigned by DNS, advwerweb.com.ve .

My server’'s host file (DNS) looks like this:

127.0.0.1 localhost

192.168.0.2 example.com ## Wildfire listener

192.168.0.2 msn.example.com ## PyMSNt Transport

192.168.0.2 aim.example.com ## PyAIMt Transport

/code

Brett

Brett :

You are rigth! I was wrong when i writed the solution of my problem, really I changed the Wildfire listener, i haved the number IP and change it by DNS name adverweb.com.ve… Sorry!

Now i can see the MSN gateway transport from NEO client too.

I tested add de MSN contact then the Jabber ID of that MSN user is mthompso2004%hotmail.com@msn.adverweb.com.ve but (alwasy but)

say offline, and not is true because i’'m on line on MSN.

Any idea?

Madeleine

Sounds like your network settings are working, and Wildfire shows PyMSNt is connecting, so I’‘d say look at your Wildfire Admin Console logs. You appear to be using MS SQL Server and perhaps Active Directory, correct? I am only using the built-in HSQL Database Engine Driver that comes with Wildfire, so I don’'t know.

There seems to be some problems associated with some LDAP servers and presence information. I don’'t have any ideas about it, but you might try looking at this discussion:

Re: status/presence with LDAP rosters

http://www.jivesoftware.org/community/thread.jspa?messageID=119462&#119462

Or, try connecting with another Jabber client that supports gateways, like Psi or Gush just to rule out a problem with Neos.

Brett