// 当有客户端连接时,将client_id返回,让mvc框架判断当前uid并执行绑定
public static function onConnect($client_id)
{
Gateway::sendToClient($client_id, json_encode(array(
'type' => 'init',
'client_id' => $client_id
)));
}
收到client_id后利用GatewayClient调用Gateway::bindUid($client_id, $uid)将client_id与当前
uid(用户id或者客户端唯一标识)绑定
如果有群组、群发功能,也可以利用Gateway::joinGroup($client_id, $group_id)将client_id加入到对应分组
Gateway::bindUid($client_id, $uid);
// 加入某个群组(可调用多次加入多个群组)
Gateway::joinGroup($client_id, $group_id);
Gateway::isUidOnline($uid)用户是否在线
向某个uid或者某个群组发送数据时,直接调用GatewayClient的接口Gateway::sendToUid Gateway::sendToGroup 等发送即可
// 向任意uid的网站页面发送数据
Gateway::sendToUid($uid, $message);
// 向任意群组的网站页面发送数据
Gateway::sendToGroup($group, $message);
Events.php中定义5个事件回调方法,
onWorkerStart businessWorker进程启动事件(一般用不到)
onConnect 连接事件(比较少用到)
onMessage 消息事件(必用)
onClose 连接断开事件(比较常用到)
onWorkerStop businessWorker进程退出事件(几乎用不到)
workman-GatewayWorker学习记录
最新推荐文章于 2024-01-01 10:52:21 发布