问题标签 [direct-line-botframework]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1981 浏览

node.js - 当我从 Microsoft Bot Framework 读取 Direct Line API 文档时,主机和端口来自哪里

我注意到 Direct Line 请求 url 是这样的:https://localhost:8011/api/在文档中。应该用什么来代替它?

我已经从botbuilder示例文件夹中部署了一个 todoBot 示例项目。并且我在My botssection中创建了一个bot,结束点是:http://www.bigluntan.com:3978/api/messages. 我已经在Test connection to your bot部分进行了测试,当我输入内容并发送它时它正在工作。现在,我想试试 Direct Line。所以我在频道中添加了 Direct Line。但最困惑的部分是,我如何调用这个 Direct Line api,因为终点与我的机器人的终点不同。

0 投票
1 回答
134 浏览

botframework - 如何连接到自定义 Botconnector/ChannelAccount?

使用 Bot Framework 时,我们希望连接到我们的客户消息传递接口之一。目前,在线平台允许连接到 Skype、twilio、iFrame 等。

我们正在尝试创建一个自定义界面(通过我们控制的 API),我们不确定实现这一目标的最佳方法。REST API 引用了“ChannelAccount”,但没有详细说明如何获取/设置这些。

我们可以直接发布消息(传入),并设置回调 URL(用于传出),然后自己处理发送/接收吗?

0 投票
1 回答
432 浏览

botframework - 当我使用 Direct Line API 回复 .Prompts.choice() 时,我的机器人无法正常工作

我正在使用 Direct Line API 制作网站。 http://qavppy-bot-test-123.azurewebsites.net/

但是,当我重播 .Promts.choice() 的问题时,我的机器人无法识别消息。我不知道为什么,但机器人说 .onDefault() 的消息。似乎机器人无法正常工作......

当我使用其他方式(Slack、WebChat 等)时,机器人可以正常工作。

请建议。

捕获

0 投票
1 回答
616 浏览

node.js - 直线后开始对话框

我的用例是这样的。

  • 机器人将通过 Direct Line API 向用户发送“DM”
  • 收到 DM 后,机器人应该向用户发起对话,向用户询问一些问题
  • 提问完成后,机器人会返回原始频道/房间

一个人如何“接收”一条直线消息?以及如何无中生有地开始对话?

0 投票
3 回答
6498 浏览

botframework - 如何从 android cilent 连接到 Microsoft bot 框架

我创建了一个简单的 android 应用程序,它使用 restfull jersey WS 通过 JSON 格式发送消息

我应该在连接机器人的应用程序中输入哪个 URL?

该机器人如何接收消息并发送回响应?

截至目前,我正在使用 Microsoft 的机器人模拟器

提前致谢。

0 投票
2 回答
689 浏览

angularjs - Bot Framework Direct line 是否支持 CORS?

我正在尝试将 Bot Framework 的 Direct Line API 与 Angular.js 一起使用。但是,从 Angular 发送的请求会在我的浏览器中引发 Cross Origin 错误。

我需要知道我是否做错了什么。如果是这样,我会发布代码。

那么,Bot Framework Direct 是否支持跨域请求?

0 投票
0 回答
371 浏览

python - 尝试使用 Microsoft BotFramework 的 Direct Line API 发送消息时出现错误 500

不知道我的问题出在哪里。我会在文档页面中使用 Try It Out 选项,但似乎没有任何方法可以提供令牌/秘密。

尝试从 Jupyter 笔记本向我的机器人发送消息时,我不断收到错误 500。这是我的代码:

根据文档,架构中的所有内容都是可选的,所以我假设传递 json={'text': text} 可以正常工作,但是我也尝试过所有其他值为 null 以及会话 ID 的方法,如我在其他几个 SO 答案。

这是输出:

https://directline.botframework.com/api/conversations/3BpMMKssV6P/messages 500 {'消息':'发送消息失败'}

0 投票
2 回答
1316 浏览

javascript - 直线 API Microsoft Bot 框架

我已将我的机器人发布到 Azure。现在我要开发自己的聊天用户界面。我想在 JavaScript 中使用 Direct Line API 来调用机器人。

如何在 JavaScript 中使用 Direct Line API?

0 投票
1 回答
497 浏览

javascript - Bot Connector - Direct Line API 交叉对话?

我写了一个简短的 JavaScript 聊天来使用直线 API。为了保证我的 App Secret 安全,js 对我的服务器进行 ajax 调用,在该服务器上我使用密钥进行服务器端 API 调用以生成令牌并将其传递回 js。当用户提交消息时,js 会发布一个帖子以开始对话(如果我还没有对话 ID),然后发布消息,然后获取响应。

幸运的是,当我开始这个时,我搜索了一些东西并浏览了一些关于在发布时在消息对象中包含“from”值的帖子,或者它只是从每个帖子开始。但现在一切都很好,没有问题。

然后我注意到看起来很奇怪。如果我打开一个浏览器并开始聊天,它会从另一个浏览器停止的地方开始。

我很快意识到这是因为我在 js 中硬编码了一个“from”值。但这似乎仍然很奇怪...... 2 个不同的令牌、2 个不同的会话 ID、2 个不同的浏览器和 1 个会话。对话真的是由消息中的 from 字段链接的吗?

如果是这样,拥有一个conversationID有什么意义?他们是否以某种方式将 IP 和/或 MAC 地址与 from 属性结合使用?

我仍在本地主机上工作,所以我没有测试它来自 2 个不同的 IP。

我知道通过让 js 为“from”生成一个随机值来将对话限制在 js 的生命周期内,这很容易解决,但这似乎仍然很奇怪。它有充分的理由还是一个错误?

更新请参阅 github 问题以获取答案: https ://github.com/Microsoft/BotBuilder/issues/1307#issuecomment-249187807

0 投票
2 回答
298 浏览

node.js - BadArgument:安全令牌对此对话无效

我正在尝试使用microsoft bot 框架的Direct Line API

遵循以下步骤。

  1. 从应用程序获取对话 ID(在 node.js 上运行)

[对话 ID123]

  1. 从邮递员https://directline.botframework.com/api/tokens/conversation创建对话令牌

[对话令牌456]

  1. 使用conversationId123获取对话消息和使用ConversationToken456获取授权标头

https://directline.botframework.com/api/conversations/conversationId123 / messages

我收到

我错过了什么?