mirror of
https://github.com/processone/ejabberd.git
synced 2024-12-24 17:29:28 +01:00
mod_push: Further improve handling of carbons
Also check for carbon-copied messages (with a body) in the queue of unacknowledged stanzas.
This commit is contained in:
parent
0a9f522222
commit
0a20e45690
@ -389,7 +389,7 @@ c2s_session_pending(#{push_enabled := true, mgmt_queue := Queue} = State) ->
|
||||
Len when Len > 0 ->
|
||||
?DEBUG("Notifying client of unacknowledged stanza(s)", []),
|
||||
Pkt = mod_stream_mgmt:queue_find(fun is_message_with_body/1, Queue),
|
||||
notify(State, Pkt),
|
||||
notify(State, xmpp_util:unwrap_carbon(Pkt)),
|
||||
State;
|
||||
0 ->
|
||||
State
|
||||
@ -467,7 +467,8 @@ notify(LServer, PushLJID, Node, XData, Pkt, HandleResponse) ->
|
||||
%%--------------------------------------------------------------------
|
||||
-spec is_message_with_body(stanza()) -> boolean().
|
||||
is_message_with_body(#message{} = Msg) ->
|
||||
get_body_text(Msg) /= none;
|
||||
Msg1 = xmpp_util:unwrap_carbon(Msg),
|
||||
get_body_text(Msg1) /= none;
|
||||
is_message_with_body(_Stanza) ->
|
||||
false.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user