文章目录
- gatewayworker使用说明
- onConnect 说明
gatewayworker使用说明
gatewayworker里只需要使用Applications\YourApp下的Events.php文件。
对文件的代码进行一下改造,如下,我们只需要用到onConnect方法,写法固定,其他方法都是空的。
<?php
use \GatewayWorker\Lib\Gateway;
/**
* 主逻辑
* 主要是处理 onConnect onMessage onClose 三个方法
* onConnect 和 onClose 如果不需要可以不用实现并删除
*/
class Events
{
/**
* 当客户端连接时触发
* 如果业务不需此回调可以删除onConnect
*
* @param int $client_id 连接id
*/
public static function onConnect($client_id)
{
// 向当前client_id发送数据
Gateway::sendToClient($client_id, json_encode(array(
'type' => 'init',
'client_id' => $client_id
)));
}
/**
* 当客户端发来消息时触发
* @param int $client_id 连接id
* @param mixed $message 具体消息
*/
public static function onMessage($client_id, $message)
{
}
/**
* 当用户断开连接时触发
* @param int $client_id 连接id
*/
public static function onClose($client_id)
{
}
}
onConnect 说明
当有websocket连接连上gatewayworker服务器的时候,就会把gatewayworker创建的客户端client_id给返回去。type是自己定义的一个类型。发消息会有不同的类型,文本,图片,表情。init作为初始化的代表。根据不同的类型,我们会进行不同的处理。
Events.php就做这些,后续几乎不再动整个文件了。