أداة Node-RED هي أداة تدفقات مجانية ومفتوحة المصدر تعمل على عتادك أو خادمك الخاص. لا حساب ولا وسيط: يرسل DynamiHost حدث scan.created مباشرة إلى نسختك من Node-RED عند كل مسح لأحد رموزك الديناميكية، ويتولى التدفق الباقي.
ما تحتاجه
- خطة DynamiHost تتضمن الـ webhooks: Trial أو Pro أو Business. إذا أظهرت صفحة Webhooks في لوحة التحكم رسالة قفل، فإن خطتك لا تتضمن الـ webhooks بعد.
- نسخة Node-RED عاملة وقابلة للوصول عبر عنوان HTTPS عام. لا يستطيع DynamiHost التسليم إلى localhost أو عناوين خاصة أخرى، وتُرفض عناوين الـ endpoint على الشبكات الخاصة عند حفظها.
الخطوة 1: احصل على عنوان webhook من Node-RED
- في محرر Node-RED، أضف عقدة HTTP In إلى تدفق واضبط طريقتها على POST.
- امنحها مسارًا تتعرف عليه، مثلًا
/dynamihost-scans. عنوان العقدة هو عنوان نسختك مضافًا إليه ذلك المسار. - أضف بعدها عقدة HTTP Response مضبوطة لإرجاع الحالة 200، واربط التدفق ببعضه. يعامل DynamiHost أي رد 2xx كتسليم ناجح، وأي شيء آخر كفشل يُعاد.
- انقر Deploy. لا يصبح العنوان حيًا إلا بعد نشر التدفق.
احمِ النسخة نفسها (كلمة مرور محرر Node-RED وHTTPS) قبل تعريضها: أي شخص يجد المسار يستطيع النشر إليه، لذا تحقق من التوقيع كما هو موصوف أدناه إذا كان التدفق يفعل شيئًا مهمًا.
الخطوة 2: أضف العنوان في DynamiHost
- افتح Webhooks في لوحة التحكم وانقر Add endpoint.
- الصق العنوان الكامل لعقدة HTTP In واختر حدث scan.created.
- احفظ، ثم انسخ سر التوقيع الذي يظهر مرة واحدة للـ endpoint. يمكن لعقدة Function التحقق منه: تحتوي صفحة التكاملات في لوحة التحكم على مقتطف Node جاهز لهذا الفحص، والترويسات الواردة تكون على الرسالة التي يمررها Node-RED.
الخطوة 3: اختبر الاتصال
في صفحة Webhooks، انقر Send test على الـ endpoint الجديد. أضف عقدة Debug إلى تدفقك وشاهد حمولة العينة تصل إلى الشريط الجانبي للتصحيح. ثم امسح أحد رموزك بهاتفك وشاهد الحدث الحقيقي يتبعه.
ما الذي يصل
كل تسليم هو حدث scan.created: معرّف الرمز ورمزه القصير واسمه، ووقت المسح، وعند توفرها: الدولة والمدينة والجهاز ونظام التشغيل والمتصفح والمُحيل. ويغطي مقال الـ Webhooks: احصل على إشعار عند كل عملية مسح في مركز المساعدة هذا تنسيق الحمولة الكامل والتحقق من التوقيع وإعادة المحاولة وقاعدة التعطيل التلقائي.
أفكار للأتمتة
- بدّل مصباحًا ذكيًا أو مرحّلًا أو شاشة في مكانك عند مسح رمز، عبر MQTT أو عقدة API محلية.
- ألحق عمليات المسح بملف محلي أو قاعدة بيانات لتقارير بلا اتصال.
- مرّر عمليات المسح إلى نظام داخلي آخر لا يمكن الوصول إليه من الإنترنت، مع Node-RED كجسر.