Yahoo Gateway Beta

There has been interest in a Yahoo! Gateway and this an implementation that is beta quality, but provides the ability to send/receive messages from jabber users to yahoo user.

To run[/b]:

look at config.properties.template and change the values accordingly. These need to match the values on your jabber server (or xmpp server of choice, I haven’‘t tested other server though). You’'ll also need to setup your external components to include the proper domain (yahoo) and the proper secret phrase (test). Make sure all the files are in the same directory

java -jar gateway.jar --config=config.properties --transports=transports.properties

/code

In your favorite IM Client[/b]:

Browse services.

Select yahoo -> register.

supply your username/password for your yahoo account

Note: You’‘ll have to explicitly add your contacts[/i]. I’'m working on a way to make this automatic.

I need your feedback on what’'s missing/wrong/broken and working and will be greatly appreciated.

Sincerely,

Noah

I have trouble to run your code. May be the whole package need be recompiled. But I didn’'t find your source code for the ExternalGateway.

Thanks

Exception in thread “main” java.lang.UnsupportedClassVersionError: org/jivesoftware/messenger/gateway/ExternalGateway (Unsupported major.minor version 49.0)

at java.lang.ClassLoader.defineClass0(Native Method)

at java.lang.ClassLoader.defineClass(ClassLoader.java:537)

at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)

at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)

at java.net.URLClassLoader.access$100(URLClassLoader.java:55)

at java.net.URLClassLoader$1.run(URLClassLoader.java:194)

at java.security.AccessController.doPrivileged(Native Method)

at java.net.URLClassLoader.findClass(URLClassLoader.java:187)

at java.lang.ClassLoader.loadClass(ClassLoader.java:289)

at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:2

Did you try running it with JDK 1.5.0? I didn’'t build it to support 1.4.0.

problem with yahoo transport beta

./java -jar /opt/jive_messenger/yahoo-transport/gateway.jar --co

nfig=config.properties --transports=transports.properties

Exception in thread “main” java.lang.ExceptionInInitializerError

Caused by: java.util.MissingResourceException: Can’'t find gateway_i18n bundle

at java.util.logging.Logger.setupResourceInfo(Unknown Source)

at java.util.logging.Logger.(Unknown S

ource)

Where do you live? It’‘s a silly question, but the only locale that I have resouces for is en. I’'ll create a base gatewayi18n resource bundel that is the same as the en locale.

Noah

Where do you live? It’'s a silly question, but the

only locale that I have resouces for is _en. I’'ll

create a base gateway_i18n resource bundel that is

the same as the en locale.

The trick we use is to store an _en bundle in SVN but then build a base bundle using Ant from the English bundle during build time. That makes it easier to keep stuff in sync.

-Matt

I live in Cuba, the language of serves is Spanish

excuse by my ingles,

Daniel

Ahh, that would do it. I’‘ll implements Matt’'s solution and create another gateway.jar.

If you want, you can pull out the gateway_i18n_en.properties from the jar, rename it gateway_i18n.properties and put it back into the jar. This would at least get you up and running (assuming the rest is bug free ;).

Thanks for your interest in the plugin. I’'ll work hard to get all the issues resolved.

Noah

the problem was solved, thank you very much

It does not give errors me, nevertheless does not work

Hmm,

Can you see the yahoo. in your services discovery? Can you register? Does it ask for permission to add you to the roster? Can you see it in the external components session list in the admin server?

What client are you using? I’'ve used JBother to test, I might have done something that only JBother can parse.

Noah

it already works to me but I do not obtain the list of contacts

Oh…

In that case, contacts are not automatically pushed to your roster (there’‘s some discussion in the dev forum regarding feasibility, plus, do a search for rosterx and you’'ll see more discussion on the issue.

In the mean time, you’'ll have to do it manually. Sorry :(. I struggled with making this work and delayed this plugin about 2 weeks, before I put that feature on the backburner and pushed to get a 1.0 beta release.

What client are you using, do they support rosterx (JEP-144)?

Noah

with Neons but it does not work, now I do it with exodus

any luck?

Hi,

I am trying to install your gatway.jar.

Could you explain in more details what should I put in config.properties and transport.properties files?

How should I install and activate your plugin in Jive? Should copying it to ‘‘plugins’’ folder be enough? Or is it a Jave plugin at all?

I have done following so far, java -jar was succesfull.

In config.properties I have specified IP address of my jabber server (192.168.10.3) and a jabber port which is 5222.

I have left transport.properties unchanged.

It does not seem to work for me. I cant see anything about yahoo browsing my ‘‘services’’ using my jabber client (Psi)

Thanks!

Precense in roster is god in any client, neos, exodus, psi, jbother.

Register acount is god in any client.

Get contact list automatic in any client not work.

when your add a contact manual obtain error from de yahoo gateway, sending constantly that the user is online.

no update the presence when another user of yahoo becomes disconnected.

in one of the tests lost my registry in jive messenger and I had to register to me again.

these are some of the errors that display the Gateway Yahoo Beta.

Daniel

I cant see any users in my roster. Even when I add the manually by using “Add Contact” thet do not apper in my roster.

Here is some java error I get when I am loggin in to jabber through gateway:

Sep 7, 2005 2:05:04 PM org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession updatePresence

INFO: Adding foreign contact: bedmondmark

Exception in thread “Thread-5” java.lang.ClassCastException: org.jivesoftware.messenger.gateway.roster.Status

at org.jivesoftware.messenger.gateway.roster.Roster.getForeignContact(Unknown Source)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession.updatePresence(U nknown Source)

at org.jivesoftware.messenger.transport.yahoo.YahooGatewaySession$1.run(Unknown Source)

jabber server should be: 192.168.10.3 and the port should be 10015. This goes in config.xml

You need to go to the Admin console and click on the external components tab. Make sure it’'s enabled and the security fields are all filled in.

For example, yahoo[/b], secret key mysecret[/b]. The password also needs to be set in transports.config.

Noah

Daniel, thank you for your test. Please create a new thread and post your stack traces there. I don’'t to many threads in this one thread.