1
0
Fork 0
mirror of https://github.com/processone/ejabberd synced 2025-10-03 09:49:18 +02:00

Define kick_user command version 2, useful for the WebAdmin command usage

This commit is contained in:
Badlop 2024-05-17 20:58:44 +02:00
parent be847a7e91
commit 701d2ce0f6

View file

@ -62,6 +62,7 @@
user_resources/2, user_resources/2,
kick_user/2, kick_user/2,
kick_user/3, kick_user/3,
kick_user_restuple/2,
get_session_pid/3, get_session_pid/3,
get_session_sid/3, get_session_sid/3,
get_session_sids/2, get_session_sids/2,
@ -1047,7 +1048,19 @@ get_commands_spec() ->
args_example = [<<"user1">>, <<"example.com">>], args_example = [<<"user1">>, <<"example.com">>],
result_desc = "Number of resources that were kicked", result_desc = "Number of resources that were kicked",
result_example = 3, result_example = 3,
result = {num_resources, integer}}]. result = {num_resources, integer}},
#ejabberd_commands{name = kick_user, tags = [session],
desc = "Disconnect user's active sessions",
module = ?MODULE, function = kick_user_restuple,
version = 2,
note = "modified in 24.xx",
args = [{user, binary}, {host, binary}],
args_desc = ["User name", "Server name"],
args_example = [<<"user1">>, <<"example.com">>],
result_desc = "The result text indicates the number of sessions that were kicked",
result_example = {ok, <<"Kicked sessions: 2">>},
result = {res, restuple}}].
-spec connected_users() -> [binary()]. -spec connected_users() -> [binary()].
@ -1082,5 +1095,9 @@ kick_user(User, Server, Resource) ->
Pid -> ejabberd_c2s:route(Pid, kick) Pid -> ejabberd_c2s:route(Pid, kick)
end. end.
kick_user_restuple(User, Server) ->
NumberBin = integer_to_binary(kick_user(User, Server)),
{ok, <<"Kicked sessions: ", NumberBin/binary>>}.
make_sid() -> make_sid() ->
{misc:unique_timestamp(), self()}. {misc:unique_timestamp(), self()}.