إعداد Webhook الوارد في WOZTELL ونشر الرسائل

الويب هوكس الواردة

عن طريق إضافة الويب هوك الوارد في القناة، ستكون قادرًا على نشر الرسائل من مصادر خارجية إلى قناة في WOZTELL.
إعداد ويب هوك وارد
  1. في "الإعدادات" -> "القناة"، انتقل إلى "الويب هوك الوارد".

  2. حدد "+ إنشاء ويب هوك" لإضافة ويب هوك جديد.

  1. أضف اسمًا للويب هوك. ثم اضغط على "حفظ" لإعدادات الويب هوك الجديدة.


  1. بمجرد حفظ الويب هوك الجديد، سيتم إنشاء عنوان URL.


تحرير ويب هوك وارد

بالنسبة للويب هوك الوارد الموجود، يمكنك التبديل بين هذا المفتاح لتفعيل/إلغاء تفعيل الويب هوك.

يمكنك النقر على "حذف" لإزالة الويب هوك.

نشر الرسائل إلى القناة

لتمرير رسالة إلى قناة WOZTELL باستخدام الويب هوك الوارد، ستحتاج إلى استخدام طريقة POST وتنسيق الرسالة وفقًا لذلك.

إنشاء التوقيع

لـ POST الرسائل باستخدام الويب هوك الوارد، يجب عليك إنشاء توقيع وإضافته إلى الرؤوس:

"X-Woztell-Signature": التوقيع

لإنشاء التوقيع:

  const bodyStr = JSON.stringify(Body)
const signature = crypto.createHmac("sha256", channelSecret)
.update(bodyStr)
.digest("base64")


الطلب

فيما يلي المرجع لصياغة الطلب.

الجسم

الخاصية النوع الوصف مطلوب
externalId سلسلة نصية لتحديد العضو الذي ستعمل عليه منطق الويب هوك الوارد مطلوب
messageEvent كائن مطلوب من أجل منطق الروبوت، يمكن إعداد messageEvent للعمل مع كيفية إعداد الزناد الخاص بك. مطلوب
meta كائن البيانات التي سيتم إرسالها في الميتا لأحداث الويب هوك الواردة والصادرة اختياري
messageEvent
الخاصية النوع الوصف مطلوب
type سلسلة نصية أي نوع يقرره المرسل؛ إذا تم تعيين النوع ليكون "حالة" (أي READSENTDELIVEREDFAILEDDELETED), يمكن استخدامه لتحديث حالة الدردشات. مطلوب
data كائن البيانات التي سيتم تضمينها في messageEvent. اختياري
data.messageId سلسلة نصية إذا تم استخدام النوع "حالة"، يمكن استخدام messageId لتحديث حالة الرسائل المحددة. اختياري
data.watermark سلسلة نصية بديل لـ messageId، هذا بدلاً من ذلك يقوم بتحديث جميع الرسائل قبل وقت العلامة المائية (يستخدم عدد الـepoch مع ms) مع الحالة. اختياري
fallback سلسلة نصية يجب تحديده لتمكين جميع المكونات في style اختياري
style كائن مظهر وعرض رسالة النص التي يمكن تخصيصها اختياري

style

الخاصية النوع الوصف مطلوب
borderless منطقي true أو false; تعيين إلى true لإزالة الحدود من النص اختياري
backgroundColor سلسلة نصية لون الخلفية لكتلة الرسالة. يقبل رمز السداسي العشري، اختصار رمز السداسي العشري، و سلسلة لون المتصفح الافتراضي اختياري
textColor سلسلة نصية لون النص. يقبل رمز السداسي العشري، اختصار رمز السداسي العشري، و سلسلة لون المتصفح الافتراضي اختياري
position سلسلة نصية BOT USER أو CETNER; موضع الكتلة المعروضة في سلسلة البريد الوارد اختياري
markdown منطقي true أو false; تعيين إلى true للسماح بتنسيق النص باستخدام markdown اختياري


مثال:

{
externalId: "852992919292",
messageEvent: {
type: "EVENT_TYPE",
data: {
invoiceId,
amount
},
"fallback": "**مرحبًا!**",
"style": {
"borderless": false,
"backgroundColor": "#fff",
"textColor": "#645",
"position": "BOT",
"markdown": true
},
data: {
messageId,
watermark
//هذه هي البيانات النموذجية للأحداث الخاصة بحالة الرسائل.
}
}
}