وصف مخطط JSON
يصف هذا المستند بنية مخطط JSON في وحدة Integrations.
الهيكل العام
مخطط JSON مصفوفة من الكائنات، وكل كائن فيها إما عقدة (node) أو علامة تبويب (tab):
[
{
"label": "Hello World!",
"id": "1f24387b252057fe",
"type": "tab",
"disabled": false
},
{
"name": "run",
"id": "b51ab819b83e1915",
"type": "inject",
"x": 46.96875,
"y": 99.51171875,
"z": "1f24387b252057fe",
"wires": [
[
"bd07e1ff0aedba0b"
]
]
},
{
"id": "2b524ca59e4ed633",
"type": "debug",
"name": "debug",
"x": 610.05078125,
"y": 98.59765625,
"z": "1f24387b252057fe",
"wires": []
},
{
"name": "function",
"func": "msg.payload = 'World'\n\nreturn msg;",
"id": "bd07e1ff0aedba0b",
"type": "function",
"x": 229.62890625,
"y": 98.8515625,
"z": "1f24387b252057fe",
"wires": [
[
"2e1172b330c69aeb"
]
]
},
{
"id": "2e1172b330c69aeb",
"type": "template",
"name": "template",
"x": 418.66796875,
"y": 98.19140625,
"z": "1f24387b252057fe",
"syntax": "mustache",
"template": "Hello {{payload}} !",
"output": "str",
"wires": [
[
"2b524ca59e4ed633"
]
]
}
]
المعلمات الأساسية للعقد
تشترك معظم العقد في المعلمات التالية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (مثل "inject" و"function" و"template")name(string) - الاسم المعروض للعقدةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة من مصفوفات معرّفات العقد المتصلة بالمخرج
العقد النظامية
عقدة "tab" (علامة تبويب)
العقدة من نوع tab حاوية لمجموعة من العقد، وتظهر في الواجهة على شكل علامة تبويب.
المعلمات:
label(string) - الاسم المعروض لعلامة التبويبid(string) - معرّف فريد لعلامة التبويبtype(string) - نوع العقدة (tab)disabled(boolean) - ما إذا كانت علامة التبويب معطّلة
عقدة "debug" (تصحيح)
تعرض العقدة من نوع debug الرسائل في لوحة التصحيح.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (debug)name(string) - الاسم المعروض للعقدةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
الروابط بين العقد
تحدد المعلمة wires الروابط بين العقد. يقابل كل عنصر في المصفوفة أحد مخرجات العقدة، ويحتوي على مصفوفة بمعرّفات العقد المتصلة بهذا المخرج.
مثال:
"wires": [
[
"bd07e1ff0aedba0b"
]
]
وصف معلمات العقد
عقدة "inject" (حقن)
تُستخدم العقدة inject لإنشاء الرسائل وإرسالها يدويًا إلى التدفق.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (inject)name(string) - الاسم المعروض للعقدةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "function" (دالة)
تتيح العقدة من نوع function تنفيذ أي كود JavaScript.
المعلمات الأساسية:
id(string) - م عرّف فريد للعقدةtype(string) - نوع العقدة (function)name(string) - اسم العقدةfunc(string) - الكود الذي يُنفَّذx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "template" (قالب)
تحوّل العقدة من نوع template الرسائل باستخدام القوالب.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (template)name(string) - اسم العقدةsyntax(string) - صيغة القالب (mustacheأوplain)template(string) - قالب الرسالةoutput(string) - نوع المخرجات (strللنص العادي، أوjson، أوyaml)x،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "interval-node" (فاصل زمني)
تولّد العقدة من نوع interval-node الرسائل على فترات زمنية محددة.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (interval-node)name(string) - اسم العقدةinterval(number) - الفترة بين الرسائل بالدقائقx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "switch" (مبدّل)
توجّه العقدة من نوع switch الرسائل إلى مسارات مختلفة حسب الشروط.
المعلمات الأساسية:
id(string) - معرّف فر يد للعقدةtype(string) - نوع العقدة (switch)name(string) - اسم العقدةproperty(string) - خاصية الرسالة التي يجري فحصهاrules(array) - مصفوفة قواعد التوجيهoutputs(number) - عدد منافذ الإخراجcheckall(string) - ما إذا كانت تُفحص جميع القواعد (trueأوfalse)repair(boolean) - ما إذا كانت تُصلح الرسائل غير الصالحةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "split" (مقسِّم)
تقسّم العقدة من نوع split الرسائل إلى عدة أجزاء.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (split)name(string) - اسم العقدةproperty(string) - خاصية الرسالة المراد تقسيمهاpropertyType(string) - نوع الخاصية (msg،flow،global)splt(string) - فاصل السلاسل النصيةspltType(string) - نوع الفاصل (str،bin)arraySplt(number) - حجم أجزاء المصفوفاتarraySpltType(string) - طريقة تقسيم المصفوفات (len،index)stream(boolean) - وضع المعالجة المتدفقةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "http in" (مدخل HTTP)
تُنشئ العقدة من نوع http in نقاط نهاية HTTP وتستقبل طلبات HTTP الواردة.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (http in)name(string) - اسم العقدة (اختياري)url(string) - مسار URL لنقطة النهايةmethod(string) - طريقة HTTP (get،post،put،delete،patch)x،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة الاتصالات التي تعالج الطلبات
عقدة "http request" (طلب HTTP)
ترسل العقدة من نوع http request طلبات HTTP صادرة.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (http request)name(string) - اسم العقدةurl(string) - عنوان URL للطلبmethod(string) - طريقة HTTP (GET،POST،PUT،DELETE، إلخ)ret(string) - تنسيق الاستجابة (obj،txt،bin)headers(array) - مصفوفة رؤوس الطلبpaytoqs(string) - موضع الحمولة (payload) في الطلب (body،query)useAuth(boolean) - ما إذا كانت تُستخدم المصادقةauthType(string) - نوع المصادقة (basic،bearer)x،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة الاتصالات التي تعالج الاستجابة
عقدة "http response" (استجابة HTTP)
ترسل العقدة من نوع http response استجابات HTTP إلى العميل.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (http response)name(string) - اسم العقدةstatusCode(number) - رمز حالة HTTP للاستجابةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة الاتصالات (فارغة عادةً)
عقدة "cms-events"
تتيح هذه العقدة تتبّع الأحداث من وحدة Events وإدخالها في التدفق.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (cms-events)name(string) - اسم العقدةeventMarker(string) - معرّف الحدثproperty(string) - خاصية الرسالة المراد معالجتهاtargetType(string) - نوع هدف المعالجة (msg،flow،global)x،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة الاتصالات لمتابعة المعالجة
عقدة "admin-api" (Admin API)
تتيح هذه العقدة التفاعل مع واجهات API مختلفة.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (admin-api)name(string) - اسم العقدةpath(string) - مسار نقطة نهاية APImethod(string) - طريقة HTTP (post،get،put،delete)operation(string) - معرّف العمليةdata(string) - بيانات الطلب بتنسيق JSONwires(array) - مصفوفة الاتصالات التي تعالج الاستجابة
عقدة "telegram"
ترسل العقدة من نوع telegram الرسائل عبر Telegram Bot API. الحقول موصوفة بالتفصيل في صفحة العقدة telegram.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (telegram)name(string) - اسم العقدةbotToken(string) - رمز البوت (token)chatId(string) - معرّف الدردشةtext(string) - نص الرسالةparseMode(string) - تنسيق النص (noneأوMarkdownأوMarkdownV2أوHTML)replyMarkup(array) - صفوف أزرار Inline، ولكل زرtextوcallbackDatacallbackQueryId(string) - معرّف طلب callbackshowAlert(boolean) - ما إذا كان الإشعار يُعرض في نافذة منبثقةnotificationText(string) - نص الإشعار (عندshowAlert: true)x،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "whatsapp"
ترسل العقدة من نوع whatsapp الرسائل عبر WhatsApp Business Cloud API. الحقول موصوفة بالتفصيل في صفحة العقدة whatsapp.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (whatsapp)name(string) - اسم العقدةphoneNumberId(string) - معرّف رقم المرسلaccessToken(string) - رمز الوصولapiVersion(string) - إصدار Graph API (القيمة الافتراضيةv20.0)action(string) - نوع الرسالة (messageأوtemplate)to(string) - رقم المستلمtext(string) - نص الرسالة (عندaction: message)templateName(string) - اسم القالب (عندaction: template)locale(string) - لغة القالب (عندaction: template)components(array) - معلمات القالب، ولكل منهاtype(headerأوbody) وparameter_nameوtextx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات
عقدة "notification"
ترسل العقدة من نوع notification إشعارًا وفق قالب حدث من وحدة Events. الحقول موصوفة بالتفصيل في صفحة العقدة notification.
المعلمات الأساسية:
id(string) - معرّف فريد للعقدةtype(string) - نوع العقدة (notification)name(string) - اسم العقدةeventId(number | null) - معرّف قالب الحدثvariables(object) - قيم متغيرات القالب حسب علاماتها (markers)recipientsPath(string) - مسار مصفوفة المستلمين داخل الرسالةx،y(number) - إحداثيات العقدة في مساحة العملz(string) - معرّف علامة التبويب التي تنتمي إليها العقدةwires(array) - مصفوفة اتصالات المخرجات