1. Go to this page and download the library: Download rtckit/react-esl 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/ */
rtckit / react-esl example snippets
/* Instantiate the object */
$client = new \RTCKit\React\ESL\InboundClient('127.0.0.1', 8021, 'ClueCon');
$client
->connect() /* Initiate the connection; the library handles the authentication process */
->then(function (\RTCKit\React\ESL\InboundClient $client) {
/* At this point our connection is established and authenticated; we can fire up any requests */
$request = new \RTCKit\ESL\Request\Api;
$request->setParameters('switchname');
return $client->api($request);
})
->then(function (\RTCKit\ESL\Response $response) use ($client, $stdio) {
$switchname = trim($response->getBody());
echo 'Connected to ' . $switchname . PHP_EOL;
/* Issue more requests here! */
})
->otherwise(function (Throwable $t) {
echo 'Something went wrong: ' . $t->getMessage() . PHP_EOL;
});
/* Instantiate the object */
$server = new \RTCKit\React\ESL\OutboundServer('127.0.0.1', 8084);
/* Configure the handler */
$server->on('connect', function (\RTCKit\React\ESL\RemoteOutboundClient $client, \RTCKit\ESL\Response\CommandReply $response) {
/* The library already sent the `connect` request at our behalf.
* $response holds initial response. */
$vars = $response->getHeaders();
echo 'Outbound connection from ' . $vars['core-uuid'] . PHP_EOL;
echo 'Call UUID ' . $vars['channel-unique-id'] . PHP_EOL;
/* Issue requests */
$client->resume();
$client->linger();
$client->myEvents('json');
$client->divertEvents('on');
/* Listen to events */
$client->on('event', function (\RTCKit\ESL\Response\TextEventJson $response): void {
/* Consume the event here! */
});
/* Add your business logic here */
/* ... */
/* Disconnect client */
$client->close();
});