From cfb1fef162a9db20a155c2cbebba4b491cab3850 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sa=C3=BAl=20Ibarra=20Corretg=C3=A9?= Date: Thu, 1 Sep 2022 16:55:12 +0200 Subject: [PATCH] fix(breakout-rooms) fix broadcast timer --- resources/prosody-plugins/mod_muc_breakout_rooms.lua | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/resources/prosody-plugins/mod_muc_breakout_rooms.lua b/resources/prosody-plugins/mod_muc_breakout_rooms.lua index 228a1dce5..5113274aa 100644 --- a/resources/prosody-plugins/mod_muc_breakout_rooms.lua +++ b/resources/prosody-plugins/mod_muc_breakout_rooms.lua @@ -116,22 +116,19 @@ end function broadcast_breakout_rooms(room_jid) local main_room = get_main_room(room_jid); - if not main_room or main_room._data.is_broadcast_breakout_scheduled then + if not main_room or main_room.broadcast_timer then return; end -- Only send each BROADCAST_ROOMS_INTERVAL seconds to prevent flooding of messages. - main_room._data.is_broadcast_breakout_scheduled = true; - main_room:save(true); - module:add_timer(BROADCAST_ROOMS_INTERVAL, function() + main_room.broadcast_timer = module:add_timer(BROADCAST_ROOMS_INTERVAL, function() local main_room, main_room_jid = get_main_room(room_jid); if not main_room then return; end - main_room._data.is_broadcast_breakout_scheduled = false; - main_room:save(true); + main_room.broadcast_timer = nil; local real_jid = internal_room_jid_match_rewrite(main_room_jid); local real_node = jid_node(real_jid);