mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-28 16:34:13 +01:00
Move unwrap_mucsub_message/1 into misc
This commit is contained in:
parent
a8b11b6474
commit
30393bb690
20
src/misc.erl
20
src/misc.erl
@ -29,7 +29,7 @@
|
|||||||
|
|
||||||
%% API
|
%% API
|
||||||
-export([add_delay_info/3, add_delay_info/4,
|
-export([add_delay_info/3, add_delay_info/4,
|
||||||
unwrap_carbon/1, is_standalone_chat_state/1,
|
unwrap_carbon/1, unwrap_mucsub_message/1, is_standalone_chat_state/1,
|
||||||
tolower/1, term_to_base64/1, base64_to_term/1, ip_to_list/1,
|
tolower/1, term_to_base64/1, base64_to_term/1, ip_to_list/1,
|
||||||
hex_to_bin/1, hex_to_base64/1, url_encode/1, expand_keyword/3,
|
hex_to_bin/1, hex_to_base64/1, url_encode/1, expand_keyword/3,
|
||||||
atom_to_binary/1, binary_to_atom/1, tuple_to_binary/1,
|
atom_to_binary/1, binary_to_atom/1, tuple_to_binary/1,
|
||||||
@ -91,6 +91,24 @@ unwrap_carbon(#message{} = Msg) ->
|
|||||||
end;
|
end;
|
||||||
unwrap_carbon(Stanza) -> Stanza.
|
unwrap_carbon(Stanza) -> Stanza.
|
||||||
|
|
||||||
|
-spec unwrap_mucsub_message(xmpp_element()) -> message() | false.
|
||||||
|
unwrap_mucsub_message(#message{} = OuterMsg) ->
|
||||||
|
case xmpp:get_subtag(OuterMsg, #ps_event{}) of
|
||||||
|
#ps_event{
|
||||||
|
items = #ps_items{
|
||||||
|
node = Node,
|
||||||
|
items = [
|
||||||
|
#ps_item{
|
||||||
|
sub_els = [#message{} = InnerMsg]} | _]}}
|
||||||
|
when Node == ?NS_MUCSUB_NODES_MESSAGES;
|
||||||
|
Node == ?NS_MUCSUB_NODES_SUBJECT ->
|
||||||
|
InnerMsg;
|
||||||
|
_ ->
|
||||||
|
false
|
||||||
|
end;
|
||||||
|
unwrap_mucsub_message(_Packet) ->
|
||||||
|
false.
|
||||||
|
|
||||||
-spec is_standalone_chat_state(stanza()) -> boolean().
|
-spec is_standalone_chat_state(stanza()) -> boolean().
|
||||||
is_standalone_chat_state(Stanza) ->
|
is_standalone_chat_state(Stanza) ->
|
||||||
case unwrap_carbon(Stanza) of
|
case unwrap_carbon(Stanza) of
|
||||||
|
@ -653,7 +653,7 @@ should_archive(#message{body = Body, subject = Subject,
|
|||||||
true ->
|
true ->
|
||||||
true;
|
true;
|
||||||
_ ->
|
_ ->
|
||||||
case mod_muc_room:unwrap_mucsub_message(Pkt) of
|
case misc:unwrap_mucsub_message(Pkt) of
|
||||||
#message{type = groupchat} = Msg ->
|
#message{type = groupchat} = Msg ->
|
||||||
should_archive(Msg#message{type = chat}, LServer);
|
should_archive(Msg#message{type = chat}, LServer);
|
||||||
#message{} = Msg ->
|
#message{} = Msg ->
|
||||||
|
@ -39,8 +39,7 @@
|
|||||||
is_occupant_or_admin/2,
|
is_occupant_or_admin/2,
|
||||||
route/2,
|
route/2,
|
||||||
expand_opts/1,
|
expand_opts/1,
|
||||||
config_fields/0,
|
config_fields/0]).
|
||||||
unwrap_mucsub_message/1]).
|
|
||||||
|
|
||||||
%% gen_fsm callbacks
|
%% gen_fsm callbacks
|
||||||
-export([init/1,
|
-export([init/1,
|
||||||
@ -4461,24 +4460,6 @@ wrap(From, To, Packet, Node) ->
|
|||||||
id = p1_rand:get_string(),
|
id = p1_rand:get_string(),
|
||||||
sub_els = [El]}]}}]}.
|
sub_els = [El]}]}}]}.
|
||||||
|
|
||||||
-spec unwrap_mucsub_message(xmpp_element()) -> message() | false.
|
|
||||||
unwrap_mucsub_message(#message{} = Packet) ->
|
|
||||||
case xmpp:get_subtag(Packet, #ps_event{}) of
|
|
||||||
#ps_event{
|
|
||||||
items = #ps_items{
|
|
||||||
node = Node,
|
|
||||||
items = [
|
|
||||||
#ps_item{
|
|
||||||
sub_els = [#message{} = Message]} | _]}}
|
|
||||||
when Node == ?NS_MUCSUB_NODES_MESSAGES;
|
|
||||||
Node == ?NS_MUCSUB_NODES_SUBJECT ->
|
|
||||||
Message;
|
|
||||||
_ ->
|
|
||||||
false
|
|
||||||
end;
|
|
||||||
unwrap_mucsub_message(_Packet) ->
|
|
||||||
false.
|
|
||||||
|
|
||||||
%% -spec send_multiple(jid(), binary(), [#user{}], stanza()) -> ok.
|
%% -spec send_multiple(jid(), binary(), [#user{}], stanza()) -> ok.
|
||||||
%% send_multiple(From, Server, Users, Packet) ->
|
%% send_multiple(From, Server, Users, Packet) ->
|
||||||
%% JIDs = [ User#user.jid || {_, User} <- ?DICT:to_list(Users)],
|
%% JIDs = [ User#user.jid || {_, User} <- ?DICT:to_list(Users)],
|
||||||
|
Loading…
Reference in New Issue
Block a user