【问题标题】:Integrate Api.ai in already functioning Facebook Messenger Bot将 Api.ai 集成到已经运行的 Facebook Messenger Bot
【发布时间】:2017-06-07 01:56:43
【问题描述】:

我已经创建了一个 Facebook Messenger 机器人,没有使用任何 AI 技术集成。目前,机器人只是从我提出的有限条件中回复。例如,当有人输入“时间”时回复时间,或者当有人输入“嗨”时打招呼。现在我想将 Api.ai 与机器人集成,大多数教程建议开始一个新页面并在那里集成 api。 PS:我的当前页面是公开的。

【问题讨论】:

  • 您的问题到底是什么?显然你甚至有教程告诉你如何开始。
  • 我的意思是,有一些方法可以将 api.ai 直接集成到您的 fb 页面中,您可以在 api.ai 工作区自定义您的响应,但我已经有一个正在运行的页面,我不想创建新页面,所以有没有可能的解决方案,比如通过 cURL 或类似的简单 API 请求。 @r41n

标签: php heroku dialogflow-es facebook-messenger-bot


【解决方案1】:

您需要进入 API.ai 上的集成选项卡并打开与 Messenger 的集成并按照步骤操作。

基本上会发生的是,在 API.ai 页面中,您将 Messenger 机器人的 webhook url 放置在 Fulfillment 选项卡中。

在您的 Facebook 页面(在开发者门户中),您将放置 API.ai url(出现在 API.ai 集成中的那个 bots.api.ai ...)在 Webhook 字段中(您的后端 url 曾经是)。这样,Facebook 会向 API.ai 发出请求,API.ai 会进行自然语言解释并调用你的后端。

您必须将后端更改为期待 API.ai 请求而不是 Facebook 请求。

有完整教程here

【讨论】:

  • 其实问题是,我已经为页面设置了heroku webhook,所以我不能在这里设置api.ai回调url。
  • 所以,你的 heroku url 应该放在 API.ai 中,API.ai 回调应该放在你的 heroku URL 现在的位置。因为 Facebook 现在将首先调用 API.ai 来解释自然语言,然后 API.ai 将调用您的后端来执行您的机器人执行的任何操作并回复 Facebook。查看教程以了解您的响应应该是什么样子。
  • 谢谢@tais,我发现的另一个选项是使用 SDK。我仍然面临 SDK 的一些问题,我会在之后更新答案。
猜你喜欢
  • 1970-01-01
  • 2017-12-02
  • 1970-01-01
  • 2017-05-26
  • 2016-08-13
  • 1970-01-01
  • 2017-11-10
  • 2016-11-09
  • 1970-01-01
相关资源
最近更新 更多