Yahoo transport not working correctly!

Ok here’s my problem.

Yahoo transport 1. does not show correct presence info. When a yahoo users (not currently a contact) starts a conversation with spark user the yahoo user is shown to be offline 2. When adding a new yahoo contact in spark the contact stays at pending status. When shutting down and re-launching the new contact is no long in the roster.

I’ve tested this on both 1.1.2 and 1.1.3a and get the same problem. Server is centos 5, OpenFire Enterprise 3.3.3, spark 2.5.7

Here’s the logs…

2007.10.16 11:01:21 yahoo: Sending packet: <iq type=“result” id=“16tc4-114” from=“yahoo.n-node.netto="ruarch@n-node.net/n-Node"><query xmlns=“http://jabber.org/protocol/disco#info”><identity category=“gateway” type=“yahoo” name=“Yahoo! Transport”/><feature var=“http://jabber.org/protocol/disco#info”/><feature var=“http://jabber.org/protocol/disco#items”/><feature var=“jabber:iq:gateway”/><feature var=“jabber:iq:register”/><feature var=“jabber:iq:version”/><feature var=“jabber:iq:registered”/></query></iq>

2007.10.16 11:01:26 Received iq packet: <iq id=“16tc4-115” to=“yahoo.n-node.net” type=“set” from="ruarch@n-node.net/n-Node"><query xmlns=“jabber:iq:gateway”><prompt>ynnode@yahoo.n-node.net</prompt></query></iq>

2007.10.16 11:01:26 yahoo: Sending packet: <iq type=“result” id=“16tc4-115” from=“yahoo.n-node.netto="ruarch@n-node.net/n-Node"><query xmlns=“jabber:iq:gateway”><prompt>ynnode%yahoo.n-node.net@yahoo.n-node.net</prompt><jid>ynnode%yahoo.n-node.net@yahoo.n-node.net</jid></query></iq>

2007.10.16 11:01:26 yahoo: contactAdded ruarch:ynnode%yahoo.n-node.net@yahoo.n-node.net

2007.10.16 11:01:26 Updating status for

2007.10.16 11:01:26 (YAHOO) Storing new buddy:

2007.10.16 11:01:26 yahoo: contactUpdated ruarch:ynnode%yahoo.n-node.net@yahoo.n-node.net

2007.10.16 11:01:26 Received presence packet: <presence id=“16tc4-117” to=“ynnode%yahoo.n-node.net@yahoo.n-node.net” type=“subscribe” from="ruarch@n-node.net"><x xmlns=“vcard-temp:x:update”><photo>362a89cfb713acb19832f339ffeac4992b5 d4a76</photo></x><x xmlns=“jabber:x:avatar”><hash>362a89cfb713acb19832f339ffeac4992b5d4a76 </hash></x></presence>

2007.10.16 11:01:34 session 2 timeout

2007.10.16 11:01:34 session 2 sent message PNG

2007.10.16 10:59:24 org.jivesoftware.openfire.container.PluginManager.unloadPlugin(PluginManager.jav a:525)

java.lang.NullPointerException

at org.jivesoftware.phone.PhonePlugin.destroy(PhonePlugin.java:147)

at org.jivesoftware.phone.PhonePlugin.destroyPlugin(PhonePlugin.java:131)

at org.jivesoftware.openfire.container.PluginManager.unloadPlugin(PluginManager.ja va:522)

at org.jivesoftware.openfire.admin.plugin_002dadmin_jsp._jspService(plugin_002dadm in_jsp.java:115)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1074)

at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)

at org.mortbay.jetty.Server.handle(Server.java:285)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:751)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

Ruarch wrote:

Ok here’s my problem.

Yahoo transport 1. does not show correct presence info. When a yahoo users (not currently a contact) starts a conversation with spark user the yahoo user is shown to be offline

Hrm. I may be mistaken, but I’m not sure how possible it is to get that status. In some of the other transports, you can’t get presence of people who aren’t on your list. Generally there’s no good way to “keep track” of someone who’s not on your contact list anyway. Even if I ‘pretended’ they were online, their status would never ever change because there would be no notifications coming from Yahoo to tell me anythinig has changed.

  1. When adding a new yahoo contact in spark the contact stays at pending status. When shutting down and re-launching the new contact is no long in the roster.

