【发布时间】:2018-09-25 21:49:38
【问题描述】:
我正在开发一个 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'));
【问题讨论】:
-
joinChannel()函数中发生了什么? -
myChannel.join() 被调用并订阅诸如 messageAdded、memberJoined 等频道事件。
-
我认为 chatClient.getChannelBySid(channelid) 会抛出错误。
-
myChannel是某种全球性的吗?你认为是getChannelBySid是因为你的“加入聊天......”消息没有显示吗? -
myChannel 是全球性的。调试日志显示如下。 Twilsock D:发送请求:“主机”:“aim.twilio.com”,“路径”:“/v1/Instances/ISXXX1/Channels/CH0XX3”,“方法”:“GET”。 Twilsock D:收到回复:正文:{状态:403,消息:“用户不是频道成员”,代码:50400}
标签: twilio twilio-programmable-chat