用Go语言实现的一个具备灵活灵活扩展能力,高性能的MQTT broker,其完整实现了MQTT V3.x和V5协议。
| hook | 说明 | 用途示例 |
|---|---|---|
| OnAccept | TCP连接建立时调用 | TCP连接限速,黑白名单等. |
| OnStop | 当broker退出时调用 | |
| OnBasicAuth | 收到连接请求报文时调用 | 客户端连接鉴权 |
| OnEnhancedAuth | 收到带有AuthMethod的连接请求报文时调用(V5特性) | 客户端连接鉴权 |
| OnAuth | 收到Auth报文时调用(V5特性) | 客户端连接鉴权 |
| OnReAuth | 收到Auth报文时调用(V5特性) | 客户端连接鉴权 |
| OnSubscribe | 收到订阅请求时调用 | 校验订阅是否合法 |
| OnSubscribed | 订阅成功后调用 | 统计订阅报文数量 |
| OnUnsubscribe | 取消订阅时调用 | 校验是否允许取消订阅 |
| OnUnsubscribed | 取消订阅成功后调用 | 统计订阅报文数 |
| OnMsgArrived | 收到消息发布报文时调用 | 校验发布权限,改写发布消息 |
| OnConnected | 客户端连接成功后调用 | 统计在线客户端数量、设备上下线 |
| OnSessionCreated | 客户端创建新session后调用 | 统计session数量 |
| OnSessionResumed | 客户端从旧session恢复后调用 | 统计session数量 |
| OnSessionTerminated | session删除后调用 | 统计session数量 |
| OnDelivered | 消息从broker投递到客户端前调用 | |
| OnClosed | 客户端断开连接后调用 | 统计在线客户端数量、设备上下线 |
| OnMsgDropped | 消息被丢弃时调用 | |
| OnWillPublish | 发布遗嘱消息前 | 修改或丢弃遗嘱消息 |
| OnWillPublished | 发布遗嘱消息后 |