From 01994027b6f5de4c99f58b1ec64631de1a1e5632 Mon Sep 17 00:00:00 2001 From: Amardeep Date: Tue, 26 May 2026 23:36:49 +0530 Subject: [PATCH] token session added --- prosody-plugins/mod_politictalk_roles.lua | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/prosody-plugins/mod_politictalk_roles.lua b/prosody-plugins/mod_politictalk_roles.lua index 9d0471d..9d85c1b 100644 --- a/prosody-plugins/mod_politictalk_roles.lua +++ b/prosody-plugins/mod_politictalk_roles.lua @@ -229,6 +229,24 @@ local function get_active_host_count(room) return count; end +local function get_active_participant_user_ids(room) + if not room then + return {}; + end + + ensure_room_data(room); + + local user_ids = {}; + + for _, occupant in room:each_occupant() do + if table_contains(room._data.politictalk_participant_jids, occupant.bare_jid) then + user_ids = add_unique(user_ids, room._data.politictalk_jid_user_ids[occupant.bare_jid]); + end + end + + return user_ids; +end + local function get_occupant_count(room) if not room then return 0; @@ -326,6 +344,7 @@ local function notify_room_occupancy(room, reason) ensure_room_data(room); local participant_count = table_count(room._data.politictalk_participant_jids); + local participant_user_ids = get_active_participant_user_ids(room); local moderator_count = table_count(room._data.moderators); local occupant_count = get_occupant_count(room); local host_count = get_active_host_count(room); @@ -341,6 +360,7 @@ local function notify_room_occupancy(room, reason) reason = reason or "occupancy_changed"; roomJid = room.jid; participantCount = participant_count; + participantUserIds = participant_user_ids; moderatorCount = moderator_count; occupantCount = occupant_count; hostCount = host_count;