From 13ad754eccbcc0305aae903b188c87dbbc77d31e Mon Sep 17 00:00:00 2001 From: Holger Weiss Date: Fri, 18 Aug 2017 16:44:32 +0200 Subject: Suppress push notifications for online clients When a client enabled push notifications during the current session, notifications should be suppressed as long as the client is online. Suppressing the notification didn't work for the case where the notification was triggered by MAM, but this is now fixed. --- src/ejabberd_sm.erl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/ejabberd_sm.erl') diff --git a/src/ejabberd_sm.erl b/src/ejabberd_sm.erl index 5771a5bbf..d93e66473 100644 --- a/src/ejabberd_sm.erl +++ b/src/ejabberd_sm.erl @@ -317,7 +317,8 @@ get_session_sids(User, Server) -> LUser = jid:nodeprep(User), LServer = jid:nameprep(Server), Mod = get_sm_backend(LServer), - online(get_sessions(Mod, LUser, LServer)). + OnlineSs = online(get_sessions(Mod, LUser, LServer)), + [SID || #session{sid = SID} <- OnlineSs]. -spec set_offline_info(sid(), binary(), binary(), binary(), info()) -> ok. -- cgit v1.2.3