سرویس

MQTT Engine

MQTT برای ناوگان دستگاه‌های Cams. MQTT Engine یک مصرف‌کننده بک‌اند پشت EMQX است که در topicهای مشترک حضور و غیاب و presence مشترک می‌شود، رویدادها را به همان خط لوله حضور و غیاب انتقال‌های HTTP و TCP هدایت می‌کند و پاکت‌های دستور سرور به دستگاه را منتشر می‌کند.

نمای کلی

یک موتور انتقال MQTT که رویدادهای حضور و غیاب را دریافت می‌کند و دستورهای دستگاه را از طریق بروکر EMQX ارسال می‌کند — ساخته‌شده برای ناوگان‌های بزرگ متصل.

MQTT Engine انتقال MQTT در خانواده موتورهای Cams و همتای HTTP و TCP پایدار است. به‌صورت مصرف‌کننده بک‌اند پشت بروکر EMQX اجرا می‌شود: در topicهای مشترک حضور و غیاب و presence زیر api/mqtt/v1/{sn}/ مشترک می‌شود، هر رویداد را به خط لوله مشترک هدایت می‌کند و دستورهای سرور به دستگاه را روی topic دستور به‌صورت پاکت‌های JSON سازگار با آینده منتشر می‌کند. EMQX نشست‌های TLS دستگاه، احراز هویت، QoS و last-will را پایان می‌دهد؛ چند نمونه موتور از طریق اشتراک‌های مشترک EMQX برای ناوگان‌های بزرگ بار را تقسیم می‌کنند.

SERVICEMQTTEMQXTLSJSONC++
طرح topic در 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

در topicهای مشترک رویداد مشترک می‌شود و هر رویداد حضور و غیاب را به همان خط لوله ذخیره‌سازی و ارسال HTTP و TCP هدایت می‌کند.

پیگیری حضور دستگاه

topic مربوط به presence و last-will را مصرف می‌کند تا قطع اتصال‌های تشخیص‌داده‌شده توسط بروکر، دستگاه را آفلاین علامت بزنند.

ارسال دستورها

دستورهای صف‌شده سرور به دستگاه را روی topic دستور هر دستگاه به‌صورت پاکت JSON با QoS 1 منتشر می‌کند.

مقیاس افقی

اشتراک‌های مشترک EMQX حضور و غیاب را میان چند نمونه موتور برای ناوگان‌های بزرگ دستگاه تقسیم می‌کنند.

امکانات

همه‌چیز در بسته

  • پیشانی انتقال MQTT برای حضور و غیاب، هم‌سطح با موتورهای HTTP و TCP بومی
  • طرح topic api/mqtt/v1/{sn}/{evt|cmd|st} هماهنگ با اپ و ACL در EMQX
  • مصرف‌کننده بک‌اند پشت EMQX: اشتراک‌های مشترک بار را میان N نمونه تقسیم می‌کنند
  • رویدادهای حضور و غیاب را که payload آن‌ها با بدنه punch در HTTP یکسان است به خط لوله مشترک دریافت می‌کند
  • presence و last-will از طریق topic وضعیت تا قطع اتصال‌ها دستگاه‌ها را آفلاین علامت بزنند
  • ارسال دستور از سرور به دستگاه به‌صورت پاکت JSON سازگار با آینده {id, op, data} با QoS 1
  • TLS به بروکر همراه با تأیید CA؛ موتور از یک حساب بک‌اند استفاده می‌کند، نه شماره سریال دستگاه
  • ساخت چندپلتفرمی (لینوکس و ویندوز) روی Eclipse Paho C++

با MQTT Engine بسازید

یک کلید بگیرید، مستندات را بخوانید و عرضه کنید. تیم ما در اولین یکپارچه‌سازی شما کمک می‌کند.

پرسش‌های متداول

پرسش‌های متداول

MQTT Engine چه ارتباطی با EMQX دارد؟

EMQX همچنان بروکری است که نشست‌های TLS دستگاه، احراز هویت، QoS و last-will را پایان می‌دهد. MQTT Engine یک مصرف‌کننده بک‌اند است که در topicهای مشترک برای دریافت حضور و غیاب مشترک می‌شود و دستورها را به دستگاه‌ها منتشر می‌کند.

آیا می‌توانم چند نمونه MQTT Engine اجرا کنم؟

بله. اشتراک‌های مشترک EMQX topicهای حضور و غیاب و presence را میان همه نمونه‌های در حال اجرا تقسیم می‌کنند، بنابراین با افزودن نمونه مقیاس می‌دهید.

قالب دستور از سرور به دستگاه چیست؟

یک پاکت JSON با قالب {id, op, data} روی topic دستور با QoS 1، که در آن op تنها فیلد الزامی است و opهای ناشناخته برای سازگاری با آینده توسط دستگاه‌های قدیمی‌تر نادیده گرفته می‌شوند.

مرتبط

بخش‌های بیشتری از پلتفرم را کاوش کنید