myaccountl/laravel-workerman
最新稳定版本:v1.0.2
Composer 安装命令:
composer require myaccountl/laravel-workerman
包简介
README 文档
README
发布配置
php artisan vendor:publish --tag=workerman
开发
- 实现
Myaccountl\LaravelWorkerman\Events\WorkermanEventInterface接口按不同事件进行业务逻辑编写 - 者继承
Myaccountl\LaravelWorkerman\Events\EventsHandle该类已经实现了WorkermanEventInterface并实现了基础的用户绑定、广播分组加入和OnConnect连接事件,该事件传入$client_id可绑定Myaccountl\LaravelWorkerman\Events\WSConnectEvent实现自己的websocket连接事件业务, - 重写该该类的OnMessage方法时须调用parent::OnMessage 否则用户绑定和广播分组加入将不可用
使用
Windows
>
php artisan workerman --s=register// 启动注册中心
php artisan workerman --s=gateway// 启动网关
php artisan workerman --s=worker// 启动业务处理Linux
php artisan workerman <action> {--d} {--s=*}// 操作wokerman启动 停止 重启 查看状态等
###### 参数说明:- action:
- start -- 启动
- start -- 启动
- stop -- 停止
- stop -- 停止
- restart -- 重启
- restart -- 重启
- status -- 查看状态
- status -- 查看状态
- --d: 后台启动
- --s: 要启动的服务 默认:all 启动register gateway worker 所有服务
- 参数值为:all register gateway worker 中的一个
- 参数值为:all register gateway worker 中的一个
- 示例:
php artisan workerman start --s=gateway --s=worker
- 示例:
- action:
使用示例
一、客户端发送
// 加入分组
{"type": "join", "group": "broadcast:user:channel"}
// 心跳 每30秒发送一次
{"type": "ping"}
// 绑定用户 uid为用户加密ID
{"type": "bind", "uid": "YWRleUhWK25PVTQ9"}
二、服务端发送消息到客户端
use GatewayWorker\Lib\Gateway;
Gateway::sendToUid(7, json_encode(['type' => 'test', 'message' => 'user_send 测试消息!'], JSON_UNESCAPED_UNICODE))
Gateway::sendToGroup('broadcast:user:channel', json_encode(['type' => 'test', 'message' => 'group 测试消息!'], JSON_UNESCAPED_UNICODE))
统计信息
- 总下载量: 37
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-10-12