Hey all,

What are the options here?

One potentially elegant solution would be (for XMPP-RPC):

C:
<iq type='get'
    from='[EMAIL PROTECTED]/jrpc-client'
    to='[EMAIL PROTECTED]/jrpc-server'
    id='disco1'>
  <query xmlns='http://jabber.org/protocol/disco#info'/>
</iq>

S:
<iq type='result'
    to='[EMAIL PROTECTED]/jrpc-client'
    from='[EMAIL PROTECTED]/jrpc-server'
    id='disco1'>
  <query xmlns='http://jabber.org/protocol/disco#info'>
    <identity category='automation' type='rpc'/>
    <feature var='jabber:iq:rpc'/>
    <identity category='automation' type='jabber:iq:rpc' />
    <feature var='http://www.mycompany.org/xml-rpc/example.ConvertCurrency.php' 
/>
    <!-- More Services -->
  </query>
</iq>

And for SOAP:

C:
<iq from='[EMAIL PROTECTED]/soap-server'
    to='[EMAIL PROTECTED]/soap-client'
    id='disco1'
    type='get'>
  <query xmlns='http://jabber.org/protocol/disco#info'>
  </query>
</iq>

S:
<iq from='[EMAIL PROTECTED]/soap-server'
    to='[EMAIL PROTECTED]/soap-client'
    id='disco1'
    type='result'>
  <query xmlns='http://jabber.org/protocol/disco#info'>
    <identity category='automation' type='soap'/>
    <feature var='http://jabber.org/protocol/soap'/>
    <identity category='automation' type='http://jabber.org/protocol/soap' />
    <feature var='http://www.myserver.org/soap/someservice' />
    <!-- More to follow -->
  </query>
</iq>

And for getting the wsdl:

C:
<iq from='[EMAIL PROTECTED]/soap-server'
    to='[EMAIL PROTECTED]/soap-client'
    id='soap1'
    type='get'>

<wsdl:definitions name='SomeService'
  targetNamespace='http://www.myserver.org/soap/someservice'
  xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/' />

</iq>

S:
<iq from='[EMAIL PROTECTED]/soap-client'
    to='[EMAIL PROTECTED]/soap-server'
    id='soap1'
    type='result'>

<wsdl:definitions name='SomeService'
  targetNamespace='http://www.myserver.org/soap/someservice'
  xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'>

  <!-- WSDL definitions -->

</wsdl:definitions>

</iq>

Yes/no/good/bad/ugly/scary?

I am implementing this stuff so I need some feedback before I make a home-grown 
protocol.

Jonathan

Reply via email to