JianBo He
8339bccc69
fix(mqttsn): ack the DISCONNECT packet even if it is not connected
...
MQTT-SN v1.2 spec:
"As with MQTT, the DISCONNECT message is sent by a client to indicate that it
wants to close the connection. The gateway will acknowledge the receipt of that
message by returning a DISCONNECT to the client."
2023-12-15 11:35:46 +08:00
Zaiming (Stone) Shi
423b586c56
fix(dialyzer): fix some dialyzer issues found on otp 26
2023-12-06 20:32:49 +01:00
Andrew Mayorov
ee9a98f0a4
chore: bump emqx_gateway_mqttsn to 0.1.7
2023-12-02 15:00:29 +03:00
Andrew Mayorov
88103c5f0e
refactor(session): pass config to `SessionImpl:open/3` as well
...
* Anticipate that connection info may change during session takeover.
* Avoid persisting session conf as part of persistent session state.
2023-12-02 14:36:21 +03:00
Thales Macedo Garitezi
f8fd95c683
Merge remote-tracking branch 'origin/release-53' into sync-r53-m-20231124
2023-11-24 09:22:24 -03:00
Zaiming (Stone) Shi
1b2c052646
docs: add type namespaces
2023-11-22 13:12:35 +01:00
JimMoen
caade4a7e5
chore: emacs mode entry comment for non-erl files
2023-11-12 21:43:11 +08:00
Zaiming (Stone) Shi
bce8fd2fbc
chore: bump app versions
2023-09-29 18:56:52 +02:00
Andrew Mayorov
b1f144ab8b
feat(session): add custom session timers mechanism
...
That are managed exclusively by the session implementation, unlike
common session timers that are managed by the channel itself.
2023-09-25 18:19:26 +03:00
Andrew Mayorov
8670efbfa0
chore(chan): rename `Name` → `TimerName` for better readability
2023-09-20 22:55:25 +04:00
Andrew Mayorov
97881ff3ca
refactor(session): bring back common session timers
2023-09-20 22:53:43 +04:00
Andrew Mayorov
bf16417513
feat(session): introduce session implementation concept
2023-09-20 22:53:42 +04:00
Andrew Mayorov
780ca15298
chore: bump application versions
2023-09-20 22:52:14 +04:00
Andrew Mayorov
57ae5b14f1
refactor(mqttsn): make timer names equal to messages they send
...
Because keeping timer names different from the messages they send
complicates understanding of the control flow, and spends few
reductions per timer operation unnecessarily.
2023-09-20 22:52:13 +04:00
Ilya Averyanov
7de26a1776
feat(authz): use extensible map format for actions in authz rules
...
* support authorization on retain, qos fields
* refactored authz tests heavily
2023-07-07 19:40:34 +03:00
JianBo He
001e2976ec
chore: fix typos
2023-06-11 18:13:25 +08:00
JianBo He
9c4a576fb3
feat: reserved 1-1024 topic id for predefined topics
2023-06-11 18:12:34 +08:00
JianBo He
ac6693c8cc
refactor(mqttsn): takeover can resume the registrations of session
2023-06-11 18:12:34 +08:00
JianBo He
3c6afee690
refactor(mqttsn): make the topic registration mechanism simpler
2023-06-11 18:12:34 +08:00
JianBo He
6fc50d11f8
fix(mqttsn): clean pre-defined topics once gateway reloaded
2023-06-11 18:12:34 +08:00
Zaiming (Stone) Shi
97850de524
Merge remote-tracking branch 'origin/release-51' into 0610-merge-release-51-to-master
2023-06-10 12:23:55 +02:00
Andrew Mayorov
d6c1ee183f
refactor(pluglib): move `emqx_placeholder` to utils app
...
Also make user that existing code calls it directly.
2023-06-09 14:44:36 +03:00
JianBo He
5d86443910
chore: fix dialyzer warnings
2023-06-08 11:06:25 +08:00
JianBo He
81387800b5
Merge branch 'master' into mqttsn-qos3
2023-06-07 09:49:29 +08:00
JianBo He
bcc47442eb
fix(mqttsn): make mountpoint works for publish
2023-06-06 18:44:27 +08:00
JianBo He
26748ef242
fix(mqttsn): checking enable_qos3 option
2023-06-06 18:21:26 +08:00
JianBo He
d77d5e33bc
fix(mqttsn): Instantly refresh client info after subscribed/unsubscribed
2023-05-18 14:48:37 +08:00
William Yang
614f9bda51
chore(gateway-mqttsn): fix a minor bug
2023-05-10 10:53:00 +02:00
Stefan Strigler
9c11bfce80
refactor: rename emqx_misc to emqx_utils
2023-04-14 13:41:27 +02:00
JianBo He
0a62d6c556
refactor(gw): rename all gateway application name
2023-04-13 14:53:47 +08:00