Software /
code /
prosody
Comparison
plugins/mod_pubsub/mod_pubsub.lua @ 8334:036e46d12b78
mod_pubsub: Move dispatch function into pubsub.lib
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Wed, 18 Oct 2017 07:46:44 +0200 |
parent | 8328:29ef191c7bf9 |
child | 8337:dc4ea43ac463 |
comparison
equal
deleted
inserted
replaced
8333:2abbb01cd756 | 8334:036e46d12b78 |
---|---|
22 module:depends("disco"); | 22 module:depends("disco"); |
23 module:add_identity("pubsub", "service", pubsub_disco_name); | 23 module:add_identity("pubsub", "service", pubsub_disco_name); |
24 module:add_feature("http://jabber.org/protocol/pubsub"); | 24 module:add_feature("http://jabber.org/protocol/pubsub"); |
25 | 25 |
26 function handle_pubsub_iq(event) | 26 function handle_pubsub_iq(event) |
27 local origin, stanza = event.origin, event.stanza; | 27 return lib_pubsub.handle_pubsub_iq(event, service); |
28 local pubsub_tag = stanza.tags[1]; | |
29 local action = pubsub_tag.tags[1]; | |
30 if not action then | |
31 origin.send(st.error_reply(stanza, "cancel", "bad-request")); | |
32 return true; | |
33 end | |
34 local handler = handlers[stanza.attr.type.."_"..action.name]; | |
35 if handler then | |
36 handler(origin, stanza, action, service); | |
37 return true; | |
38 end | |
39 end | 28 end |
40 | 29 |
41 local function simple_itemstore(config, node) | 30 local function simple_itemstore(config, node) |
42 local archive = module:open_store("pubsub_"..node, "archive"); | 31 local archive = module:open_store("pubsub_"..node, "archive"); |
43 return lib_pubsub.archive_itemstore(archive, config, nil, node); | 32 return lib_pubsub.archive_itemstore(archive, config, nil, node); |