Mercurial > prosody-modules
view mod_carbons_adhoc/mod_carbons_adhoc.lua @ 4709:679f1834dbdb
mod_delegation: update to XEP-0355 v0.5
- namespace bump to "urn:xmpp:delegation:2"
- disco remaining infos now uses the XEP defined "urn:xmpp:delegation:2:bare:disco#info:*"
namespace
- complemeted disco remaining infos implementation for requests made on nodes not already
managed by the server
- bare JID disco items now uses the XEP defined
"urn:xmpp:delegation:2:bare:disco#items:*'" namespace
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 15 Oct 2021 15:10:36 +0200 |
parents | a6c51f380777 |
children |
line wrap: on
line source
-- Implement a Adhoc command which will show a user -- the status of carbons generation in regard to his clients -- -- Copyright (C) 2012 Michael Holzt -- -- This file is MIT/X11 licensed. local st = require "util.stanza"; local jid_bare = require "util.jid".bare; local adhoc_new = module:require "adhoc".new; local xmlns_carbons_v2 = "urn:xmpp:carbons:2"; local xmlns_carbons_v1 = "urn:xmpp:carbons:1"; local xmlns_carbons_v0 = "urn:xmpp:carbons:0"; local bare_sessions = bare_sessions; local function adhoc_status(self, data, state) local bare_jid = jid_bare(data.from); local user_sessions = bare_sessions[bare_jid]; local result = ""; user_sessions = user_sessions and user_sessions.sessions; for _, session in pairs(user_sessions) do if session.full_jid then result = result .. session.full_jid .. ": " .. ( (session.want_carbons == xmlns_carbons_v2 and "v2" ) or (session.want_carbons == xmlns_carbons_v1 and "v1" ) or (session.want_carbons == xmlns_carbons_v0 and "v0" ) or "none" ) .. "\n"; end end return { info = result, status = "completed" }; end local status_desc = adhoc_new("Carbons: Get Status", "mod_carbons_adhoc#status", adhoc_status); module:add_item("adhoc", status_desc);