การทำความเข้าใจ WebHook

WebHook คือช่องทางที่ลูกค้าจะได้รับการอัปเดตเกี่ยวกับคำขอที่ส่งไป หลังจากที่ผู้ใช้ส่งคำขอทางอีเมลไปยัง EngageLab, EngageLab จะส่ง "ผลลัพธ์คำขอ" กลับไปยังผู้ใช้อย่างซิงโครนัส ในขณะที่ "ผลลัพธ์การส่ง" ของอีเมลและ "ผลลัพธ์เหตุการณ์อื่นๆ" จะถูกส่งกลับไปยังผู้ใช้อย่างอะซิงโครนัสผ่าน WebHook

กลไกของ WebHook

  • EngageLab ให้บริการเหตุการณ์อีเมลหลายประเภทแก่ลูกค้า และลูกค้าสามารถเลือกติดตามเหตุการณ์เฉพาะได้
  • เมื่อมีเหตุการณ์เกิดขึ้น จะทำให้ EngageLab ส่งข้อมูล (POST) ไปยัง URL ที่ลูกค้ากำหนด
  • ประเภทข้อมูลที่ EngageLab ส่ง: "Content-Type: application/json"
  • ลูกค้าจะได้รับข้อมูล วิเคราะห์เหตุการณ์และข้อมูล และต้องส่งคืน HTTP Status Code 200 ภายใน 3 วินาที มิฉะนั้น EngageLab จะส่งข้อความซ้ำ

การใช้งาน

  • ผู้ใช้เขียนบริการ HTTP ของตนเองเพื่อจัดการเหตุการณ์ที่เกี่ยวข้อง วิเคราะห์ข้อมูลที่เกี่ยวข้อง และเปิดเผย URL ที่เกี่ยวข้อง
  • ผู้ใช้เลือกเหตุการณ์ที่ต้องการติดตามและกำหนดค่า URL สำหรับรับข้อมูลใน WebHook ของ EngageLab

การตรวจสอบลายเซ็น

เพื่อให้แน่ใจว่าแหล่งที่มาของข้อความคือ EngageLab คุณสามารถเลือกทำการตรวจสอบความปลอดภัยของแหล่งที่มาของข้อมูล POST ได้ (คุณสามารถข้ามการตรวจสอบและวิเคราะห์ข้อมูล POST ได้โดยตรง)

วิธีการตรวจสอบความปลอดภัยมีดังนี้:

  • รับ APP KEY ผ่าน 【การตั้งค่าการส่ง】-【WebHook】
  • วิเคราะห์ X-WebHook-Timestamp จาก Header
  • วิเคราะห์ X-WebHook-AppKey จาก Header
  • วิเคราะห์ X-WebHook-Signature จาก Header
  • ใช้ md5(X-WebHook-Timestamp+X-WebHook-AppKey+APP KEY) เพื่อสร้างลายเซ็น signature และเปรียบเทียบกับ X-WebHook-Signature

กลไกการตอบกลับ

หลังจากที่บริการนักพัฒนาได้รับการเรียกกลับจาก EngageLab จะต้องตอบกลับภายใน 3 วินาทีดังนี้:

การรับสำเร็จ: รหัสสถานะการตอบกลับ HTTP ต้องส่งคืน 200 หรือ 204 และไม่จำเป็นต้องมีข้อความตอบกลับ

การรับล้มเหลว: รหัสสถานะการตอบกลับ HTTP ต้องส่งคืน 5XX หรือ 4XX และต้องส่งข้อความตอบกลับในรูปแบบดังนี้:

{"code":2002,“message”:"failed"}
              
              {"code"2002,“message”:"failed"}

            
โค้ดนี้โชว์เป็นหน้าต่างลอย
ฟิลด์ ประเภท จำเป็น/ไม่จำเป็น คำอธิบาย
code int ไม่จำเป็น รหัสข้อผิดพลาด
message string ไม่จำเป็น ข้อมูลข้อผิดพลาดโดยละเอียด

กลไกการลองใหม่

หากมีข้อผิดพลาดในการเข้าถึง URL หรือการหมดเวลา EngageLab จะลองใหม่สูงสุด 7 ครั้ง โดยช่วงเวลาการลองใหม่คือ 3 นาที, 10 นาที, 30 นาที, 1 ชั่วโมง, 6 ชั่วโมง, 12 ชั่วโมง และ 24 ชั่วโมง ซึ่งให้เวลาคุณเพียงพอในการแก้ไข URL ก่อนที่ข้อความจะสูญหาย

หากเกินขีดจำกัดการลองใหม่ EngageLab จะละทิ้งข้อความ

สำหรับการจัดการเหตุการณ์และการวิเคราะห์ข้อมูลแต่ละครั้ง คุณต้องส่งคืน "การตอบกลับสำเร็จ" ภายใน 3 วินาที มิฉะนั้น EngageLab จะส่งข้อความซ้ำ

icon
ติดต่อฝ่ายขาย