【问题标题】:How do I embed a Web Chat to my Bot?如何将网络聊天嵌入到我的 Bot?
【发布时间】:2016-07-27 15:35:53
【问题描述】:

我通过 Bot Framework 管理门户注册并部署了一个功能性(足够)的机器人。当我通过管理门户中的文本框对其进行测试时,效果很好。现在我正在尝试在网页中添加网络聊天。

我已经进入并配置了网络聊天,现在,我只使用IFrame 它为我提供了硬编码的秘密令牌。此外,我在那里选择了“在网络聊天中启用此机器人”复选框。需要明确的是,在添加 iframe 和密钥后,我已经重新部署了我的机器人。

完成后,“网络聊天”会独立于所有其他频道显示在上方,但“已发布”滑块滑到“关闭”。

当我使用网络聊天 iframe 和密钥部署我的机器人时,我获得了网络聊天控件,我可以在其中输入,但它从不响应我。不过,如果我在管理面板中测试我的机器人,它的效果很好。

其他信息:

  • 我使用自定义域和商业 SSL 在 Azure 中托管它
  • 我的自定义域是三级域(即https://bot.mydomain.com
  • 网络聊天既不支持本地调试也不支持在线
  • Bot Emulator 在本地运行良好
  • 如果我将 Bot Emulator 指向我在线部署的机器人,它会非常好用

我是否需要做任何其他事情才能在我的网站中嵌入功能性网络聊天控件?

【问题讨论】:

    标签: botframework


    【解决方案1】:

    服务出现临时问题,需要将 iframe 中的查询参数从“s”更改为“t”。如果您进行了此更改,您应该切换回使用“s”。

    发布开/关决定了该频道是否会在机器人目录中列为可用。由于 Bot Directory 尚未发布,因此这些按钮已被禁用。无论该设置如何,WebChat iframe 都应该可以工作。

    【讨论】:

    • 我的应用 ID 是 PhotoBot。仅供参考,我刚刚添加了附加信息。本地模拟器作品指向在线托管的机器人。
    • 发现同样的问题。正在调查。
    • 它最初不起作用,但后来确实起作用了.. 奇怪 - 也许某些东西处于某种暂时状态?不确定,但我现在正在收到回复。谢谢指正!
    • 尝试再次处理来自门户的 iframe 链接并将 t 更改为 s 以确保您的密码正确。它在我这边回应。
    • 我假设您将确保更新管理门户以更正它提供“s”而不是“t”的错误?还是我应该联系某个人,让团队知道这一点?
    【解决方案2】:

    我在使用 Bot Framework v3 时遇到了同样的问题,直到我在 Azure 上更新了我的 Node app.js 并将 MicrosoftAppId 和 MicrosoftAppPassword 替换为 appID 和 appPassword 后,网络聊天才响应,见下文。

    var connector = new builder.ChatConnector({
        //MicrosoftAppId: process.env.MICROSOFT_APP_ID,
        //MicrosoftAppPassword: process.env.MICROSOFT_APP_PASSWORD
        appId: process.env.MICROSOFT_APP_ID,
        appPassword: process.env.MICROSOFT_APP_PASSWORD
    });
    

    另外,我不必将查询字符串从“s”更改为“t”,这个缺陷似乎已修复。

    【讨论】:

      猜你喜欢
      • 2018-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-26
      • 1970-01-01
      相关资源
      最近更新 更多