僵尸是botId吗?这是永久性的吗?

时间:2017-03-01 12:23:44

标签: botframework

我在webhook中收到的botId只是bot范围,还是在找到的所有机器人中都是唯一的?

它是永久的还是可以改变?

截至botId我的意思是您填写的recipient.idreplyToId中的ID向端点https://smba.trafficmanager.net/apis/v3/conversations/{{skype.idRecipient}}/activities发送消息请求:

{
    "text": "God help us!",
    "type": "message",

    "from": {
        "id": "{{skype.idBot}}",
        "name": "bot"
    },
   "recipient": {
        "id": "{{skype.idRecipient}}",
        "name": "user"
    },

    "replyToId": "{{skype.idBot}}"
}

1 个答案:

答案 0 :(得分:2)

您所谈论的ID仅在当前频道(Skype / Facebook / Slack ...)中是唯一的,因为它是ChannelAccount的ID。 以下是文档中的一些陈述:

  

每个机器人和用户在每个频道中都有一个帐户。帐户   包含标识符(id)和其他信息丰富的非结构化bot   数据,如可选名称。

另外

  

频道帐户仅在其相关频道中具有意义

因此不排除id可能在另一个频道上重复。 那么永久性呢,它取决于您使用的频道,如文档中所述:

  

ID,帐户,邮箱和帐户之间关联的稳定性   人们依赖于渠道

但是如果您希望它“在找到的所有机器人中都是唯一的”,那么您可以通过组合AppIDChannelID和用户ID来创建ID。

此处有一篇内容丰富的guide关于Bot Framework中ID的信息,可能会对您有所帮助