X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=plugins%2Fmuc%2Fmuc.lib.lua;h=434127b4f2fd4e87ba2996284b9abfaf3fc0074a;hb=08b19bb731babd4d3a8697f2e6bbf8b61aa1c3cc;hp=2026bc4717c668adc0def9bf16712c6767e8eefd;hpb=7bdfc9df4f0a52f314e7ce285a7103321c7da711;p=prosody.git diff --git a/plugins/muc/muc.lib.lua b/plugins/muc/muc.lib.lua index 2026bc47..434127b4 100644 --- a/plugins/muc/muc.lib.lua +++ b/plugins/muc/muc.lib.lua @@ -727,6 +727,7 @@ function room_mt:clear(x) occupants_updated[occupant] = true; end for occupant in pairs(occupants_updated) do + occupant:set_session(occupant.jid, st.presence({type="unavailable"}), true); self:publicise_occupant_status(occupant, x); module:fire_event("muc-occupant-left", { room = self; nick = occupant.nick; occupant = occupant;}); end @@ -1223,14 +1224,12 @@ room_mt.set_whois = whois.set; local _M = {}; -- module "muc" -function _M.new_room(jid, config) -- luacheck: ignore 212 - -- TODO use config? +function _M.new_room(jid, config) return setmetatable({ jid = jid; _jid_nick = {}; _occupants = {}; - _data = { - }; + _data = config or {}; _affiliations = {}; }, room_mt); end