From: Evgeniy Khramtsov Date: Tue, 25 Apr 2017 14:59:26 +0000 (+0300) Subject: Include original 'id' and 'type' attributes in offline event X-Git-Tag: 17.06-beta~114 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=120682ec8b104ff74bfbe7fcdafcd79634d80a43;p=ejabberd Include original 'id' and 'type' attributes in offline event --- diff --git a/src/mod_offline.erl b/src/mod_offline.erl index 1d4a63958..373200c12 100644 --- a/src/mod_offline.erl +++ b/src/mod_offline.erl @@ -532,14 +532,14 @@ has_no_store_hint(Packet) -> %% Check if the packet has any content about XEP-0022 -spec check_event(message()) -> boolean(). -check_event(#message{from = From, to = To, id = ID} = Msg) -> +check_event(#message{from = From, to = To, id = ID, type = Type} = Msg) -> case xmpp:get_subtag(Msg, #xevent{}) of false -> true; #xevent{id = undefined, offline = false} -> true; #xevent{id = undefined, offline = true} -> - NewMsg = #message{from = To, to = From, + NewMsg = #message{from = To, to = From, id = ID, type = Type, sub_els = [#xevent{id = ID, offline = true}]}, ejabberd_router:route(NewMsg), true;