PHP 인터페이스 Aerys\Websocket

파일 보기 프로젝트 열기: amphp/aerys

공개 메소드들

메소드 설명
onClose ( integer $clientId, integer $code, string $reason ) Invoked when the close handshake completes
onData ( integer $clientId, Websocket\Message $msg ) Invoked when data messages arrive from the client
onHandshake ( aerys\Request $request, aerys\Response $response ) Respond to websocket handshake requests
onOpen ( integer $clientId, mixed $handshakeData ) Invoked when the full two-way websocket upgrade completes
onStart ( Aerys\Websocket\Endpoint $endpoint ) Invoked when starting the server
onStop ( ) Invoked when the server is stopping

메소드 상세

onClose() 공개 메소드

Invoked when the close handshake completes
public onClose ( integer $clientId, integer $code, string $reason )
$clientId integer A unique (to the current process) identifier for this client
$code integer The websocket code describing the close
$reason string The reason for the close (may be empty)

onData() 공개 메소드

Invoked when data messages arrive from the client
public onData ( integer $clientId, Websocket\Message $msg )
$clientId integer A unique (to the current process) identifier for this client
$msg Websocket\Message A stream of data received from the client

onHandshake() 공개 메소드

If a websocket application doesn't wish to impose any special constraints on the handshake it doesn't have to do anything in this method and all handshakes will be automatically accepted. The return value from onHandshake() invocation (which may be the eventual generator return expression) is passed as the second parameter to onOpen().
public onHandshake ( aerys\Request $request, aerys\Response $response )
$request aerys\Request The HTTP request that instigated the handshake
$response aerys\Response Used to set headers and/or reject the handshake

onOpen() 공개 메소드

Invoked when the full two-way websocket upgrade completes
public onOpen ( integer $clientId, mixed $handshakeData )
$clientId integer A unique (to the current process) identifier for this client
$handshakeData mixed The return value from onHandshake() for this client

onStart() 공개 메소드

All messages are sent to connected clients by calling methods on the Endpoint instance passed in onStart(). Applications must store the endpoint instance for use once the server starts. If the websocket application has external resources it needs to initialize (like database connections) this is the place to do it. If this method is a Generator it will be resolved as a coroutine before the server is allowed to start. Additionally, this method returns a Promise the server will not start until that promise resolves.
public onStart ( Aerys\Websocket\Endpoint $endpoint )
$endpoint Aerys\Websocket\Endpoint

onStop() 공개 메소드

If the application initialized resources in Websocket::onStart() this is the place to free them. This method is called right before the clients will be all automatically closed. There is no need to call Endpoint::close() manually in this method. If this method is a Generator it will be resolved as a coroutine before the server is allowed to fully shutdown. Additionally, if this method returns a Promise the server will not shutdown until that promise resolves.
public onStop ( )