У меня проблема: я получаю DYNAMIC_USE_STATIC_KEY в консоли при попытке установить соединение.
2 токена, которые генерируются консолью Agora и rtcTokenBuilder, разные, второй длиннее, и при его использовании возникает эта ошибка. С консольным токеном все ок.
Примеры токенов: Консоль: 0068bedd2631cf24edea47479b64ad219ceIAAYXDdhxjKQyDWQEoqK0qEiAYo + dLSyd / YNAaflVD4PJO / ZQc0AAAAAEACMMKzfQDg1YAEAEGAQA
rtcTokenBuilder: 0068bedd2631cf24edea47479b64ad219ceIAADpmWghbJIToZQMC9YrQjBhtFgpdZS4tIlOkXTjk + LKe / ZQc0h39v0IgCa0wUAjQAgAjtAgAgAgCa0wUAjQYgAgAgAg5AgCAjQAjtgAgAg5
rtcTokenBuilder Фрагмент кода:
$appID = "8*************************";
$appCertificate = "+++++++++++++++++++++++++++7";
$channelName = "Test Chamber";
$uid = 0;
$role = RtcTokenBuilder::RoleAttendee;
$expireTimeInSeconds = 300; // 5 min for test purposes
$currentTimestamp = (new DateTime("now", new DateTimeZone('UTC')))->getTimestamp();
$privilegeExpiredTs = $currentTimestamp + $expireTimeInSeconds;
$token = RtcTokenBuilder::buildTokenWithUid($appID, $appCertificate, $channelName, $uid, $role, $privilegeExpiredTs);
echo $token;
js файл:
client.join(token, room, 0, (uid) => { // 0 -> uid
let localStream = AgoraRTC.createStream({
audio: true,
video: true
});
localStream.init(() =>
.....
client.on("onTokenPrivilegeWillExpire", function(){
$.ajax({
url: tokenGenPath, // path to rtcTokenBuilder php generator
method: "POST",
success: function(data){
newToken = data;
},
error: function(){
}
});
client.renewToken(newToken);
});
Здесь говорится, что я не предоставляю предварительное соединение с токеном: Документы Agora
P.S. Я также заметил, что если я создаю токен в консоли Agora для начала, и в случае истечения срока действия этого токена создается новый действительный токен из rtcTokenBuilder, и соединение / разговор продолжается.