【问题标题】:How to integrate bot to website using direct line API如何使用直线 API 将机器人集成到网站
【发布时间】:2018-11-07 00:55:40
【问题描述】:
<!DOCTYPE html>
<html>
  <head>
    <link href="https://cdn.botframework.com/botframework-webchat/latest/botchat.css" rel="stylesheet" />
  </head>
  <body>
    <div id="bot"/>
    <script src="https://cdn.botframework.com/botframework-webchat/latest/botchat.js"></script>
    <script>
      BotChat.App({
        directLine: { secret: direct_line_secret },
        user: { id: 'userid' },
        bot: { id: 'botid' },
        resize: 'detect'
      }, document.getElementById("bot"));
    </script>
  </body>
</html>

我在 github 上看到了这段代码,使用直线 API 将我的机器人集成到我的网站。我在 azure 上创建了一个直线通道并复制了直线密钥和我的 botid,但我不知道用户 ID 是什么。有人可以帮我吗?我已经将我的机器人作为应用托管在 azure 上

【问题讨论】:

    标签: c# botframework


    【解决方案1】:

    UserId 是会话中用户的唯一标识符,即使用此机器人实例的用户的 Id。

    此 id 对用户不可见(如果您设置了它的名称),它用于识别特定数据 (UserData) 等资源,知道消息是来自机器人还是来自用户,以及许多其他事情。

    您还可以设置此用户的name 属性,用于网络聊天显示:

    user: { id: 'userid', name: 'Name of your user' },
    

    在某些频道上,此 id 的值由频道管理,在其他频道上,您可以设置它们,例如在 Webchat 中。我在 StackOverflow 上回复了这些 Id 生成here

    您可以在文档的这篇文章中了解 Bot Framework 上下文中的主要 ID:ID fields in the Bot Framework

    【讨论】:

    • 如果我删除它,机器人会被集成吗?我只是想把它集成到网站上。
    • 您必须提供用户 ID。如果您不需要在此处添加特定内容,我的建议是为每个聊天用户生成不同的用户 ID,例如避免 userData 中的冲突。例如,您可以通过在 javascript 中生成随机值来做到这一点
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-24
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多