一、swoole应用IM场景
1 与硬件设备连接通讯(定位设备)
2 IM系统(用于直播页面的聊天通讯)
什么是IM系统
即时通讯(Instant Messaging,简称IM)是一个实时通信系统,允许两人或多人使用网络实时的传递文字消息、文件、语音与视频交流。实现方式有两种。第一种基于Server转发的,Client双方通信会经过Server转发来完成消息传递。例如QQ、微信。
二、部署图
三、程序流程
1、用户业务ID绑定swool动态fd
因为fd为动态的,是每次链接swool时生成的,发消息的时候需要用到,所以每次建立链接时需要跟业务ID进行绑定
2、发送/接受消息
设A用户给B用户发消息,用B用户业务ID去数据库或者redis反查fd,并使用fd进行发送消息(我这里发送的是json,这样就可以发送文字、图片、文件多种类型)。
当swool监听发消息时间,则户主动推送给B用户,B用户获取到消息并解析信息类型
3、检测是否有未读消息
当A向B发送消息,B可以收到消息的前提是B必须在链接这swool,但是实际情况下,用户并不是一直都在链接(是允许用户下线的),所以当链接断开后再次产生链接就需要检测未读消息,并且发送给自己
文章来自:https://blog.csdn.net/qq_18353611/article/details/88995720
作者:phper
转自公众号:PHP自学中心
如有侵权请联系作者删除
感谢博主,喝杯咖啡~
还没有人发表评论