Hi Sunhao,
there is a beginning of a piece of documentation about
participants/listeners at [1].
Concerning the jabber listener, it should understand YAML, XML and
JSON. The jabber participant itself tends to encode only in JSON [2].
So on your side (not the engine side), you should simply receive a
JSON encoded hash, modify the values in it, re-encode it as JSON and
send it back to the engine via the JabberListener.
I hope this will help. Best regards,
[1] http://openwferu.rubyforge.org/part.html
[2] http://github.com/jmettraux/ruote/blob/82cfc10fa6393c8c5c026552d6929ab0cbaa87d3/lib/openwfe/extras/participants/jabber_participants.rb#L129-136
--
John Mettraux - http://jmettraux.wordpress.com