<?php
use \Peterujah\Agora\Agora;
use \Peterujah\Agora\User;
use \Peterujah\Agora\Roles;
use \Peterujah\Agora\Builders\RtcTokenLegacy;
$channelName = "7d72365eb983485397e3e3f9d460bdda";
$uid = 2882341273;
$uidStr = "2882341273";
$expireTimeInSeconds = 3600;
$currentTimestamp = (new DateTime("now", new DateTimeZone('UTC')))->getTimestamp();
$privilegeExpiredTs = $currentTimestamp + $expireTimeInSeconds;
$client = new Agora(
getenv("AGORA_APP_ID"), // Need to set environment variable AGORA_APP_ID
getenv("AGORA_APP_CERTIFICATE"), // Need to set environment variable AGORA_APP_CERTIFICATE
);
$client->setExpiration($privilegeExpiredTs);
$user1 = (new User($uid))
->setPrivilegeExpire($privilegeExpiredTs)
->setChannel($channelName)
->setRole(Roles::RTC_PUBLISHER);
$token = RtcTokenLegacy::buildTokenWithUid($client, $user1);
echo 'Token with int uid: ' . $token . PHP_EOL;
$user2 = (new User($uidStr))
->setPrivilegeExpire($privilegeExpiredTs)
->setChannel($channelName)
->setRole(Roles::RTC_PUBLISHER);
$token = RtcTokenLegacy::buildTokenWithUserAccount($client, $user2);
echo 'Token with user account: ' . $token . PHP_EOL;
|