Mercurial > prosody-modules
view mod_json_streams/README.markdown @ 4942:e7b9bc629ecc
mod_rest: Add special handling to catch MAM results from remote hosts
Makes MAM queries to remote hosts works.
As the comment says, MAM results from users' local archives or local
MUCs are returned via origin.send() which is provided in the event and
thus already worked. Results from remote hosts go via normal stanza
routing and events, which need this extra handling to catch.
This pattern of iq-set, message+, iq-result is generally limited to MAM.
Closest similar thing might be MUC join, but to really handle that you
would need the webhook callback mechanism.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Mon, 16 May 2022 19:47:09 +0200 |
parents | 4d73a1a6ba68 |
children |
line wrap: on
line source
--- labels: - 'Stage-Beta' summary: JSON Encodings for XMPP ... Introduction ============ This plugin encodes XMPP as JSON. This is an implementation of [XEP-0295: JSON Encodings for XMPP](http://xmpp.org/extensions/xep-0295.html). Simply loading this module makes Prosody accept JSON on C2S streams (legacy XML clients are still supported). For BOSH, it requires mod\_bosh be loaded, and JSON should be directed at the `/jsonstreams` HTTP path. JSON for S2S isn't supported due to the lack of a discovery mechanism, so we have left that disabled to stay compatible with legacy XML servers. Configuration ============= Just add `"json_streams"` in your config's global `modules_enabled` list, for example: modules_enabled = { ... "json_streams"; } Strophe.js plugin ================= We also developed a [JSON streams plugin](http://prosody-modules.googlecode.com/hg/mod_json_streams/strophe.jsonstreams.js) for the popular [strophe.js](http://code.stanziq.com/strophe) library. Just include it like this after including the strophe library, and your strophe-based client will be speaking JSON: <script type="text/javascript" src="strophe.jsonstreams.js"></script> Be sure to set the HTTP path to `/jsonstreams`. No other changes are required. Compatibility ============= ------- ------- 0.8 Works trunk Works ------- ------- Quirks ====== - This plugin does not currently work with Prosody's [port multiplexing](http://prosody.im/doc/port_multiplexing) feature