Twilio Chat: Ошибка. Пользователь не является участником канала при присоединении к частному каналу.
Я разрабатываю приложение для чата 1:1. Я использую сервер PHP для создания частного канала перед запуском приложения. Каналы созданы правильно.
Созданы пользовательские токены, клиент чата также создан правильно. Я вижу, что пользователь также создан в сервисе.
При подключении к частному каналу выдает ошибку.
код:50400 сообщение:"Пользователь не является участником канала" статус: 403
Javascript код:
Twilio.Chat.Client.create(token,clientOptions).then(client => {
chatClient = client;
showMessage('Connecting.....');
chatClient.getChannelBySid(channelid)
.then(function(chosenChannel) {
showMessage('Joining Chat.....');
myChannel=chosenChannel;
joinChannel();
})
.catch(function(err) {
console.log(err);
})
});
Он показывает сообщение "Соединение...." и затем останавливается с ошибкой.
PHP-код:
$client = new Client("sid", "token");
$channel = $client->chat->services("serviceid")->channels
->create(array('friendlyName' => $friendlyName, 'uniqueName' => $uniqueName, 'type' => 'private'));
1 ответ
Twilio разработчик евангелист здесь.
Когда вы создаете частный канал, на этом этапе невозможно определить, кому разрешено входить в канал. Из документации:
Частные каналы не видны Пользователям, которые не были приглашены или добавлены к ним. Члены частного канала могут быть добавлены только другими участниками с достаточными разрешениями или через REST API в соответствии с вашей бизнес-логикой.
Итак, чтобы пользователь мог присоединиться к частному каналу, вам необходимо:
- Добавьте их в канал, используя REST API
- Пригласите пользователя на канал от администратора канала частного канала
Дайте мне знать, если это вообще имеет смысл