GATE-364 Despite my tests “seeming” to go ok, the new structure just doesn’t seem to be working well. =(

I’ve tested this on both 1.1.2 and 1.1.3a and get the same problem. Server is centos 5, OpenFire Enterprise 3.3.3, spark 2.5.7

Here’s the logs…

The second set of logs down there, btw, is for the “Phone Plugin” which is not related. I’m a little surprised to hear that 1.1.2 is having the same problem. Guess I didn’t do any worse with my new structure, it just didn’t go “well”. Hrm. There’s a couple of reports that adds aren’t “really” working at all. Just appear to. So definitely a lot of testing to do there.

Daniel

2007.10.16 11:01:21 yahoo: Sending packet: <iq type=“result” id=“16tc4-114” from=“yahoo.n-node.netto="ruarch@n-node.net/n-Node"><query xmlns=“http://jabber.org/protocol/disco#info”><identity category=“gateway” type=“yahoo” name=“Yahoo! Transport”/><feature var=“http://jabber.org/protocol/disco#info”/><feature var=“http://jabber.org/protocol/disco#items”/><feature var=“jabber:iq:gateway”/><feature var=“jabber:iq:register”/><feature var=“jabber:iq:version”/><feature var=“jabber:iq:registered”/></query></iq>

2007.10.16 11:01:26 Received iq packet: <iq id=“16tc4-115” to=“yahoo.n-node.net” type=“set” from="ruarch@n-node.net/n-Node"><query xmlns=“jabber:iq:gateway”><prompt>ynnode@yahoo.n-node.net</prompt></query></iq>

2007.10.16 11:01:26 yahoo: Sending packet: <iq type=“result” id=“16tc4-115” from=“yahoo.n-node.netto="ruarch@n-node.net/n-Node"><query xmlns=“jabber:iq:gateway”><prompt>ynnode%yahoo.n-node.net@yahoo.n-node.net</prompt><jid>ynnode%yahoo.n-node.net@yahoo.n-node.net</jid></query></iq>

2007.10.16 11:01:26 yahoo: contactAdded ruarch:ynnode%yahoo.n-node.net@yahoo.n-node.net

2007.10.16 11:01:26 Updating status for

2007.10.16 11:01:26 (YAHOO) Storing new buddy:

2007.10.16 11:01:26 yahoo: contactUpdated ruarch:ynnode%yahoo.n-node.net@yahoo.n-node.net

2007.10.16 11:01:26 Received presence packet: <presence id=“16tc4-117” to=“ynnode%yahoo.n-node.net@yahoo.n-node.net” type=“subscribe” from="ruarch@n-node.net"><x xmlns=“vcard-temp:x:update”><photo>362a89cfb713acb19832f339ffeac4992b5 d4a76</photo></x><x xmlns=“jabber:x:avatar”><hash>362a89cfb713acb19832f339ffeac4992b5d4a76 </hash></x></presence>

2007.10.16 11:01:34 session 2 timeout

2007.10.16 11:01:34 session 2 sent message PNG

2007.10.16 10:59:24 org.jivesoftware.openfire.container.PluginManager.unloadPlugin(PluginManager.jav a:525)

java.lang.NullPointerException

at org.jivesoftware.phone.PhonePlugin.destroy(PhonePlugin.java:147)

at org.jivesoftware.phone.PhonePlugin.destroyPlugin(PhonePlugin.java:131)

at org.jivesoftware.openfire.container.PluginManager.unloadPlugin(PluginManager.ja va:522)

at org.jivesoftware.openfire.admin.plugin_002dadmin_jsp._jspService(plugin_002dadm in_jsp.java:115)

at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1074)

at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:11 8)

at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:65)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingF ilter.java:41)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:69)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:98)

at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.ja va:1065)

at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:365)

at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)

at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)

at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)

at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)

at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollect ion.java:146)

at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)

at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)

at org.mortbay.jetty.Server.handle(Server.java:285)

at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)

at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.j ava:751)

at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)

at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)

at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)

at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:329)

at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:475)

Also, when i try to send a file to the user whom is “pending” i get the following message…

The user is offline. Will auto-send “ambassador_64.jpg” when user comes back online

Send a file? that’s not even supported! =D I don’t even announce that I support file transfer yet! … but are you reading this on the yahoo end or the xmpp end?

I am having a similar problem, but seems to be across all transports. I just installed Openfire, along with the 1.1.3a plugin, and it seems like the add contact functionality across the transports we use (AIM, Yahoo, MSN) don’t work.

For my test case, I use Spark clients on both ends.

That should be fixed in 1.1.4 and 1.2.0! (adding contacts)