Files
vnctalk-prosody/vnctalk/mod_vnc_track_kicks.lua
T

41 lines
1.3 KiB
Lua

-- Prosody IM
-- Copyright (C) 2008-2017 Matthew Wild
-- Copyright (C) 2008-2017 Waqas Hussain
-- Copyright (C) 2011-2017 Kim Alvefur
-- Copyright (C) 2011-2017 Stefan Sänger
--
-- This project is MIT/X11 licensed. Please see the
-- COPYING file in the source package for more information.
--
-- store kicks based on mod_mam
--
local um = require "core.usermanager";
local st = require "util.stanza";
local rsm = require "util.rsm";
local jid_bare = require "util.jid".bare;
local jid_split = require "util.jid".split;
local jid_prepped_split = require "util.jid".prepped_split;
local host = module.host;
local is_stanza = st.is_stanza;
local tostring = tostring;
local time_now = os.time;
local m_min = math.min;
local timestamp, timestamp_parse = require "util.datetime".datetime, require "util.datetime".parse;
local kick_store = module:open_store("kick", "archive");
module:hook("vnc-muc-kick", function (event)
-- module:log("info", "vnc-muc-kick room: %s", event.room);
-- module:log("info", "vnc-muc-kick who: %s", event.who);
local room_node = jid_split(event.room);
local kicktime = tostring(os.time());
local id, err = kick_store:append(room_node, nil, "<status>kicked or left</status>", time_now(), event.who);
if id then
module:log("info", "stored as id: %s", id);
else
module:log("info", "failed to store: %s", err);
end
end);