[wsf-c-dev] XMPP server side transport
Samisa Abeysinghe
samisa at wso2.com
Wed Apr 4 20:57:03 PDT 2007
I was Googling a bit to understand and figure out how to support XMPP
server side transport.
Here are some thoughts.
First, I was initially under the impression that with XMPP server side
transport, a service would be a 'chat room'. However I have to change my
mind, because in the context of Axis2 architecture, a service is an
implementation of some processing with XML as input and XML as output in
AXIOM format. Hence with an XMPP server, we have to have a mechanism to
'dispatch' an incoming request to a service that implements the
svc_skeleton API. Hence the key problem that we have to solve is:
How can we dispatch (that is identify the service and operation)
an incoming request to our service? I hope we can use the same
dispatching mechanisms that we have in the Axis2 engine; however we have
to figure out how to interface that with the XMPP server API
Jabber has a concept of "components". Some Jabber components can be
found in [1] and [2]
[3] defines protocol for external components. In my understanding, what
we need is an internal component. [3] mentions internal components, but
there does not seem to be a formal spec on that. Basically we have to
use the internal API of the server we are going to use. I also found JCR
[4]. " The Jabber Component Runtime *JCR* is the first attempt at making
"C" language components built for the *jabberd 1.4* code base able to
run as standalone processes". Standalone process sounds appealing as
that would solve our dispatching problems - we could run simple axis
server and interface it to XMPP server. We may have to do a POC and see
if we can use JCR with Axis2/C.
Obviously this area needs some research work - so we need someone to
play around with these libs.
Thanks,
Samisa...
[1] http://www.jabberstudio.org/project/?cat=6
[2] http://www.jabber.org/software/components.shtml
[3] http://www.xmpp.org/extensions/xep-0114.html
[4] http://jabber.terrapin.com/JCR/
More information about the Wsf-c-dev
mailing list