Mercurial > psgxs
view modules/mod_adhoc.js @ 30:b2faacfefb90
Rewrite of the module manager; fix of some modules; fix of the directory backend.
author | Emmanuel Gil Peyrot <linkmauve@linkmauve.fr> |
---|---|
date | Thu, 04 Nov 2010 17:50:52 +0100 |
parents | b80ab94da447 |
children | 6697f394301f |
line wrap: on
line source
var config = require('../configuration'); var storage = require('../storage'); var forms = require('../forms'); var errors = require('../errors'); var makeError = errors.makeError; var toBareJID = require('../util').toBareJID; var NS = require('../namespaces'); // XEP-0050: Ad-Hoc Commands exports.adHoc = { type: 'set', child: 'command', ns: NS.COMMANDS, func: function(response, stanza, request, to) { var action = request.getAttribute('action'); if (action != 'execute') return makeError(response, errors.bad_request.n); var node = request.getAttribute('node'); if (node == 'ping') { var cmd = xmpp.stanza('command', {xmlns: NS.COMMANDS, // sessionid: 'list:20020923T213616Z-700', node: node, 'status': 'completed'}) .c('note', {type: 'info'}).t('pong'); response.cnode(cmd); } else if (node == 'reload') { storage.load(); response.c('command', {xmlns: NS.COMMANDS, node: node, 'status': 'completed'}) .c('note', {type: 'info'}).t('The server has correctly reloaded.'); } else return makeError(response, errors.bad_request.n); return response; } }