عقدة notification
ترسل عقدة notification إشعارًا وفق قالب الحدث الذي تختاره من وحدة Events (يفتح في علامة تبويب جديدة). تأتي القنوات واللغات والمستلمون من إعدادات القالب، وتمرر العقدة إلى القالب قيم المتغيرات.
توجد العقدة في اللوحة اليسرى بجانب العقدتين telegram وwhatsapp. لها مدخل واحد ومخرج واحد.
إعدادات عقدة notification
1. Name
اسم العقدة.
يظهر الاسم في مساحة العمل ويساعدك على تمييز العقدة.
إذا تركت الحقل فارغًا، فسيكون اسم العقدة notification.
مثال:
- اسم العقدة:
send order code
2. Event template
في هذا القسم تختار قالب الحدث وتحدد البيانات التي تُمرَّر إليه.
Template
قائمة منسدلة بالقوالب. تعرض ما يصل إلى 100 حدث من وحدة Events محددة كقوالب للتدفق (خانة الاختيار Use as a template for workflow في إعدادات الحدث). تظهر الأسماء بلغة الواجهة الحالية.
إلى أن تختار قالبًا، يظهر في الحقل النص — select template —. لإلغاء الاختيار، انقر علامة X في الحقل.
عند تغيير القالب، تُمسح قيم المتغيرات ومسار المستلمين، ويجب ملؤها من جديد.
معلومات القالب
بعد اختيار القالب، تظهر بطاقته أسفل القائمة:
- Template name: اسم القالب.
- Channels: قنوات الإرسال المفعّلة في القالب: Email وPush وWebSocket.
- Recipients: من يرسل القالب إليهم الإشعار.
- Locales: اللغات التي مُلئ بها القالب.
القيم الممكنة للحقل Recipients:
| القيمة | من يستلم الإشعار |
|---|---|
| All users | جميع المستخدمين |
| Subscribers | المشتركون |
| User group | مجموعة مستخدمين |
| Target user | المستخدم المستهدف |
| Registered | المستخدمون المسجلون |
| Everyone | الجميع |
| User IDs from workflow | المستخدمون الذين يمرر التدفق معرفاتهم |
| Email addresses from workflow | عناوين البريد الإلكتروني التي يمررها التدفق |
إذا كانت هناك مشكلة في القالب المختار، يعرض النموذج تحذيرًا:
- Failed to load the list of templates.: تعذّر تحميل قائمة القوالب.
- Template not found. It may have been deleted.: القالب غير موجود، وربما حُذف.
- The selected event is no longer a template.: أُزيلت علامة القالب من الحدث المختار.
3. Recipients
لا يظهر هذا القسم إلا إذا كان المستلمون في القالب User IDs from workflow أو Email addresses from workflow. يحتوي على حقل واحد لمسار مصفوفة المستلمين في رسالة التدفق، بصيغة Mustache:
- Path to user IDs in the message: للقيمة User IDs from workflow، والتلميح في الحقل
{{msg.payload.userIds}}؛ - Path to email addresses in the message: للقيمة Email addresses from workflow، والتلميح في الحقل
{{msg.payload.emails}}.
مثال:
{{msg.payload.userIds}}
4. Template variables
يظهر هذا القسم إذا كان القالب يحتوي على متغيرات مخصصة. لكل متغير حقل منفصل يحمل اسم المتغير (أو علامته إذا لم يكن له اسم).
القيمة تعبير Mustache أو سلسلة نصية عادية.
مثال:
{{msg.payload.code}}
إذا أُزيل متغير من القالب وبقيت له قيمة محفوظة في العقدة، يعرض النموذج التحذير These variables are no longer used in the template: مع قائمة بهذه المتغيرات وقيمها.
المعلمات في مخطط JSON
تُخزَّن إعدادات العقدة في مخطط JSON للتدفق على النحو التالي:
name(string) - اسم العقدةeventId(number | null) - معرف قالب الحدث المختارvariables(object) - قيم متغيرات القالب: المفتاح هو علامة المتغير، والقيمة تعبير Mustache أو سلسلة نصيةrecipientsPath(string) - مسار مصفوفة المستلمين في الرسالة
مثال على الاستخدام
مثال 1: إشعار للمستخدمين الذين يمررهم التدفق
المهمة:
إرسال رمز الطلب إلى عدة مستخدمين يحسب التدفق معرفاتهم.
التدفق:
[inject] ---> [function] ---> [notification]
كود العقدة function:
msg.payload = {
userIds: [12, 15],
code: "A-1024"
};
return msg;
إعدادات العقدة notification:
- Template: قالب حدث المستلمون فيه User IDs from workflow، ويحتوي نصه على متغير بالعلامة
code - Path to user IDs in the message:
{{msg.payload.userIds}} - حقل المتغير
codeفي Template variables:{{msg.payload.code}}
النتيجة:
يُرسَل الإشعار إلى المستخدمَين ذوَي المعرفين 12 و15 عبر القنوات المفعّلة في القالب، ويحل A-1024 محل المتغير code في النص.