Yahoo Gateway Release Candidate 1

For those that are looking for a Yahoo! Gateway, here is a release candidate.

This contains a few bug fixes and support for adding and removing contacts through the gateway.

Please let me know if there are any bugs that you find.

Noah

And of course the jar file

Is necesary the loopback Gateway? for wath?

When conect to yahoo, the user list no add automatic, with Neos client show in services, yahoo gateway, in other clients not.

every one min show message notify New Mail Received (0).

Cuando conectas a yahoo, los usuarios no se agregan automaticos, con el Cliente Neos los usuarios de yahoo se muestran en los servicios por debajo de Yahoo Gateway de manera que es imposible agregarlos a la lista de contactos

id@yahoo.im.host.com(Gateway:yahoo, Conected: true)@yahoo.im.host.com(fuera de Linea)

Cada un minuto muestra un mensaje de notificación de yahoo de cuantos correos tienes en el buzón, algo que puede ser molesto.

si cierras sesion, despues no se inicia nuevamente cuando te conectas al server o simplemente desde icono de gateway de la lista de contactos.

Espero sirva de algo, otras pruebas que les haga falta la realizo sin problemas.

Disculpen mi Ingles ya que es muy pobre.

Daniel

No, the loopback gateway is not required. I’'ll probably need Gato to translate the rest…sorry

Noah

Hay que revisar bien el manejo de los contactos con el gateway ya que si agregas un usuario manual puede que te trabaje bien o no, yo agregue un contacto desde jabber y ese otro usuario estaba por jabber usando el gateway al igual que yo y nunca le llego el permiso de aceptar o no el usuario en su lista, claro esta que son metodos diferentes entre jabber y yahoo pero debe haber alguna uniformidad con el gateway y eso no esta funcionando, ademas de que no llega el permiso tampoco llega lo que le escribo o el a mi me escribe dando estos errores

java.lang.IllegalStateException: Not logged in

at ymsg.network.Session.checkStatus(Session.java:1999)

at ymsg.network.Session.sendMessage(Session.java:178)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession.sendPa

