基于mqtt的IM系统设计
·
|
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只需要订阅自己的频道就可以了,比如需要向你发送消息就往你的频道发送。其它任何一个朋友想聊天,只需要往我的频道发消息过来就行。至于区分是哪个朋友发过来的,用发送者来区分。
更多推荐
所有评论(0)