views:

279

answers:

2

I have made a simple IM client in both Python and C#, using a few different XMPP libraries for each.

They work very well as simple autoresponders, or trivial bots, but when I turn them into chat rooms (ie, a message gets reflected to many other JIDs), I suddenly start getting 503 service-unavailable responses from the Google talk server.

Where should I start looking to resolve this issue? Given that I have used several languages and libraries, I don't think this is a problem with my particular setup. I am using the various examples provided with the libraries.

+1  A: 

Do you have all people you try to send messages to in your rooster? Otherwise GTalk won't allow the message to be sent and instead return Error 503.

There was a pidgin bug tracker describing a similar problem: Pidgin #4236

If you're sure you have all the JIDs in your rooster you should also check how manny messages are send in parallel. Google will limit the count of messages a single JID is allowed to send in a specified period of time.

Shirkrin
+1  A: 

If you're looking to create actual chat rooms, why not rather get a jabber server to host those (following http://xmpp.org/extensions/xep-0045.html - ejabberd has these as default and there are plugins for most jabber servers to implement them), and then have your bot join that room (most clients support this - Google Talk doesn't unfortunately)?

David Fraser