【问题标题】:Why Botframework bot only works only on Emulator and none of the other channels?为什么 Botframework bot 仅适用于 Emulator 而不适用于其他渠道?
【发布时间】:2018-03-15 20:25:36
【问题描述】:

机器人信息

  • 机器人句柄:Medibot_medibuddy
  • 应用 ID:dcda60fe-72d4-4796-a728-de8fa3aef2a5
  • SDK 平台:Node.js
  • SDK 版本:最新
  • 活跃渠道:网络聊天、Facebook、Skype
  • 部署环境:Azure 应用服务

问题描述

我们的机器人(Medibot,https://medibotmb.azurewebsites.net)突然停止在包括 WebChat 在内的所有渠道上工作。虽然它在模拟器上完美运行。几天以来,我们一直在尝试调试此问题,但在线上的任何解决方案/建议都没有成功。我尝试使用日志流和调试控制台来捕获异常,但没有。

代码示例

代码托管在https://github.com/nirmalrayan/medibot

复制步骤

  1. 访问 medibotmb.azurewebsites.net。这应该会打开 WebChat 频道的 index.html 文档。
  2. 页面尝试加载很长时间,并抛出 HTTP 状态:500,HTTP 子状态:1001,HTTP 原因:内部服务器错误。
  3. Bot 框架针对 Facebook 和 Web 聊天频道显示错误消息“向您的 bot 发送此消息时出错:HTTP 状态代码 GatewayTimeout”。

预期行为

  1. 使用网络聊天 iframe 呈现 index.html 页面。
  2. 在用户发送第一条消息后,机器人会用英雄卡进行欢迎。

实际结果

什么都没有发生。该页面未呈现。测试时在日志流中没有抛出异常。即使是 botframework 'Test' 也不会在 Azure 应用服务日志流中引发任何错误。

node.js

【问题讨论】:

  • 暗示您的问题在某种程度上比其他人(或他人自己的工作等)的问题更紧迫,通常不会导致积极的事情
  • 请尝试使用 botbuilder-azure npm 包实现自定义状态客户端。 blog.botframework.com/2017/07/21/saving-state-azure-nodejs
  • 确切的 SDK 版本是多少?
  • 当我刚才检查您的机器人服务器时,我收到了“未找到服务器”错误。您的机器人服务器似乎不再在线。
  • 如果还有问题,请在此处打开问题 --> github.com/microsoft/botbuilder/issues/new

标签: node.js azure bots botframework


【解决方案1】:

https://medibotmb.azurewebsites.net的index.html中没有看到iframe代码

【讨论】:

  • 这是因为 index.html 目前没有在任何浏览器中呈现。代码可在github.com/nirmalrayan/medibot 获得,iframe 位于 chat-box-container div 中
  • 我刚刚在本地测试了 index.html,效果很好,机器人正在响应
  • 这个问题又回到了同一个机器人身上。我从 Azure 中销毁了整个资源组并重新创建了所有内容,但问题仍然存在。目前我的机器人凭据是:机器人句柄:medibot_4ttx4fdwLSX 应用 ID:e3c69ebc-068b-4fa6-a18e-b42b8311adeb SDK 平台:Node.js SDK 版本:最新活动渠道:WebChat、Skype 部署环境:Azure 应用服务
  • botframework 中似乎有一个严重的错误。我的代码在模拟器中运行良好且速度非常快,但在任何其他频道上都无法运行。
猜你喜欢
  • 2021-08-06
  • 1970-01-01
  • 1970-01-01
  • 2021-06-25
  • 1970-01-01
  • 1970-01-01
  • 2012-12-06
  • 1970-01-01
  • 2021-08-06
相关资源
最近更新 更多