SERVICE

MQTT Engine

Cams डिवाइस फ़्लीट के लिए MQTT। MQTT Engine, EMQX के पीछे एक बैकएंड कंज्यूमर है, जो साझा उपस्थिति और प्रेज़ेंस टॉपिक सब्सक्राइब करता है, इवेंट को HTTP और TCP ट्रांसपोर्ट जैसी ही उपस्थिति पाइपलाइन में भेजता है, और सर्वर-से-डिवाइस कमांड एन्वेलप पब्लिश करता है।

अवलोकन

MQTT ट्रांसपोर्ट इंजन, जो EMQX ब्रोकर पर उपस्थिति इवेंट लेता है और डिवाइस कमांड पुश करता है — बड़े जुड़े फ़्लीट के लिए बना।

MQTT Engine, Cams इंजन परिवार में MQTT ट्रांसपोर्ट है, जो HTTP और परसिस्टेंट TCP का जोड़ीदार है। यह EMQX ब्रोकर के पीछे बैकएंड कंज्यूमर के रूप में चलता है: यह api/mqtt/v1/{sn}/ के अंतर्गत साझा उपस्थिति और प्रेज़ेंस टॉपिक सब्सक्राइब करता है, हर इवेंट को साझा पाइपलाइन में भेजता है, और सर्वर-से-डिवाइस कमांड को कमांड टॉपिक पर फ़ॉरवर्ड-कम्पैटिबल JSON एन्वेलप के रूप में पब्लिश करता है। EMQX डिवाइस TLS सेशन, ऑथ, QoS और last-will संभालता है; बड़े फ़्लीट के लिए कई इंजन इंस्टेंस EMQX शेयर्ड सब्सक्रिप्शन के ज़रिए लोड-बैलेंस होते हैं।

SERVICEMQTTEMQXTLSJSONC++
MQTT टॉपिक स्कीम (EMQX)
# device -> server (attendance)
api/mqtt/v1/{sn}/evt   { "user_id":"1001", "att_time":"...", "att_state":1 }
# device -> server (presence / LWT)
api/mqtt/v1/{sn}/st    { "online": true }
# server -> device (command)
api/mqtt/v1/{sn}/cmd   { "id":"c1", "op":"sync_user", "data":{} }

क्षमताएँ

यह क्या करता है

MQTT पर इन्जेस्ट करें

साझा इवेंट टॉपिक सब्सक्राइब करता है और हर उपस्थिति इवेंट को HTTP और TCP जैसी ही स्टोरेज और पुश पाइपलाइन में भेजता है।

मौजूदगी ट्रैक करें

प्रेज़ेंस टॉपिक और last-will का उपयोग करता है ताकि ब्रोकर द्वारा पहचाने गए डिस्कनेक्ट डिवाइस को ऑफ़लाइन चिह्नित करें।

कमांड पुश करें

क्यू में रखे सर्वर-से-डिवाइस कमांड को हर डिवाइस के कमांड टॉपिक पर QoS 1 पर JSON एन्वेलप के रूप में पब्लिश करता है।

हॉरिज़ॉन्टल स्केल

EMQX शेयर्ड सब्सक्रिप्शन बड़े डिवाइस फ़्लीट के लिए उपस्थिति को कई इंजन इंस्टेंस में लोड-बैलेंस करते हैं।

फ़ीचर्स

सब कुछ शामिल

  • उपस्थिति के लिए MQTT ट्रांसपोर्ट फ़्रंट-एंड, HTTP और नेटिव TCP इंजन का समकक्ष
  • टॉपिक स्कीम api/mqtt/v1/{sn}/{evt|cmd|st}, ऐप और EMQX ACL के अनुरूप
  • EMQX के पीछे बैकएंड कंज्यूमर: शेयर्ड सब्सक्रिप्शन N इंस्टेंस में लोड-बैलेंस करते हैं
  • HTTP punch बॉडी के पेलोड जैसे ही उपस्थिति इवेंट को साझा पाइपलाइन में इन्जेस्ट करता है
  • स्टेटस टॉपिक के ज़रिए प्रेज़ेंस और last-will, ताकि डिस्कनेक्ट डिवाइसों को ऑफ़लाइन चिह्नित करें
  • सर्वर-से-डिवाइस कमांड पुश, QoS 1 पर फ़ॉरवर्ड-कम्पैटिबल {id, op, data} JSON एन्वेलप के रूप में
  • CA सत्यापन के साथ ब्रोकर तक TLS; इंजन बैकएंड अकाउंट का उपयोग करता है, डिवाइस सीरियल का नहीं
  • Eclipse Paho C++ पर क्रॉस-प्लेटफ़ॉर्म बिल्ड (Linux और Windows)

MQTT Engine के साथ बनाएँ

की लें, डॉक्स पढ़ें और शिप करें। आपके पहले इंटीग्रेशन में हमारी टीम मदद करती है।

अक्सर पूछे जाने वाले प्रश्न

आम सवाल

MQTT Engine का EMQX से क्या संबंध है?

EMQX वही ब्रोकर रहता है जो डिवाइस TLS सेशन, ऑथ, QoS और last-will संभालता है। MQTT Engine बैकएंड कंज्यूमर है, जो उपस्थिति इन्जेस्ट करने के लिए साझा टॉपिक सब्सक्राइब करता है और डिवाइसों को कमांड पब्लिश करता है।

क्या मैं कई MQTT Engine इंस्टेंस चला सकता हूँ?

हाँ। EMQX शेयर्ड सब्सक्रिप्शन उपस्थिति और प्रेज़ेंस टॉपिक को सभी चल रहे इंस्टेंस में लोड-बैलेंस करते हैं, इसलिए आप इंस्टेंस जोड़कर स्केल करते हैं।

सर्वर-से-डिवाइस कमांड फ़ॉर्मेट क्या है?

कमांड टॉपिक पर QoS 1 पर JSON एन्वेलप {id, op, data}, जहाँ op एकमात्र आवश्यक फ़ील्ड है और फ़ॉरवर्ड कम्पैटिबिलिटी के लिए पुराने डिवाइस अज्ञात ops को अनदेखा करते हैं।

संबंधित

प्लेटफ़ॉर्म को और जानें