【问题标题】:How to change name of twilio channel如何更改 twilio 频道的名称
【发布时间】:2018-02-20 12:53:09
【问题描述】:

Twilio 文档页面提到使用角色更改频道名称 (https://www.twilio.com/docs/api/chat/rest/roles),但未提供任何示例代码。在下面的示例中我将如何做到这一点:

var channel = this.state.channel;
var accountSid = 'ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
var authToken = 'your_auth_token';
var Twilio = require('twilio').Twilio;

var client = new Twilio(accountSid, authToken);
var service = client.chat.services('ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX');

service.roles.list().then(function(response) {
 // what do I insert here to change the name of the channel variable
});

【问题讨论】:

    标签: twilio twilio-api


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    在 Twilio 可编程聊天中,每个用户在创建时都会获得一个默认角色。还有一个默认的频道角色分配给每个加入频道的成员。角色说明每个用户/成员拥有什么权限。有一个guide on roles and permissions available in the Chat documentation,我建议你通读一遍。

    默认用户角色具有以下权限:

    • 创建频道
    • 获取频道列表(公开、加入和邀请)
    • 加入频道(公开或受邀)
    • 编辑自己的用户信息

    并且默认频道成员角色具有以下权限:

    • 离开频道
    • 获取成员列表
    • 获取频道消息
    • 添加消息
    • 编辑自己的消息
    • 编辑自己的消息属性
    • 删除自己的消息

    您可以update these roles or create new roles using the REST API。如果您希望用户能够更新频道名称,您需要授予他们editChannelName 权限。您可以在用户级别或频道级别执行此操作。一旦您将此权限授予角色,或创建具有此权限的新角色并将其分配给用户,用户将能够从 SDK 调用 channel.updateFriendlyName。

    或者,您可以使用Channels resource in the REST API to change the friendly name of the channel too。

    channel.update({
      friendlyName: 'channel_name',
    })
    .then(response => {
      console.log(response);
    });
    

    【讨论】:

    • 嗯,我收到错误消息“channel.update 不是函数”.....
    • 好的,你有channel = this.state.channel;。那是什么?一个实际的channel 对象?还是通道 SID?还有什么?
    • 这是真正的频道对象。
    • 在文档中,它表明在通道对象上调用 update 应该可以工作:twilio.com/docs/api/chat/rest/…。看起来您使用的是 Twilio Node 版本 3,所以应该可以。看起来好像您正在从一个状态获取通道对象,它是否已被序列化为它的属性?
    • 我认为这不是问题所在。我能够使用相同的通道对象设置回调。很奇怪。
    猜你喜欢
    • 2019-11-22
    • 1970-01-01
    • 2019-01-13
    • 2019-12-28
    • 1970-01-01
    • 2018-07-05
    • 1970-01-01
    • 2020-01-17
    • 1970-01-01
    相关资源
    最近更新 更多