MT#12267 add mod_carbons_* and sync mod_smacks ( license header )

- while at it upgrade debian copyright file

Change-Id: I9a8cd7b6a00e6ee693e7247983c6a25a00778046
changes/25/2325/1
Victor Seva 10 years ago
parent 844707127a
commit e2ae3283be

15
debian/copyright vendored

@ -19,6 +19,14 @@ Files: plugins/mod_carbons.lua
Copyright: 2011 Kim Alvefur <zash@zash.se>
License: MIT/X11
Files: plugins/mod_carbons_copies.lua
Copyright: 2012 Michael Holzt
License: MIT/X11
Files: plugins/mod_carbons_adhoc.lua
Copyright: 2012 Michael Holzt
License: MIT/X11
Files: plugins/mod_sipwise_lastactivity.lua
Copyright: 2008-2010 Matthew Wild
2008-2010 Waqas Hussain <waqas20@gmail.com>
@ -30,8 +38,11 @@ Copyright: 2013 Kim Alvefur <zash@zash.se>
License: MIT/X11
Files: plugins/mod_smacks.lua
Copyright: 2015 Matthew Wild <mwild1>
2015 Kim Alvefur <zash@zash.se>
Copyright: 2010-2015 Matthew Wild
2010 Waqas Hussain
2012-2015 Kim Alvefur
2012 Thijs Alkemade
2014 Florian Zeitz
Licence: MIT/X11
Files: *

@ -0,0 +1,42 @@
-- 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 result;
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);

@ -0,0 +1,63 @@
-- Send carbons v0 style copies of incoming messages to clients which
-- are not (yet) capable of Message Carbons (XEP-0280).
--
-- This extension integrates with the mod_carbons plugin in such a way
-- that a client capable of Message Carbons will not get a v0 copy.
--
-- This extension can be enabled for all users by default by setting
-- carbons_copies_default = true.
--
-- Alternatively or additionally setting carbons_copies_adhoc = true
-- will allow the user to enable or disable copies through Adhoc
-- commands.
--
-- Copyright (C) 2012 Michael Holzt
--
-- This file is MIT/X11 licensed.
local jid_split = require "util.jid".split;
local dm_load = require "util.datamanager".load;
local dm_store = require "util.datamanager".store;
local adhoc_new = module:require "adhoc".new;
local xmlns_carbons_v0 = "urn:xmpp:carbons:0";
local storename = "mod_carbons_copies";
local function toggle_copies(data, on)
local username, hostname, resource = jid_split(data.from);
dm_store(username, hostname, storename, { enabled = on });
end
local function adhoc_enable_copies(self, data, state)
toggle_copies(data, true);
return { info = "Copies are enabled for you now.\nPlease restart/reconnect clients.", status = "completed" };
end
local function adhoc_disable_copies(self, data, state)
toggle_copies(data, false);
return { info = "Copies are disabled for you now.\nPlease restart/reconnect clients.", status = "completed" };
end
module:hook("resource-bind", function(event)
local session = event.session;
local username, hostname, resource = jid_split(session.full_jid);
local store = dm_load(username, hostname, storename) or
{ enabled =
module:get_option_boolean("carbons_copies_default") };
if store.enabled then
session.want_carbons = xmlns_carbons_v0;
module:log("debug", "%s enabling copies", session.full_jid);
end
end);
-- Adhoc-Support
if module:get_option_boolean("carbons_copies_adhoc") then
local enable_desc = adhoc_new("Carbons: Enable Copies",
"mod_carbons_copies#enable", adhoc_enable_copies);
local disable_desc = adhoc_new("Carbons: Disable Copies",
"mod_carbons_copies#disable", adhoc_disable_copies);
module:add_item("adhoc", enable_desc);
module:add_item("adhoc", disable_desc);
end

@ -1,3 +1,15 @@
-- XEP-0198: Stream Management for Prosody IM
--
-- Copyright (C) 2010-2015 Matthew Wild
-- Copyright (C) 2010 Waqas Hussain
-- Copyright (C) 2012-2015 Kim Alvefur
-- Copyright (C) 2012 Thijs Alkemade
-- Copyright (C) 2014 Florian Zeitz
--
-- This project is MIT/X11 licensed. Please see the
-- COPYING file in the source package for more information.
--
local st = require "util.stanza";
local uuid_generate = require "util.uuid".generate;

Loading…
Cancel
Save