powered by Jive Software

Building out XEP-136 messaging archiving support

I’m a developer for Yaxim, an Android XMPP client which uses the Smack library for XMPP transport. I’m trying implement the replication component of XEP-136 in the Yaxim client, but it seems that I can’t use Smack for sending raw XML to an XMPP server to query for collections, etc. I registered with your JIRA instance for Smack development but didn’t see any tickets related to this kind of work.

I’d like to contribute to Smack the bits needed to support this. What is the best way for me to contribute to the library? I’m happy to do the development, testing, etc on my own since I’m sure that the Smack developers are plenty busy doing their own work.

-Taylor

Not sure what you mean by not being able to send raw XML. Smack is an abstraction layer so users deal with objects instead of raw xml, but these objects (typically PacketExtensions) still write the raw XML in the end.

If you would like to contribute an implementation of part of that spec, then simply code against the latest version of trunk and attach you code to your message here as a patch file when you are done. That patch will then get attached to a Jira task and reviewed and applied.

If you make regular contributions in this way, you will eventually get granted commit priviliges.

If you wan’t to send an Stanza like the one from Example 56 in XEP-136 you would want to extend the IQ packet class (org.jivesoftware.smack.packet.IQ) and add the needed attributes, plus implementing the toXML() method.

Flow

Thanks for the advise! I’ll write something up and contribute it here.