0

我正在使用多聊天机器人方法的项目中使用 Microsoft bot 框架(Node js)。

在使用 Microsoft Bot Framework 注册机器人后,添加多个 Skype for Business 频道并将机器人注册到 Skype for Business 不同的租户(由 Name 参数替换为机器人显示名称和来自其域的唯一用户帐户),我'我试图从来自 SFB 的会话消息中的“机器人”对象中识别机器人,这将帮助我检测用户域并确保用户根据他的域接收正确的答案当使用模拟器测试这种方法时我' m 总是接收相同的机器人对象。

因此,我正在尝试修改 BotFramework WebChat Emulator 源代码以模拟 SFB,并通过将生成的聊天机器人 sip 放入会话中来测试我的解决方案,从而使用新的文本框设置 SFB 开发环境。

我在问是否有办法在 Microsoft BotFramework WebChat Emulator 中模拟 SFB?

先感谢您!

4

1 回答 1

0

Bot Framework Emulator无法模拟Skype for Business,因为:

  • 模拟器有一个内置的连接器服务,它更多地模仿了Direct Line通道的连接器服务。此服务的行为与 Skype for Business 连接器服务的行为不完全匹配。

  • 模拟器使用Web Chat作为 UI 客户端。 Skype for Business有各种客户端,它们都不会像 Web Chat 那样呈现活动。Skype for Business 客户端不支持相同的消息类型(卡片、按钮等)。

如果您使用的是 v4 模拟器,您可以修改 .bot 文件并提供您喜欢的任何机器人 ID:

{
    "name": "TestBot",
    "description": "",
    "services": [
        {
            "type": "endpoint",
            "appId": "",
            "appPassword": "",
            "endpoint": "http://localhost:3979/api/messages",
            "id": "sip:testfakebotid",
            "name": "http://localhost:3979/api/messages"
        }
    ],
    "padlock": "",
    "version": "2.0",
    "overrides": null,
    "path": "C:\\BotFiles\\TestBot.bot"
}

然后,此 id 将在每条消息中发送给机器人,作为 activity.Recipient.id:

在此处输入图像描述

于 2018-11-27T23:23:44.320 回答