Node-RED
أداة مرئية مبنية على التدفقات لربط الأجهزة والواجهات والخدمات معًا
يتيح Node-RED بناء الأتمتة بوصل عقد على لوحة في المتصفح: تصل رسالة MQTT، فتحوّلها دالة، فيخرج طلب HTTP. هو مشروع تابع لـ OpenJS Foundation برخصة Apache-2.0، ومنتشر في أتمتة المنازل وإنترنت الأشياء.
يناسبك إن كنت
- تربط حساسات وMQTT وأجهزة منزل ذكي
- تريد أتمتة مرئية مع JavaScript حيث تحتاجها
- تحتاج طبقة ربط سريعة بين واجهات API
انتبه إلى
- المحرر مفتوح افتراضيًا ويستطيع تشغيل كود على المضيف، فاضبط المصادقة أولًا
- التدفقات الكبيرة تصبح صعبة القراءة والمراجعة مقارنة بالكود
- العقد المجتمعية متفاوتة، وبعضها لم يعد يُصان
التثبيت
Run with Docker
docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-redأتمتة ترسمها
كل عقدة تفعل شيئًا واحدًا: تستمع إلى MQTT، أو تستدعي API، أو تشغّل قليلًا من JavaScript، أو تنتظر، أو تتفرع حسب قيمة، أو تكتب في ملف. تسحبها إلى اللوحة وتصلها ببعضها، فيعمل التدفق فور نشره. ومكتبة كبيرة من العقد المجتمعية تضيف تكاملات للأجهزة وقواعد البيانات والخدمات.
يناسب الهواة ومستخدمي أتمتة المنازل الذين يفكرون بالأحداث ويريدون حرية أكبر من منشئ القواعد، والمطورين الذين يريدون طبقة ربط سريعة بين الأنظمة. ومقارنة بأدوات أتمتة الأعمال، هو أقرب إلى العتاد ويترك لك جزءًا أكبر من المنطق.
ما يتطلبه تشغيله
هو عملية Node.js باستهلاك ذاكرة معتدل، وتُحفظ تدفقاتك كملف JSON في مجلد البيانات مع العقد المثبتة وبيانات الاعتماد. خذ نسخة احتياطية من ذلك المجلد؛ ويمكن أيضًا تتبع ملف التدفقات في git عبر ميزة المشاريع.
المحرر بلا مصادقة افتراضيًا، وكل من يفتحه يستطيع تشغيل كود على المضيف عبر عقد function وexec. فعّل مصادقة المدير في ملف الإعدادات قبل أي شيء آخر، وأبقه على الشبكة المحلية أو VPN. العقد المجتمعية تتفاوت في الجودة والصيانة، فافحصها قبل تثبيتها.