I have a question of Jabber programming style. The Jabber-based project I'm currently working on (http://volity.org) defines a handful of different Jabber-RPC requests that its clients and servers (all of whom are simply users, from Jabber's POV) can pass around, forming a higher-level protocol that rides atop Jabber/XMPP.

However, since learning more about the core Jabber protocol (I admit that I started by learning the current MUC and disco JEPs in detail, and then worked my way inwards thereafter), I'm starting to wonder if some or perhaps all of these RPC requests should instead happen through the standard iq/query elements, using namespaces unique to our project. Many of these project-specific functions are literally information queries, while others request that the receiving entity attempt to perform some action on its end. My gut reaction would be to assign the latter sorts of activities to RPC, but I do notice that Jabber has things like in-band registration happen through iq elements as well.

So I could do continue doing everything specific to our project via RPC, and everything would more or less work fine, but I have to wonder if it's "more correct" and perhaps even practically better to use query elements with proper namespaces when possible (in which case I may end up dropping RPC altogether). Is there a general style guideline for when an application using Jabber/XMPP as its transport should favor Jabber-RPC over <iq><query xmlns="http://my.namespace.com/foo"/></iq> elements, or vice-versa?

--
  Jason McIntosh             [EMAIL PROTECTED]
Somerville, MA, USA       http://www.jmac.org

_______________________________________________
jdev mailing list
[EMAIL PROTECTED]
https://jabberstudio.org/mailman/listinfo/jdev

Reply via email to