เนื้อหาต่อไปนี้มาจากเอกสารผลิตภ้ัณฑ์ Webhooks โปรดอ่านเอกสาร Webhooks หากคุณคุ้นเคยกับการใช้งาน Webhooks

Webhooks สำหรับเพจ

Webhooks สำหรับเพจสามารถส่งการแจ้งเตือนให้คุณทราบถึงการเปลี่ยนแปลงในเพจได้แบบเรียลไทม์ ตัวอย่างเช่น คุณสามารถรับข้อมูลอัพเดตแบบเรียลไทม์ทุกครั้งที่ผู้ใช้โพสต์บนฟีดของคุณ แสดงความคิดเห็นในโพสต์ หรือกดถูกใจโพสต์ของคุณ

หากต้องการตั้งค่า Webhook ของเพจ ให้ดำเนินการดังนี้

  1. ตั้งค่าตำแหน่งข้อมูลและกำหนดค่าผลิตภัณฑ์ Webhooks
  2. ติดตั้งแอพของคุณโดยใช้เพจ Facebook ของคุณ

การตั้งค่าตำแหน่งข้อมูลและผลิตภัณฑ์ Webhook

ปฏิบัติตามคู่มือการเริ่มต้นใช้งานเพื่อสร้างตำแหน่งข้อมูลและกำหนดค่าผลิตภัณฑ์ Webhooks ของคุณ ในระหว่างที่กำหนดค่า ให้ตรวจสอบให้แน่ใจว่าได้เลือกอ็อบเจ็กต์เพจ และสมัครรับข้อมูลจากช่อง “เพจ” อย่างน้อยหนึ่งช่องด้านล่าง

ช่องคำอธิบาย

feed

แจ้งให้คุณทราบเมื่อฟีดของเพจมีการเปลี่ยนแปลง เช่น โพสต์ ความรู้สึก การแชร์ ฯลฯ

messages

แจ้งให้คุณทราบเมื่อเพจของคุณได้รับข้อความผ่าน Messenger โปรดดูรายการช่อง Webhooks ข้อความที่สามารถใช้ได้ทั้งหมดในคู่มือ Webhooks สำหรับ Messenger

ติดตั้งแอพของคุณ

ระบบจะส่งการแจ้งเตือน Webhook ก็ต่อเมื่อเพจของคุณได้ติดตั้งแอพที่มีการกำหนดค่า Webhooks และเมื่อเพจไม่ได้ปิดใช้งานแพลตฟอร์มแอพในการตั้งค่าแอพเท่านั้น หากต้องการให้เพจของคุณติดตั้งแอพ ให้แอพของคุณส่งคำขอ POST ไปที่จุดเชื่อมโยง subscribed_apps ของเพจโดยใช้โทเค็นการเข้าถึงของเพจ

ข้อกำหนด

สำหรับช่องที่เกี่ยวข้องกับข้อความเท่านั้น

  • โทเค็นการเข้าถึงเพจที่ขอจากผู้ที่สามารถดำเนินงาน MESSAGING บนเพจที่มีการสืบค้นได้

ตัวอย่างคำขอ

curl -i -X POST "https://graph.facebook.com/{page-id}/subscribed_apps
  ?subscribed_fields=feed
  &access_token={page-access-token}"

ตัวอย่างการตอบกลับ

{
  "success": "true"
}

หากต้องการดูว่าเพจของคุณติดตั้งแอพใดแล้วบ้าง ให้ส่งคำขอ GET แทน

ตัวอย่างคำขอ

curl -i -X GET "https://graph.facebook.com/{page-id}/subscribed_apps &access_token={page-access-token} 

ตัวอย่างการตอบกลับ

{
  "data": [
    {
      "category": "Business",
      "link": "https://my-clever-domain-name.com/app",
      "name": "My Sample App",
      "id": "{page-id}"
    }
  ]
}

API จะส่งคืนชุดข้อมูลที่ว่างเปล่า หากเพจของคุณไม่ได้ติดตั้งแอพใดๆ

Graph API Explorer

หากคุณไม่ต้องการติดตั้งแอพโดยใช้โปรแกรม คุณสามารถทำได้ง่ายๆ ด้วย Graph API Explorer แทน

  1. เลือกแอพของคุณในเมนูดร็อปดาวน์แอพพลิเคชั่น การดำเนินการนี้จะส่งคืนโทเค็นการเข้าถึงของแอพ
  2. คลิกที่ดร็อปดาวน์รับโทเค็น แล้วเลือกรับโทเค็นการเข้าถึงของผู้ใช้ จากนั้นเลือกสิทธิ์การอนุญาต pages_manage_metadata การดำเนินการนี้จะแลกเปลี่ยนโทเค็นแอพของคุณเป็นโทเค็นการเข้าถึงของผู้ใช้โดยได้รับสิทธิ์การอนุญาต pages_manage_metadata
  3. คลิกรับโทเค็นอีกครั้ง แล้วเลือกเพจของคุณ การดำเนินการนี้จะแลกเปลี่ยนโทเค็นการเข้าถึงของผู้ใช้ของคุณเป็นโทเค็นการเข้าถึงเพจ
  4. เปลี่ยนวิธีการดำเนินงานโดยคลิกเมนูดร็อปดาวน์ GET และเลือก POST
  5. แทนที่การสืบค้น me?fields=id,name เริ่มต้นด้วย ID ของเพจ ตามด้วย /subscribed_apps จากนั้นส่งการสืบค้น

การใช้งานทั่วไป

การรับรายละเอียดฟีดของเพจ

แอพของคุณสามารถสมัครรับข้อมูลฟีดของเพจและรับการแจ้งเตือนได้ทุกเมื่อที่มีการเปลี่ยนแปลงเกี่ยวกับฟีดเกิดขึ้น ตัวอย่างเช่น นี่คือการแจ้งเตือนที่ส่งเมื่อผู้ใช้โพสต์บนเพจ

ตัวอย่างการตอบกลับของ Webhooks

[
  {
    "entry": [
      {
        "changes": [
          {
            "field": "feed",
            "value": {
              "from": {
                "id": "{user-id}",
                "name": "Cinderella Hoover"
              },
              "item": "post",
              "post_id": "{page-post-id}",
              "verb": "add",
              "created_time": 1520544814,
              "is_hidden": false,
              "message": "It's Thursday and I want to eat cake."
            }
          }
        ],
        "id": "{page-id}",
        "time": 1520544816
      }
    ],
    "object": "page"
  }
]

ใช้ post_id จากการแจ้งเตือนเพื่อแสดงความคิดเห็นต่อโพสต์บนเพจนั้นๆ

ตัวอย่างคำขอ API

curl -i -X POST   "https://graph.facebook.com/{page-post-id}/comments
  ?message=I%20want%20chocolate%20cake%20!
  &access_token=page-access-token" 

ตัวอย่างการตอบกลับ API

{
  "id": "{comment-id}"
}