创建Facebook Messaenger Bot
#php #bot #facebook

我们想创建一个机器人来为我们回答用户。
想象一下,Facebook中有很多人想要您的东西,他们有很多问题,或者他们想从您那里购买东西,他们需要帮助,您应该回答他们的问题,或者帮助完成订单。

但是你不能回答所有问题。在此时间,我们需要一个响应式机器人来回答用户问题。
让我们去看看如何在Facebook中创建一个Messaenger机器人。

Image description

在第一步中,我们需要一个Facebook应用程序,因此我们必须在登录后访问facebook developer site您可以在此页面中找到我的应用程序,您应该创建第一个应用程序:

Image description

选择这样的应用程序的名称之后:

Image description

您应该重定向到看起来像这样的仪表板:

Image description

好吧,现在我必须提到,如果您只需要向任何需要在此仪表板中设置“ Messenger”的用户发送消息,但是如果您想向用户创建对话并在其上获取消息流程并发送一个响应您也需要设置一个“ Webhook”。
我知道,一个可以与用户交谈的机器人更具吸引力,因此我们需要两个设置,
如果您没有页面,则必须首先是板条页面

Image description

然后为此页面生成令牌。
这个令牌是使用Facebook API并将消息发送给用户的授权。

发送基本文本

要向向您的页面发送消息的人发送基本短信,将发布请求发送到/页ID/消息端点。

发送消息的示例请求如下:

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"PSID"
  },
  "messaging_type": "RESPONSE",
  "message":{
    "text":"Hello, world!"
  }
}' "https://graph.facebook.com/LATEST-API-VERSION/PAGE-ID/messages?access_token=PAGE-ACCESS-TOKEN"

现在我们没有“ psid”在哪里可以找到此ID,您可能知道,是的,是从Webhook那里设置的。

如果您想首次提交Webhook,则使用一些参数向您的Webhook发送帖子请求,并且您应该返回称为“ Hub_Challenge”的参数之一。
并完成了您的Webhook。
好的,现在在Messenger设置中,我们有一个Webhook配置,对于用户获取消息,我们应该这样编辑:

Image description

和设置消息

Image description

现在,在Facebook中将消息从另一个帐户发送到此页面,您会得到这样的JSON主体:

{
  "object": "page",
  "entry": [
    {
      "time": 1682502617664,
      "id": "0",
      "messaging": [
        {
          "sender": {
            "id": "12334"
          },
          "recipient": {
            "id": "23245"
          },
          "timestamp": "1527459824",
          "message": {
            "mid": "test_message_id",
            "text": "Hello world"
          }
        }
      ]
    }
  ]
}

此发送ID:

"sender": {
            "id": "12334"
          },

是您寻找的psid。