Oddly enough this message never made it into my inbox. If you're still having the issue please can you post a dump of the transport output with <dumpProtocol/> enabled.
(version numbers between the transport and the xmpppy lib needs to match, so 0.3 transport with 0.3 lib, or cvs transport with 0.4 lib) It seems that ejabberd can sometimes send non-100%-valid xml which breaks the expat parser used by xmpppy. Replying to: Daniel Clark dclark at pobox.com Sat Dec 30 22:53:52 GMT 2006 When I run irc.py, I get: Traceback (most recent call last): File "/usr/local/bin/irc.py", line 1762, in ? connection = xmpp.client.Component(hostname,port,component=component) TypeError: __init__() got an unexpected keyword argument 'component' I've read the thread at http://thread.gmane.org/gmane.network.jabber.py-transports/2961/focus=2961 , but I'm 99.99% certain I have the most recent xmpp libraries: file: dpkg -l | grep xmpp ii python-xmpp 0.4-1 Python library for communication with XMPP ( This was built by me from the latest xmpppy CVS (I also tried with the .4 release tarball, same error message.) I also tried with stock irclib.py and irclib.py with the irclib.diff available in xmpppy CVS (it wasn't included with the tarball); that didn't make any difference either (and FYI the patch applies cleanly against irclib 0.4.6, but there are some offsets). Should pyIRCt work with python-irclib 0.4.6? Is there an older known-to-work version I should try instead? Here is my transport.ini , with password sanitization: [transport] Server = 127.0.0.1 Hostname = irc.opensysadmin.com Port = 5269 Secret = CENSORED ;ServerUser=username-for-jabberd2-connection ;UserFile = user.dbm ;LocalAddress = vanity.host.example.net ;Administrators = romeo at montague.net,juliet at capulet.com ;LogFile = ircerror.log ;FatalErrors = true Note that Port = 5269 is the default ejabberd server-to-server port. I also tried using the latest CVS irc.py, but get this when I try to run irc.py: $ ./irc.py Traceback (most recent call last): File "./irc.py", line 2210, in ? if not transport.xmpp_connect(): File "./irc.py", line 2129, in xmpp_connect connected = self.jabber.connect((config.mainServer,config.port)) File "/usr/lib/python2.4/site-packages/xmpp/client.py", line 272, in connect CommonClient.connect(self,server=server,proxy=proxy) File "/usr/lib/python2.4/site-packages/xmpp/client.py", line 179, in connect if not self.Process(1): return File "/usr/lib/python2.4/site-packages/xmpp/dispatcher.py", line 122, in Process self.Stream.Parse(data) xml.parsers.expat.ExpatError: unbound prefix: line 1, column 0 Any my config.xml file: <?xml version="1.0" ?> <pyirct> <!-- This file contains options to be configured by the server administrator. --> <!-- Please read through all the options in this file --> <!-- The JabberID of the transport --> <jid>irc.opensysadmin.com</jid> <!-- The public IP or DNS name of the machine the transport is running on --> <!-- This is used to select the outgoing IP address used to connect to IRC networks --> <!-- otherwise known as the vanity address, it's safe to leave it commented --> <!--<host>vanity.host.example.net</host>--> <!-- The name of the transport in the service discovery list. --> <!-- <discoName>IRC Transport</discoName> --> <!-- The location of the spool file.. if relative, relative to the PyIRCt dir. --> <!-- Include the jid of the transport, if running multiple copies of the same transport --> <spoolFile>ircuser.dbm</spoolFile> <!-- The location of the PID file, relative to the PyIRCt directory --> <!-- Comment out if you do not want a PID file --> <pid>PyIRCt.pid</pid> <!-- The IP address or DNS name of the main Jabber server --> <mainServer>127.0.0.1</mainServer> <!-- The JID of the main Jabber server --> <mainServerJID>jabber.opensysadmin.com</mainServerJID> <!-- The TCP port to connect to the Jabber server on (this is the default for ejabberd) --> <port>5269</port> <!-- The authentication token to use when connecting to the Jabber server --> <secret>CENSORED</secret> <!-- SASL username used to bind to Jabber server. --> <!-- secret, above, is used for sasl password --> <!--<saslUsername>username-for-jabberd2-connection</saslUsername>--> <!-- Allow users to register with this transport --> <allowRegister/> <!-- Send activity messages to users (for clients that don't support MUC) --> <activityMessages/> <!-- Use external component binding. --> <!-- This dodges the need to manually configure all jids that talk to this transport. --> <!-- Jabberd2 requires saslUsername and useRouteWrap for this to work. --> <!-- Wildfire as of 2.6.0 requires just this. --> <!--<useComponentBinding/>--> <!-- Wrap stanzas in <route> stanza. --> <!-- Jabberd2 requires this for useComponentBinding. --> <!--<useRouteWrap/>--> <!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that othe rs cannot --> <!--<admins> <jid>romeo at montague.net</jid> <jid>juliet at capulet.com</jid> </admins>--> <!-- The file to log to. Leave this disabled for stdout only --> <debugFile>ircerror.log</debugFile> <!-- Show the raw data being sent and received from the xmpp and irc servers --> <!--<dumpProtocol/>--> <!-- The default charset to use for the transport, if not supplied by the user when registering --> <!-- <charset>utf-8</charset> --> </pyirct> Thanks for any help, -- Daniel Clark # http://dclark.us # http://opensysadmin.com -- - Norman Rasmussen - Email: [EMAIL PROTECTED] - Home page: http://norman.rasmussen.co.za/ _______________________________________________ py-transports mailing list py-transports@blathersource.org http://lists.modevia.com/cgi-bin/mailman/listinfo/py-transports