powered by Jive Software

Management of IQ via a component plugin


First of all, it’‘s important to say that I’‘m really a newbie with the jabber protocol, so please don’‘t be shocked by my lack of comprehension of it. I have simple questions about the managing of packets via a component plugin, but I need first to explain what I’‘m trying to do. Like every component plugins, I use the processPacket function. My objective is to intercept specific customized IQ packets (set and get) to realize some actions based on them. I’‘m implementing a component interface instead of an IQHandler since I think that I will further need some of the possibilities offered by a component interface. Also, I have to say that on the other side, I’'m trying to modify a gaim client so it could send and receive customized IQ packets so it could interact with the component plugin on the server. Here are my questions:

  • I’‘m kind of ignorant about how namespace really works in jabber. I know that typical queries in IQ uses a child that looks like where the namespace is kind of standard. Since the IQ packets I send from the client are not standard (don’‘t do standard tasks), which kind of query declaration and namespace should I use in gaim? How can I create a new namespace that could be use easily with gaim and jive component? Is there a way to use a standard generic namespace with my customized IQ (so I don’'t have to create my own)? How does a jive component handle namespaces? Is there already a namespace associated with my component that I should use when creating my IQ in gaim?

  • I know that the component only receives packets which are sent to servicename.domainname. The question concerned the gaim client but you could probably help me. Should I use a new stream (with the appropriate subdomain.domain) which is only dedicated for interacting with my plugin? I ask that since gaim seems to use the same stream for all its interactions with the jabber server…

Thanks in advance, have a nice day


Since my understanding of jabber protocol is better, I ask a new simpler question here: