بناء التدفقات عبر البروتوكولات

مبتدئ

image_pdf

السلسلة التالية من الأمثلة تبنى على عقدة mqtt ، الذي يوفر وسيلة ملائمة لإتخاذ المدخلات من وسيط MQTT . MQTT هو مثال على نظام نشر / اشتراك والذي يتيح لأجهزة الاستشعار بنشر التحديثات التي تسلمها إلى العميل المشترك  في ذلك المستشعر  . يستخدم MQTT  نموذج الموضوع للسماح للناشرين (مثل اجهزة الاستشعار) لإنشاء الموضوعات و نشر البيانات للمواضيع ويمكن للأخرين الاشتراك في هذا الموضوع  للحصل على اشعارات غير متزامنة من البيانات المرسلة لهذا الموضوع .

أنظمة pub/Sub  هي طريقة رائعة لربط النظم الموزعة المتباعدة وهم خريطة جيدة لنموذج أنماط IOT حيث الأجهزة أو الأشياء تولد الأحداث التي ترغب في مشاركتها. بروتوكول MQTT ، فضلا عن كونها غير متزامنة هو أيضا خفيفة الوزن .

تلقي JSON عبر رسالة MQTT

لإستخدام عقدة MQTT ، تحتاج الوصول إلى الوسيط broker. هناك عدد من الخوادم تشغيلMQTT  مجانية ، على سبيل المثال http://test.mosquitto.org/ ، او تلك التي سيتم استخدامها في هذا الدرس www.hivemq.com .

باستخدام عنوان الوسيط و الموضوع، يمكنك تكوين/إعداد عقدة المدخلات mqtt  للإشتراك في هذا الموضوع . الأمر الذي ادى إلى إنشاء رسالة جديدة هو نشر البيانات الجديدة حول هذا الموضوع . و تحتوي الرسالة على معلومات عن البيانات المنشورة، وتتضمن البيانات نفسها في msg.payload   و موضوع  وسيط MQTT  في msg.topic .

للبدء من عقدة mqtt ، عليك استخدام وسيط mqtt المجاني (hivemq) وهو متاح عبر (http://www.hivemq.com/showcase/public-mqtt-broker/) . بالطبع يمكنك استخدام أي وسيط MQTT .

أولا، قم بسحب و إسقاط عقدة المدخلات mqtt إعدادها للوسيط. لا تنسى تكوين/إعداد الموضوع  ليكون فريد من نوعه (unique)في هذا المثال نحن نستخدم  noderedlecture/sensor ولكن عليك استخدام الموضوع الفريد الخاص بك  ، مثال : <your name>/sensor .

basic-nodes-and-flows

هناك العديد من الطرق التي تمكنك من ارسال  رسائل mqtt  إلى  hivemq . و يمكنك استخدام  مآخذها الويب websockets  للعميل (http://www.hivemq.com/demos/websocket-client/) ،
و لوحة الإعدادات لـ (http://www.mqtt-dashboard.com/dashboard) mqtt  ( mqtt dashboard) أو مكتبتك الخاصة .

عليك استخدام مآخذها الويب للعميل websocket client في هذا المثال ، لذلك انتقل إلى تلك الصفحة و قم بالاتصال إلى الوسيط . سوف تقوم بنشر سلسلة Json  المرتبطة بالموضوع الذي قمت بتكوينه/إعداده ولرؤية ذلك قم بإستخدام عقدة qmtt  وعقدة json .

basic-nodes-and-flows

بمجرد أن تقوم بإرسال سلسلة JSON ، سوف تحتاج إلى تحليل الرسالة التي تولدها عقدة mqtt عندما تتلقى رسالة MQTT  . للقيام بذلك، سوف تحتاج إلى سحب و إسقاط عقدة json  و توصيلها مع نقطة الإخراج في عقدة mqtt  .

عقدة json  هي نوع من convenience function ، حيث انه يوزع الرسالة الواردة و يحاول تحويلها من/إلى JSON .لذلك اذا قمت بإرسال سلسلة JSON  سيقوم بتحويلها إلى جافاسكريبت JavaScript و العكس .

قم بتوصيل عقدة debug إلى عقدة json ثم قم بعملية النشر deploy ، استخدم لوحة إعداد HiveMQ  لإرسال سلسلة JSON
{“analyze”:false, “value”:10}  كما هو موضح بالشكل أدناه :

pic3.3

قم بالنظر عن كثب في المخرجات . يمكنك أن ترى msg.payload   تحتوي على object  و الذي يحتوي على حقلين حقل التحليل (analyze )و حقل القيمة (value)  كما رأينا في الدرس السابق يمكنك الوصول إلى هذة الحقول عبر msg.payload.analyze و msg.payload.value . دعونا نلقي نظرة على العقدة وما يمكنها أن تفعل .

X
تم إضافة المنتج إلى السلة بنجاح