cket(Unknown Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.whack.ExternalComponent$1.run(ExternalComponent.java

:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source

)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Exception in thread “pool-1-thread-4” java.lang.RuntimeException: java.lang.Ille

galStateException: Not logged in

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.whack.ExternalComponent$1.run(ExternalComponent.java

:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source

)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Caused by: java.lang.IllegalStateException: Not logged in

at ymsg.network.Session.checkStatus(Session.java:1999)

at ymsg.network.Session.sendMessage(Session.java:178)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession.sendPa

cket(Unknown Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

… 5 more

no problem, sorry my for my English

the user no add to contact list automatic.

the user show in services yahoo gateway in this form : id@yahoo.host.com(Gateway: Yahoo, Conected: true)@yahoo.im.host.com

tha imposibility add in contact list.

when disconect of jabber an conect dont conect yahoogateway a yahoo

when logoff in yahoo gateway, no login after in yahoo.

gateway send notifiy of messages in mail yahoo every one minute.

when 2 users conect to yahoo use a jabber client, and one add to other, no send notify to oher user and no send messages to user:

java.lang.IllegalStateException: Not logged in

at ymsg.network.Session.checkStatus(Session.java:1999)

at ymsg.network.Session.sendMessage(Session.java:178)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession.sendPa

cket(Unknown Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.whack.ExternalComponent$1.run(ExternalComponent.java

:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source

)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Exception in thread “pool-1-thread-4” java.lang.RuntimeException: java.lang.Ille

galStateException: Not logged in

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

at org.jivesoftware.whack.ExternalComponent$1.run(ExternalComponent.java

:260)

at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source

)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Caused by: java.lang.IllegalStateException: Not logged in

at ymsg.network.Session.checkStatus(Session.java:1999)

at ymsg.network.Session.sendMessage(Session.java:178)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession.sendPa

cket(Unknown Source)

at org.jivesoftware.messenger.gateway.BaseGateway.processPacket(Unknown

Source)

… 5 more

I’‘m running 2.2.2 on a RedHat box. I’'ve downloaded the jar and placed it in my plugin directory. Where as the search plugin worked fine, this one does not show up in my admin window.

I’'ve extracted the jar manually into a directory named gateway, still no luck.

Suggestions? I’'ve kind of new to Jive, sorry if this is id10t issue.

Okay, it was an id10t issue

I’'ve now read the other thread … and all is well … so far

Thanks

Please share what was missing that required you to read the other thread. It’'ll help me put a knowledge base article together for future users.

Noah

Noah,

I can startup the gateway successfully. However, sometimes I get the following error set:

Internal server error

java.lang.NullPointerException

at org.jivesoftware.messenger.spi.RoutingTableImpl.getRoute(RoutingTableImpl.java: 84)

at org.jivesoftware.messenger.handler.PresenceSubscribeHandler.process(PresenceSub scribeHandler.java:137)

at org.jivesoftware.messenger.PresenceRouter.handle(PresenceRouter.java:103)

at org.jivesoftware.messenger.PresenceRouter.route(PresenceRouter.java:60)

at org.jivesoftware.messenger.PacketRouter.route(PacketRouter.java:73)

at org.jivesoftware.messenger.net.SocketReader.processPresence(SocketReader.java:3 01)

at org.jivesoftware.messenger.net.SocketReader.readStream(SocketReader.java:208)

at org.jivesoftware.messenger.net.SocketReader.run(SocketReader.java:111)

at java.lang.Thread.run(Thread.java:595)

This only happens when I’‘m running the gateway. Another issue is I’'m not sure how to add Yahoo members since they are not pulled back auto-magically. my guess was to add a user as:

user@yahoo.mydomain.com

is this correct, or is it more like hotmail. What is the best way to determine if this is working?

I am a java coder and would be happy to help out if I can. Please let me know if you have some time and would like a hand with some of this.

Thanks,

Ira

Hi Ira,

I have not seen the NPE before. Thanks for spotting that. I’'ve created a bug report TRANS-7 so any other information you can find, please post it there.

Currently the gateway does not have support for automatic group pull. The JEP-100 was modified to say that it shouldn’'t try an automatic group population unless the client supports JEP-144. Not a lot of clients support this yet, so you have to do it the old fashion way, i.e. user@yahoo.yourdomain.tld.

I could really use the help with Gateway. I don’‘t have a good test environment to test with. I don’‘t have a messenger server with any users on it so I can’‘t look at it beyond one user using it. There are a couple things you can do. Go to SVN (you can view the source url http://www.jivesoftware.org/fisheye/viewrep/svn-org/transports/trunkhere[/url] and grab the source. I’‘ve built it with eclipse, but the ant script will do a full build as well. Look at http://www.jivesoftware.org/issues/browse/TRANS for all outstanding issues. If you have some patches, please send them to me and I’'ll integrate them. If you want to commit them to svn, then you need to fill out the developer agreement and fax it to Jive and we can start from there. Like I said before, I could really use the help to make it to 1.0.

Noah

Hi Noah,

I can also get the gateway running, but I get some weird errors.

ymsg.network.YMSG9BadFormatException: Bad parse of online friends in logon packe

t

at ymsg.network.Session.receiveLogon(Session.java:1809)

at ymsg.network.Session$InputThread.process(Session.java:2313)

at ymsg.network.Session$InputThread.run(Session.java:2259)

Caused by: java.lang.NullPointerException

at java.util.Hashtable.get(Unknown Source)

at ymsg.network.UserStore.get(UserStore.java:24)

at ymsg.network.Session.updateFriendsStatus(Session.java:2117)

at ymsg.network.Session.receiveLogon(Session.java:1808)

… 2 more

Oct 6, 2005 10:49:32 AM org.jivesoftware.messenger.gateway.NoopSessionListener i

nputExceptionThrown

SEVERE: Exception: message=“Source: InputThread” type=ymsg.network.YMSG9BadForma

tException: Bad parse of online friends in logon packet

and after the while the gateway just seems to freeze, i have to kill the process and restart it.

I’'m running it under Win2003.

Graham

That bad format exception is due to the ymsg9 library being a reverse engineering effort, so not all packets are understood. The error message is definitly not friendly and should be displayed as a warning.

Crawls to a stop eh? Interesting…how many users are on it or how long does it take to before it stops working?

Noah

Noah,

Just one at the moment. i’'ll keep an eye on it and get you some more specific times, but it seems to last a couple of hours.

Graham

Noah,

Actually just noticed that if I right click the transport in Psi and say logoff, I get the


Oct 6, 2005 11:10:18 AM org.jivesoftware.messenger.transport.yahoo.YahooGatewayS

ession logout

INFO: user logged out.


but then if i try to logon again nothing appears in the log, and the gateway is now frozen until I restart the process.

Graham

Noah,

Have I mentioned that I am running Jive Messenger 2.2.0 on Gentoo. I know that there is a 2.2.2 release and there may have been some bug fixes for this.

Also, I have a server up and running…in use with msn and could probably provide either a second instance of a jive server or provide access to my server with the disclaimer that i’'d like to maintain the uptime of my server.

-Ira

Noah,

I have installed the gateway on SUSE 9.3 running JM 2.2.2 all seems to be working at this point.

I have a server environment that has a few users that run Pandion. this gateway i’'m sure they will use and i will send you reports if you like

Auto contact population is not required for the JEP-0100 spec…however, I do plan to include this functionality at a later date.

Glad to hear it working for you

Noah

Noah,

Any ideas why my gateway requires a restart everytime I log on/off of the jabber server?

Thanks

Graham

I think that it’‘s because the connection to yahoo isn’'t dropped in a timely matter. I created TRANS-8 in jira.

Noah