基于websocket的在线聊天系统
php-swoole扩展
php-redis扩展
文件 | 说明 |
---|---|
tools.php | redis连接代码,websocket广播代码 |
init.php | 清理redis相关数据集的代码 |
ws.php | 创建websocket服务器 |
连接编号存储在redis集合中,用户名以及用户数以键值形式存储在redis中。
nohup /usr/bin/php /var/www/ws.php >> /dev/null 2>&1 &
格式说明 | 接收对象 | json |
---|---|---|
用户名检查 | 请求用户 | {from:sys, type:nameCheck, data:[failsuccess]} |
初始化用户列表 | 请求用户 | {from:sys, type:initUser, data:[用户名数组]} |
用户登录提示 | 所有用户 | {from:sys, type:login, data:登录用户名} |
用户退出提示 | 除了请求用户 | {from:sys, type:logout, data:退出用户名} |
转发public消息 | 除了请求用户 | {from:请求用户, type:public, data:消息内容} |
转发private消息 | 指定用户 | {from:请求用户, type:private, data:消息内容"} |
支持websocket对象
打开index.html页面即可
格式说明 | json |
---|---|
用户登录 | {type:login, to:sys, data:你的名字} |
发送public消息 | {type:public, to:all, data:消息内容} |
发送private消息 | {type:private, to:消息接收人, data:消息内容} |