diff options
author | Badlop <badlop@process-one.net> | 2009-12-29 14:43:24 +0000 |
---|---|---|
committer | Badlop <badlop@process-one.net> | 2009-12-29 14:43:24 +0000 |
commit | 9bee86178f80cc58685e2cda5e30d30b5f747258 (patch) | |
tree | c6bf9c6c915b471b51ed225cd66cc7b24c15d334 /src/mod_muc/mod_muc_room.erl | |
parent | Send features after negotiating binding and session (EJAB-1058) (diff) |
Write in room log when a room is created, destroyed, started, stopped (EJAB-1144)
SVN Revision: 2836
Diffstat (limited to 'src/mod_muc/mod_muc_room.erl')
-rw-r--r-- | src/mod_muc/mod_muc_room.erl | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mod_muc/mod_muc_room.erl b/src/mod_muc/mod_muc_room.erl index f63fdd81..54199ff2 100644 --- a/src/mod_muc/mod_muc_room.erl +++ b/src/mod_muc/mod_muc_room.erl @@ -125,6 +125,8 @@ init([Host, ServerHost, Access, Room, HistorySize, RoomShaper, Creator, _Nick, D State1 = set_opts(DefRoomOpts, State), ?INFO_MSG("Created MUC room ~s@~s by ~s", [Room, Host, jlib:jid_to_string(Creator)]), + add_to_log(room_existence, created, State1), + add_to_log(room_existence, started, State1), {ok, normal_state, State1}; init([Host, ServerHost, Access, Room, HistorySize, RoomShaper, Opts]) -> process_flag(trap_exit, true), @@ -136,6 +138,7 @@ init([Host, ServerHost, Access, Room, HistorySize, RoomShaper, Opts]) -> history = lqueue_new(HistorySize), jid = jlib:make_jid(Room, Host, ""), room_shaper = Shaper}), + add_to_log(room_existence, started, State), {ok, normal_state, State}. %%---------------------------------------------------------------------- @@ -567,6 +570,7 @@ handle_event({destroy, Reason}, _StateName, StateData) -> end}, StateData), ?INFO_MSG("Destroyed MUC room ~s with reason: ~p", [jlib:jid_to_string(StateData#state.jid), Reason]), + add_to_log(room_existence, destroyed, StateData), {stop, normal, StateData}; handle_event(destroy, StateName, StateData) -> ?INFO_MSG("Destroyed MUC room ~s", @@ -725,10 +729,13 @@ handle_info(_Info, StateName, StateData) -> %% Returns: any %%---------------------------------------------------------------------- terminate(_Reason, _StateName, StateData) -> + ?INFO_MSG("Stopping MUC room ~s@~s", + [StateData#state.room, StateData#state.host]), ?DICT:fold( fun(J, _, _) -> tab_remove_online_user(J, StateData) end, [], StateData#state.users), + add_to_log(room_existence, stopped, StateData), mod_muc:room_destroyed(StateData#state.host, StateData#state.room, self(), StateData#state.server_host), ok. @@ -962,6 +969,7 @@ process_presence(From, Nick, {xmlelement, "presence", Attrs, _Els} = Packet, true -> ?INFO_MSG("Destroyed MUC room ~s because it's temporary and empty", [jlib:jid_to_string(StateData#state.jid)]), + add_to_log(room_existence, destroyed, StateData), {stop, normal, StateData1}; _ -> {next_state, normal_state, StateData1} @@ -2698,6 +2706,7 @@ process_iq_owner(From, set, Lang, SubEl, StateData) -> [{xmlelement, "destroy", _Attrs1, _Els1} = SubEl1] -> ?INFO_MSG("Destroyed MUC room ~s by the owner ~s", [jlib:jid_to_string(StateData#state.jid), jlib:jid_to_string(From)]), + add_to_log(room_existence, destroyed, StateData), destroy_room(SubEl1, StateData); Items -> process_admin_items_set(From, Items, Lang, StateData) |