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 в соответствии с вашей бизнес-логикой.

Итак, чтобы пользователь мог присоединиться к частному каналу, вам необходимо:

Дайте мне знать, если это вообще имеет смысл

Другие вопросы по тегам