1. Go to this page and download the library: Download amphp/websocket-client library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
amphp / websocket-client example snippets
unction Amp\Websocket\Client\connect;
// Amp\Websocket\Client\connect() uses the WebsocketConnection instance
// defined by Amp\Websocket\Client\websocketConnector()
$connection = connect('ws://localhost:1337/websocket');
foreach ($connection as $message) {
// $message is an instance of Amp\Websocket\WebsocketMessage
}
use Amp\Websocket\Client\Rfc6455ConnectionFactory;
use Amp\Websocket\Client\Rfc6455Connector;
use Amp\Websocket\Client\WebsocketHandshake;
use Amp\Websocket\ConstantRateLimit;
use Amp\Websocket\Parser\Rfc6455ParserFactory;
use Amp\Websocket\PeriodicHeartbeatQueue;
$connectionFactory = new Rfc6455ConnectionFactory(
heartbeatQueue: new PeriodicHeartbeatQueue(
heartbeatPeriod: 5, // 5 seconds
),
rateLimit: new ConstantRateLimit(
bytesPerSecondLimit: 2 ** 17, // 128 KiB
framesPerSecondLimit: 10,
),
parserFactory: new Rfc6455ParserFactory(
messageSizeLimit: 2 ** 20, // 1 MiB
),
frameSplitThreshold: 2 ** 14, // 16 KiB
closePeriod: 0.5, // 0.5 seconds
);
$connector = new Rfc6455Connector($connectionFactory);
$handshake = new WebsocketHandshake('wss://example.com/websocket');
$connection = $connector->connect($handshake);
use Amp\Websocket\Client\WebsocketHandshake;
use Amp\Websocket\WebsocketCloseCode;
use function Amp\Websocket\Client\connect;
// Connects to the websocket endpoint at libwebsockets.org
// which sends a message every 50ms.
$handshake = (new WebsocketHandshake('wss://libwebsockets.org'))
->withHeader('Sec-WebSocket-Protocol', 'dumb-increment-protocol');
$connection = connect($handshake);
foreach ($connection as $message) {
$payload = $message->buffer();
printf("Received: %s\n", $payload);
if ($payload === '100') {
$connection->close();
break;
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.