机器人框架模拟器 - 在本地部署机器人并安装在团队中

Posted

技术标签:

【中文标题】机器人框架模拟器 - 在本地部署机器人并安装在团队中【英文标题】:Bot framework Emulator - deploy bot on premise and install on teams 【发布时间】:2021-10-20 23:41:51 【问题描述】:

我正在尝试使用 Bot framework Emulator 创建一个 Microsoft Teams Bot,我可以在本地部署并安装在 Microsoft Teams 上。

我有一个简单的 Bot,我从 Bot Framework Composer 开始,当我点击“Start bot”时工作正常。

    我已将机器人导出为 zip

    我已经使用Visual Studio 2019 运行它,它工作正常。

    我已尝试使用Bot Framework Emulator 进行连接,效果正常。

    我已经在本地 IIS 上部署了同一个机器人,我已经设法使用 Bot Framework Emulator 连接到该机器人。

什么不起作用

我已将机器人部署到远程服务器。当我尝试使用模拟器时,它不再工作了。 我得到的错误是Error: The bot is remote, but the service URL is localhost. Without tunneling software you will not receive replies.

Microsoft Teams 使用App Studio 我已经完成了以下步骤:

    使用以下功能创建新应用程序 填写“App Details”中的输入并生成一个新的App ID,生成的AppId,我在appsettings.json上设置了键MicrosoftAppId 在“机器人”菜单上,我设置了一个新机器人。 配置“消息传递端点地址” 在“测试和分发”上,点击在团队中安装您的应用以进行测试。

机器人真的很安静,我做错了什么?

【问题讨论】:

【参考方案1】:

如果我正确理解您的问题,您正尝试从本地在 Teams 上运行机器人。我不明白你为什么要使用Bot Framework Emulator

为了从本地在 Teams 上调试和运行机器人,您可以使用以下两种方法:

    Debug a bot from any channel using ngrok。它需要订阅Microsoft Azure。 如果您没有 Azure 订阅,可以尝试使用 App Studio。您做得很好,只需将https://example.ngrok.io/api/messages URL 或部署您的机器人的服务的面向公众的 URL 放在消息传递端点中。

要运行 ngrok,这里是命令 ngrok http 44327 -host-header=localhost:44327。相应地更改端口,您可以检查 Properties -> launchSettings.json 以了解您的端口或更改(在 c# 中)。

一些有用的文档:

    Prerequisites: Get started with Microsoft Teams app development Build your first conversational bot for Microsoft Teams

【讨论】:

以上是关于机器人框架模拟器 - 在本地部署机器人并安装在团队中的主要内容,如果未能解决你的问题,请参考以下文章

机器人模拟器没有产生 ngrok

自己实现一个RPC框架

在另一台机器上模拟本地用户

本地机器的模拟在它应该失败时成功

如何获取访问令牌并使用它

错误:机器人的MSA appId或密码不正确