Я пытаюсь создать одноранговую комнату в Twilio с помощью REST Api (php). Код выглядит следующим образом:
<?php
require_once 'Twilio/autoload.php';
use Twilio\Rest\Client;
use Twilio\Jwt\AccessToken;
use Twilio\Jwt\Grants\VideoGrant;
include_once 'config.inc.php';
$identity = "alice";
$client = new Client($TWILIO_API_KEY, $TWILIO_API_SECRET);
$roomName = $client->video->rooms->create([
'uniqueName' => 'TestRoom2',
'type' => 'peer-to-peer',
'enableTurn' => false,
'Duration' => 300,
'MaxParticipants' => 2,
'statusCallback' => 'http://example.org'
]);
//echo $roomName->status;
//token
$token= new AccessToken($TWILIO_ACCOUNT_SID, $TWILIO_API_KEY, $TWILIO_API_SECRET, 300, $identity);
// Create Video grant
$videoGrant = new VideoGrant();
$videoGrant->setRoom($roomName);
// Add grant to token
$token->addGrant($videoGrant);
// return serialized token
echo $token->toJWT();
?>
Я использую только код, предоставленный Twilio в их примере по адресу: https://www.twilio.com/docs/api/video/rooms-resource
Создание одноранговой комнаты.
При тестировании полезной нагрузки данных веб-токена, созданного по адресу: https://jwt.io/
Отображается пустая комната.
{
"jti": "SK1ddcfb6782fa358cb5e2306f8875ac1d-1505266888",
"iss": "SK1ddcfb6782fa358cb5e2306f8875ac1d",
"sub": "AC6c23ea48bd7d6bd681d21301f35c22b6",
"exp": 1505267188,
"grants": {
"identity": "alice",
"video": {
"room": {}
}
}
}
Если я создам комнату, используя следующее, она будет работать нормально.
$roomName = "TestRoom";
Проблема в коде:
$client = new Client($TWILIO_API_KEY, $TWILIO_API_SECRET);
$roomName = $client->video->rooms->create([
'uniqueName' => 'TestRoom2',
'type' => 'peer-to-peer',
'enableTurn' => false,
'Duration' => 300,
'MaxParticipants' => 2,
'statusCallback' => 'http://example.org'
]);
Что не так в моем коде одноранговой комнаты Twilio? Twilio требует слишком много времени, чтобы ответить, и поддержка не так хороша. Они также не предоставили простых примеров, только пример node js, который сбивает с толку.
Требуется помощь.