aboutsummaryrefslogtreecommitdiff
path: root/src/mod_muc_room.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_muc_room.erl')
-rw-r--r--src/mod_muc_room.erl8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mod_muc_room.erl b/src/mod_muc_room.erl
index e5ed4cc68..bdcb808a1 100644
--- a/src/mod_muc_room.erl
+++ b/src/mod_muc_room.erl
@@ -749,6 +749,14 @@ handle_sync_event({change_state, NewStateData}, _From,
handle_sync_event({process_item_change, Item, UJID}, _From, StateName, StateData) ->
NSD = process_item_change(Item, StateData, UJID),
{reply, {ok, NSD}, StateName, NSD};
+handle_sync_event(get_subscribers, _From, StateName, StateData) ->
+ JIDs = dict:fold(
+ fun(_, #user{is_subscriber = true, jid = J}, Acc) ->
+ [J|Acc];
+ (_, _, Acc) ->
+ Acc
+ end, [], StateData#state.users),
+ {reply, {ok, JIDs}, StateName, StateData};
handle_sync_event({muc_subscribe, From, Nick, Nodes}, _From,
StateName, StateData) ->
SubEl = #xmlel{name = <<"subscribe">>,