แบ่งปัน
Webhooks เป็นหนึ่งในคุณสมบัติที่มีประโยชน์ที่สุดของแพลตฟอร์มของเรา ช่วยให้นักพัฒนาและเจ้าของไซต์สามารถฟังเหตุการณ์จากอุปกรณ์หรือเซิร์ฟเวอร์ WhatsApp ซึ่งมีประโยชน์สําหรับการสร้างงานอัตโนมัติ ฟังก์ชันนี้ออกแบบมาโดยเฉพาะสําหรับการรับกิจกรรมเท่านั้น เช่น SMS, แชท WhatsApp, การตอบสนอง ussd และการแจ้งเตือนของ Android
โพสต์ที่: ก.พ. 10, 2023 - 1,686 มุมมอง
กรณีการใช้งาน
- สร้างบอทตอบกลับอัตโนมัติสําหรับ SMS และ WhatsApp
- บันทึกข้อความและแชทไปยังฐานข้อมูลของคุณเองเมื่อรับ
- บันทึกการแจ้งเตือนไปยังฐานข้อมูลของคุณเองเมื่อได้รับ
- บันทึกการตอบกลับ USSD ไปยังฐานข้อมูลของคุณเองเมื่อได้รับ
- ส่งเพย์โหลดไปยังที่อยู่อีเมลที่ระบุ
- ส่ง SMS/แชทเมื่อคุณได้รับการแจ้งเตือนจาก Facebook
- ทําบางสิ่งเมื่อคุณได้รับการแจ้งเตือนจากแอป
มันทํางานอย่างไร
ระบบได้รับเหตุการณ์ที่ได้รับจากทั้งสองแหล่ง จากนั้น URL ของ webhook จะถูกเรียกใช้และข้อมูลเพย์โหลดจะถูกส่ง เมื่อเซิร์ฟเวอร์ webhook ของคุณได้รับคุณสามารถทําอะไรก็ได้กับเพย์โหลดด้วยตัวคุณเอง เพย์โหลดจะถูกส่งด้วยวิธี POST เพื่อให้แน่ใจว่าการจัดส่งมีประสิทธิภาพ
โครงสร้างน้ําหนักบรรทุก
โครงสร้างน้ําหนักบรรทุกตรงไปตรงมา คุณเพียงแค่ต้องตรวจสอบประเภทของเพย์โหลดแล้วประมวลผลเนื้อหาของเนื้อหาข้อมูล
# sms
[
"type" => "sms", // type of payload: received sms
"data" => [
"id" => 2, // unique id from the system
"rid" => 10593, // unique id from the device
"sim" => 1, // sim card slot
"device" => "00000000-0000-0000-d57d-f30cb6a89289", // device unique id
"phone" => "+639760713666", // sender phone number
"message" => "Hello World!", // message
"timestamp" => 1645684231 // receive timestamp
]
]
[
"type" => "whatsapp", // type of payload: received whatsapp chat
"data" => [
"id" => 2, // unique id from the system
"wid" => "+639760713666", // whatsapp account phone number
"phone" => "+639760666713", // sender phone number
"message" => "Hello World!", // message
"timestamp" => 1645684231 // receive timestamp
]
]
# ussd
[
"type" => "ussd", // type of payload: received ussd response
"data" => [
"id" => 98, // unique id from the system
"sim" => 1, // sim card slot
"device" => "00000000-0000-0000-d57d-f30cb6a89289", // device unique id
"code" => "*143#", // ussd code
"response" => "Sorry! You are not allowed to use this service.", // ussd response
"timestamp" => 1645684231 // receive timestamp
]
]
# notification
[
"type" => "notification", // type of payload: received notification
"data" => [
"id" => 77, // unique id from the system
"device" => "00000000-0000-0000-d57d-f30cb6a89289", // device unique id
"package" => "com.facebook.katana", // application package name
"title" => "Someone commented on your post!", // notification title
"content" => "Someone commented on your post!", // notification content
"timestamp" => 1645684231 // receive timestamp
]
]
ตัวอย่างโค้ด
Webhooks)
/**
* Validate webhook secret
*/
if(isset($request["secret"]) && $request["secret"] == $secret):
// Valid webhook secret
$payloadType = $request["type"];
$payloadData = $request["data"];
// do something with the payload
print_r($payloadType);
print_r($payloadData);
else:
// Invalid webhook secret
endif;