Move unwrap_mucsub_message/1 into misc

This commit is contained in:
Holger Weiss 2018-10-25 01:22:57 +02:00
parent a8b11b6474
commit 30393bb690
3 changed files with 21 additions and 22 deletions

View File

@ -29,7 +29,7 @@
%% API
-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,
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,
@ -91,6 +91,24 @@ unwrap_carbon(#message{} = Msg) ->
end;
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().
is_standalone_chat_state(Stanza) ->
case unwrap_carbon(Stanza) of

View File

@ -653,7 +653,7 @@ should_archive(#message{body = Body, subject = Subject,
true ->
true;
_ ->
case mod_muc_room:unwrap_mucsub_message(Pkt) of
case misc:unwrap_mucsub_message(Pkt) of
#message{type = groupchat} = Msg ->
should_archive(Msg#message{type = chat}, LServer);
#message{} = Msg ->

View File

@ -39,8 +39,7 @@
is_occupant_or_admin/2,
route/2,
expand_opts/1,
config_fields/0,
unwrap_mucsub_message/1]).
config_fields/0]).
%% gen_fsm callbacks
-export([init/1,
@ -4461,24 +4460,6 @@ wrap(From, To, Packet, Node) ->
id = p1_rand:get_string(),
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.
%% send_multiple(From, Server, Users, Packet) ->
%% JIDs = [ User#user.jid || {_, User} <- ?DICT:to_list(Users)],