当前位置: 首页 > 工具软件 > 野火IM > 使用案例 >

基于mqtt的IM系统设计

孙永思
2023-12-01

client名称

订阅频道地址

payload

Admin

 

/9a/admin/notify/<imID>, QoS=1

Example: /9a/admin/notify/im1001

系统通知消息, string

Retain=0

User

上线:/9a/login/<imID>, qos=1

聊天: /9a/chat/<imID>, qos=0

下线:/9a/logout/<imID>, qos=1

上线/下线时,内容填自己的imID就行。

下线就是LWT频道。

Retain=0

 

离线接收,建立mqtt连接时,clean session=False。这样broker就会在client离线时,缓存此client接收的消息。

 

每个client只需要订阅自己的频道就可以了,比如需要向你发送消息就往你的频道发送。其它任何一个朋友想聊天,只需要往我的频道发消息过来就行。至于区分是哪个朋友发过来的,用发送者来区分。

 

 类似资料: