fix(channel): fix `keep-alive` problem

This commit is contained in:
wwhai 2021-03-26 16:56:00 +08:00 committed by tigercl
parent 7bf6ee0f4b
commit 2e30d7803f
1 changed files with 5 additions and 2 deletions

View File

@ -1545,8 +1545,11 @@ init_alias_maximum(_ConnPkt, _ClientInfo) -> undefined.
%%--------------------------------------------------------------------
%% Enrich Keepalive
ensure_keepalive(#{'Server-Keep-Alive' := Interval}, Channel) ->
ensure_keepalive_timer(Interval, Channel);
%% MQTT 5
ensure_keepalive(#{'Server-Keep-Alive' := Interval}, Channel = #channel{conninfo = ConnInfo}) ->
ensure_keepalive_timer(Interval, Channel#channel{conninfo = ConnInfo#{keepalive => Interval}});
%% MQTT 3,4
ensure_keepalive(_AckProps, Channel = #channel{conninfo = ConnInfo}) ->
ensure_keepalive_timer(maps:get(keepalive, ConnInfo), Channel).