diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-01-09 17:02:17 +0300 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-01-09 17:02:17 +0300 |
commit | 1e55e018e534aa82541c5f460063a237192b768c (patch) | |
tree | 9584ed46fe2b18770343399254b0ba15ff591e51 /src/mod_metrics.erl | |
parent | Get rid of "jlib.hrl" header in some files (diff) |
Adopt remaining code to support new hooks
Diffstat (limited to 'src/mod_metrics.erl')
-rw-r--r-- | src/mod_metrics.erl | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/mod_metrics.erl b/src/mod_metrics.erl index 7861542c..1698690d 100644 --- a/src/mod_metrics.erl +++ b/src/mod_metrics.erl @@ -38,8 +38,8 @@ -export([offline_message_hook/3, sm_register_connection_hook/3, sm_remove_connection_hook/3, - user_send_packet/4, user_receive_packet/5, - s2s_send_packet/3, s2s_receive_packet/3, + user_send_packet/1, user_receive_packet/1, + s2s_send_packet/3, s2s_receive_packet/1, remove_user/2, register_user/2]). %%==================================================================== @@ -86,23 +86,27 @@ sm_register_connection_hook(_SID, #jid{lserver=LServer}, _Info) -> sm_remove_connection_hook(_SID, #jid{lserver=LServer}, _Info) -> push(LServer, sm_remove_connection). --spec user_send_packet(stanza(), ejabberd_c2s:state(), jid(), jid()) -> stanza(). -user_send_packet(Packet, _C2SState, #jid{lserver=LServer}, _To) -> +-spec user_send_packet({stanza(), ejabberd_c2s:state()}) -> {stanza(), ejabberd_c2s:state()}. +user_send_packet({Packet, #{jid := #jid{lserver = LServer}} = C2SState}) -> push(LServer, user_send_packet), - Packet. + {Packet, C2SState}. --spec user_receive_packet(stanza(), ejabberd_c2s:state(), jid(), jid(), jid()) -> stanza(). -user_receive_packet(Packet, _C2SState, _JID, _From, #jid{lserver=LServer}) -> +-spec user_receive_packet({stanza(), ejabberd_c2s:state()}) -> {stanza(), ejabberd_c2s:state()}. +user_receive_packet({Packet, #{jid := #jid{lserver = LServer}} = C2SState}) -> push(LServer, user_receive_packet), - Packet. + {Packet, C2SState}. -spec s2s_send_packet(jid(), jid(), stanza()) -> any(). s2s_send_packet(#jid{lserver=LServer}, _To, _Packet) -> push(LServer, s2s_send_packet). --spec s2s_receive_packet(jid(), jid(), stanza()) -> any(). -s2s_receive_packet(_From, #jid{lserver=LServer}, _Packet) -> - push(LServer, s2s_receive_packet). +-spec s2s_receive_packet({stanza(), ejabberd_s2s_in:state()}) -> + {stanza(), ejabberd_s2s_in:state()}. +s2s_receive_packet({Packet, S2SState}) -> + To = xmpp:get_to(Packet), + LServer = ejabberd_router:host_of_route(To#jid.lserver), + push(LServer, s2s_receive_packet), + {Packet, S2SState}. -spec remove_user(binary(), binary()) -> any(). remove_user(_User, Server) -> |