如何使用直线 API 将机器人集成到网站
Posted
技术标签:
【中文标题】如何使用直线 API 将机器人集成到网站【英文标题】:How to integrate bot to website using direct line 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 上
【问题讨论】:
【参考方案1】:UserId
是会话中用户的唯一标识符,即使用此机器人实例的用户的 Id。
此 id 对用户不可见(如果您设置了它的名称),它用于识别特定数据 (UserData) 等资源,知道消息是来自机器人还是来自用户,以及许多其他事情。
您还可以设置此用户的name
属性,用于网络聊天显示:
user: id: 'userid', name: 'Name of your user' ,
在某些频道上,此 id 的值由频道管理,在其他频道上,您可以设置它们,例如在 Webchat 中。我在 *** 上回复了这些 Id 生成here。
您可以在文档的这篇文章中了解 Bot Framework 上下文中的主要 ID:ID fields in the Bot Framework
【讨论】:
如果我删除它,机器人会被集成吗?我只是想把它集成到网站上。 您必须提供用户 ID。如果您不需要在此处添加特定内容,我的建议是为每个聊天用户生成不同的用户 ID,例如避免 userData 中的冲突。例如,您可以通过在 javascript 中生成随机值来做到这一点以上是关于如何使用直线 API 将机器人集成到网站的主要内容,如果未能解决你的问题,请参考以下文章
如何从第三方 api 函数调用/访问 Angular 方法? (将 ApplePay 集成到 Angular 网站中)
如何将 OPENID auth 集成到 REST api 和前端框架架构中