Hi,
I'm setting up a fastpath service based on desktop clients (just Spark).
For testing purposes I'm using a setup built on the following:
- Server Name: im
- 2 Users: User_A_1, User_A_2 that belong to Group_A
- 2 Users: User_B_1, User_B_2 that belong to Group_B
- 2 Users: User_C_1, User_C_2 that belong to Group_C
Then, we have the fastpath workgroups setup as follows:
- WorkGroup_1 with Default_Queue -> Members Group_B
- WorkGroup_2 with Default_Queue -> Members Group_C
Now, the test cases:
CASE A:
- User_A_1 initiates a conversation with Workgroup_1@im:
* User_B_1or User_B_2 receive a notification (based on what the dispatcher decides) from FastPath and the conference gets created.
- User_B_* (Workgroup_1 member) want to transfer the conversation to WorkGroup_2, so the petition is sent, a notification window appears on the chosen WorkGroup_2 agent, the transfer is accepted, but the agent doesn't join, as the server returns an error.
From the Spark Debug interface on the WorkGroup_2 agent I see this:
sent by the agent:
<iq id="24Gl7-110" to="WorkGroup_2@workgroup.im" type="set"> <offer-accept xmlns="http://jabber.org/protocol/workgroup" id="kcm7ra38"/></iq>
server response:
<iq id="24Gl7-110" to="User_C_1@im/spark" from="WorkGroup_2@workgroup.im" type="error"> <error code="404" type="CANCEL"> <item-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/> </error></iq>
and in the Debug server logs I get this:
2011.05.13 10:38:42 Request not found by ID: kcm7ra38 2011.05.13 10:38:42 Request not found while accepting offer: org.jivesoftware.util.NotFoundException at org.jivesoftware.xmpp.workgroup.request.Request.getRequest(Request.java:99) at org.jivesoftware.xmpp.workgroup.WorkgroupIQHandler.handleIQSet(WorkgroupIQHandler.java:188) at org.jivesoftware.xmpp.workgroup.WorkgroupIQHandler.process(WorkgroupIQHandler.java:90) at org.jivesoftware.xmpp.workgroup.Workgroup.process(Workgroup.java:459) at org.jivesoftware.xmpp.workgroup.Workgroup.process(Workgroup.java:482) at org.jivesoftware.xmpp.workgroup.WorkgroupManager.processPacket(WorkgroupManager.java:684) at org.jivesoftware.openfire.component.InternalComponentManager$RoutableComponents.process(InternalComponentManager.java:587) at org.jivesoftware.openfire.spi.RoutingTableImpl.routeToComponent(RoutingTableImpl.java:352) at org.jivesoftware.openfire.spi.RoutingTableImpl.routePacket(RoutingTableImpl.java:237) at org.jivesoftware.openfire.IQRouter.handle(IQRouter.java:324) at org.jivesoftware.openfire.IQRouter.route(IQRouter.java:121) at org.jivesoftware.openfire.spi.PacketRouterImpl.route(PacketRouterImpl.java:76) at org.jivesoftware.openfire.net.StanzaHandler.processIQ(StanzaHandler.java:337) at org.jivesoftware.openfire.net.ClientStanzaHandler.processIQ(ClientStanzaHandler.java:93) at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:302) at org.jivesoftware.openfire.net.StanzaHandler.process(StanzaHandler.java:194) at org.jivesoftware.openfire.nio.ConnectionHandler.messageReceived(ConnectionHandler.java:169) at org.apache.mina.common.support.AbstractIoFilterChain$TailFilter.messageReceived(AbstractIoFilterChain.java:570) at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299) at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53) at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648) at org.apache.mina.common.IoFilterAdapter.messageReceived(IoFilterAdapter.java:80) at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299) at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53) at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648) at org.apache.mina.filter.codec.support.SimpleProtocolDecoderOutput.flush(SimpleProtocolDecoderOutput.java:58) at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:185) at org.apache.mina.common.support.AbstractIoFilterChain.callNextMessageReceived(AbstractIoFilterChain.java:299) at org.apache.mina.common.support.AbstractIoFilterChain.access$1100(AbstractIoFilterChain.java:53) at org.apache.mina.common.support.AbstractIoFilterChain$EntryImpl$1.messageReceived(AbstractIoFilterChain.java:648) at org.apache.mina.filter.executor.ExecutorFilter.processEvent(ExecutorFilter.java:239) at org.apache.mina.filter.executor.ExecutorFilter$ProcessEventsRunnable.run(ExecutorFilter.java:283) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:51) at java.lang.Thread.run(Thread.java:662)
Any ideas on what's happening?
This thing is driving me crazy. It's been almost a week trying to get it working and it's a no go...