【问题标题】:Bot Emulator not spawning ngrok机器人模拟器没有产生 ngrok
【发布时间】:2019-12-17 09:56:44
【问题描述】:

我正在尝试使用 Microsoft 的虚拟助手模板 (https://github.com/microsoft/botframework-solutions/blob/master/docs/readme.md),虽然我最终通过 Azure 中的 Web Chat 成功安装并运行了它,但我无法让它在本地的 Bot Emulator 中运行。我已经安装了 ngrok,并且 Bot Emulator 设置为在启动时启动它,它会抛出一个错误。

在 Bot Emulator 设置中,我填充了 ngrok 可执行文件的路径,我选中了 Bypass ngrok for local addresses 复选框(来自此解决方案的设置文档中的示例,我在 Emulator 启动时运行 ngrok选中复选框,Localhost override 设置为 localhost(同样,来自解决方案示例),并且 Locale 设置为 en-US。我尝试检查和取消选中 Bypass ngrok for local addresses 复选框,但结果是相同的。

以下是 Bot Emulator 中连接尝试的输出。

[12:02:12]Emulator listening on http://localhost:50757
[12:02:33]Error: The bot is remote, but the service URL is localhost.
Without tunneling software you will not receive replies.
[12:02:33]Connecting to bots hosted remotely [12:02:33]Configure ngrok
[12:02:33]Failed to spawn
ngrok{"error_code":104,"status_code":503,"msg":"ngrok is not yet ready
to start tunnels","details":{"err":"a successful ngrok tunnel session
has not yet been established"}}

我怀疑缺少一些 ngrok 配置,但文档仅显示了与使用 ngrok 进行隧道传输相关的 Bot Emulator 设置。

【问题讨论】:

  • 您的 ngrok 似乎有问题。你能打开命令行,导航到包含 ngrok.exe 的目录并运行'ngrok http 3978 -host-header="localhost:3978"'吗?应该发生的是您的 CL 将被 ngrok 状态信息替换。
  • 因此您建议的命令输出版本、区域、Web 界面和连接列表(所有计数均为 0)。它还列出了与某些 IP 地址“重新连接”的会话状态和“现有连接被远程主机强制关闭”的关闭语句。然后会话状态切换到“正在重新连接(已解析的 tunnel.us.ngrok.com 没有记录)”,然后返回到带有 IP 地址的先前语句。
  • 看来一切都很好。我将所有内容重新部署到一个新的虚拟机上,虽然我最初仍然遇到 ngrok 无法生成错误,但这可能只是时间问题,因为它稍后会连接并且虚拟助手在机器人模拟器中加载和运行。
  • 虚拟机 -> Ngrok -> Azure Bot 服务注册 -> Bot Framework Emulator(确保将您的 App Id 和密码添加到 Bot 和模拟器)

标签: botframework ngrok


【解决方案1】:

我将所有内容重新部署到一个新的虚拟机上,虽然我最初仍然遇到 ngrok 无法生成错误,但这只是一个时间问题,因为它稍后会连接并且虚拟助手在机器人模拟器中本地加载和运行。感谢大家的建议。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 1970-01-01
    • 1970-01-01
    • 2011-02-01
    • 1970-01-01
    • 2022-10-16
    相关资源
    最近更新 更多