tansoft/websocketclient

websocket客户端库

1.0.1 2018-07-13 08:31 UTC

This package is not auto-updated.

Last update: 2024-09-21 16:16:23 UTC


README

简单的websocket客户端,支持数据记录和回放。

依赖项目 Textalk/websocket

安装

推荐使用 Composer 进行安装。

composer require tansoft/websocketclient

客户端使用

require('vendor/autoload.php');

class MyHandler implements WebSocket\ISocketHandler{
    public function onConnect(&$client){
        //init send something
        $client->send($reg);
    }
    public function onReceive(&$client, $msg){
        //receive something with $msg
        //return false for exit
        return true;
    }
    public function onError(&$client, $errno, $errmsg){
        echo('socket error '.$errno.':'.$errmsg);
        //return true for auto reconnect
        return true;
    }
}

$client = new WebSocket\WebSocketClient('ws://echo.websocket.org/', new MyHandler);
//setup auto ack settings
$client->setupAck('{"event":"ping"}', '{"event":"pong"}', KEEPALIVE_TIMEOUT_SECOND);

//setup rawdata record
$client->setupRawLog('rawdata.log');
$client->loop();

//or

//setup rawdata playback
//use flag WebSocket\WebSocketClient::RAWLOG_PLAYBACKMODE_QUICK for playback with no sleep
$client->setupRawLog('rawdata.log', WebSocket\WebSocketClient::RAWLOG_PLAYBACKMODE_NORMAL);
$client->loop();

更新日志

1.0.0

  • 支持自动确认。
  • 支持基于事件的回调。
  • 支持原始数据的记录和回放。