上下线通知

EMQX 客服发表于:2022年05月17日 16:58:27

上下线通知

EMQX 的上下线系统消息通知功能在客户端连接成功或者客户端断开连接,自动发送一条系统主题的消息, EMQX 默认开启上下线通知模块。

创建模块

上下线通知模块默认启动,可以通过dashboard页面进行启动和停止。

打开 EMQX Dashboard,点击左侧的 “模块” 选项卡:

image.png验证结果:

image.png

上下线消息通知格式

$SYS 主题前缀: $SYS/brokers/${node}/clients/

主题 (Topic)说明
${clientid}/connected上线事件。当任意客户端上线时,EMQX 就会发布该主题的消息
${clientid}/disconnected下线事件。当任意客户端下线时,EMQX 就会发布该主题的消息

connected 事件消息的 Payload 解析成 JSON 格式如下:

{
    "username": "foo",
    "ts": 1625572213873,
    "sockport": 1883,
    "proto_ver": 4,
    "proto_name": "MQTT",
    "keepalive": 60,
    "ipaddress": "127.0.0.1",
    "expiry_interval": 0,
    "connected_at": 1625572213873,
    "connack": 0,
    "clientid": "emqtt-8348fe27a87976ad4db3",
    "clean_start": true
}

disconnected 事件消息的 Payload 解析成 JSON 格式如下:

{    
    "username": "foo",    
    "ts": 1625572213873,    
    "sockport": 1883,    
    "reason": "tcp_closed",    
    "proto_ver": 4,    
    "proto_name": "MQTT",    
    "ipaddress": "127.0.0.1",    
    "disconnected_at": 1625572213873,    
    "clientid": "emqtt-8348fe27a87976ad4db3"
}


    您需要登录后才可以回复