XMPP Custom Packets

Hello there!

We use .NET to build a custom application that allows us to do more than just basic chat (XHTML chat, ticketing, etc). So, we use, naturally, custom stanzas to pass adimistrative information along to all clients. For example:

  • Checking Idle Time:
Received Message: <message xmlns="jabber:client" to="pXXXXXXX@SERVER/RESOURCE" type="groupchat" from="ROOM@CONF_SERVER.SERVER/Phillip XXXXXXX">
<chkidle xmlns="RESOURCE:chkidle"><whoSent>
Phillip XXXXXXX</whoSent><whoQuery>
Phillip XXXXXXX</whoQuery></chkidle></message>
Received Message: <message xmlns="jabber:client" to="pXXXXXXX@SERVER/RESOURCE" type="groupchat" from="ROOM@CONF_SERVER.SERVER/Phillip XXXXXXX">
<respondidle xmlns="RESOURCE:respondidle">
<whoSent>Phillip XXXXXXX</whoSent><whoQuery>
Phillip XXXXXXX</whoQuery><idleTime>30 seconds.
</idleTime></respondidle></message>
  • Sending an Emotion:
Received Message: <message xmlns="jabber:client" to="pXXXXXXX@SERVER/RESOURCE" type="groupchat" from="ROOM@CONF_SERVER.SERVER/Phillip XXXXXXX">
<emote xmlns="RESOURCE:emote"><whoSent>Phillip XXXXXXX
</whoSent><emotion>laughs</emotion></emote></message>

As you can see, these have custom tags in them, that allow our clients to respond to, and complete commands. We have extended this into creating tickets as well, so that we can track ticket status, etc, w/o using a database reliance. However, we notice that in MUC Message History, the custom packets are not saved.

I wonder if this is because the tag within the element is blank. Is there a way to configure OpenFire to save EVERY message stanza, even if the is blank, so that we can retreive our custom packets?

Or do i just need to put a dumyy element in the section, like to force it to save that message?

------[ ASSUMED RESOLVED ]------

Unfortunately, i’m marking this as Assumed resolved, as no replies came across it. However, by adding just a simple tag to the msg.Body element, the MUC Discussion history stores the custom tags. I’m not a fan of that, and think it’s a rather improper way of handling those, but i can deal with it for now.