USŁUGA

MQTT Engine

MQTT dla floty urządzeń Cams. MQTT Engine to konsument backendowy za EMQX, który subskrybuje wspólne tematy obecności i dostępności, kieruje zdarzenia do tego samego potoku obecności co transporty HTTP i TCP oraz publikuje koperty poleceń serwer–urządzenie.

Przegląd

Silnik transportowy MQTT, który przyjmuje zdarzenia obecności i wysyła polecenia do urządzeń przez broker EMQX — stworzony dla dużych flot podłączonych urządzeń.

MQTT Engine to transport MQTT w rodzinie silników Cams, odpowiednik HTTP i trwałego TCP. Działa jako konsument backendowy za brokerem EMQX: subskrybuje wspólne tematy obecności i dostępności pod api/mqtt/v1/{sn}/, kieruje każde zdarzenie do wspólnego potoku i publikuje polecenia serwer–urządzenie na temacie poleceń jako kompatybilne w przód koperty JSON. EMQX obsługuje sesje TLS urządzeń, uwierzytelnianie, QoS i last-will; wiele instancji silnika równoważy obciążenie przez współdzielone subskrypcje EMQX dla dużych flot.

USŁUGAMQTTEMQXTLSJSONC++
Schemat tematów 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":{} }

Możliwości

Co potrafi

Przyjmowanie przez MQTT

Subskrybuje wspólne tematy zdarzeń i kieruje każde zdarzenie obecności do tego samego potoku przechowywania i przekazywania co HTTP i TCP.

Śledzenie dostępności

Konsumuje temat dostępności i last-will, aby rozłączenia wykryte przez brokera oznaczały urządzenie jako offline.

Wysyłanie poleceń

Publikuje kolejkowane polecenia serwer–urządzenie na temacie poleceń każdego urządzenia jako koperty JSON z QoS 1.

Skalowanie poziome

Współdzielone subskrypcje EMQX równoważą obciążenie obecności między wieloma instancjami silnika dla dużych flot urządzeń.

Funkcje

Wszystko w zestawie

  • Front transportu MQTT dla obecności, równorzędny wobec silników HTTP i natywnego TCP
  • Schemat tematów api/mqtt/v1/{sn}/{evt|cmd|st} zgodny z aplikacją i ACL EMQX
  • Konsument backendowy za EMQX: współdzielone subskrypcje równoważą obciążenie między N instancjami
  • Przyjmuje zdarzenia obecności o ładunku identycznym z treścią odbicia HTTP do wspólnego potoku
  • Dostępność i last-will przez temat statusu, aby rozłączenia oznaczały urządzenia jako offline
  • Wysyłanie poleceń serwer–urządzenie jako kompatybilna w przód koperta JSON {id, op, data} z QoS 1
  • TLS do brokera z weryfikacją CA; silnik używa konta backendowego, a nie numeru seryjnego urządzenia
  • Wieloplatformowa kompilacja (Linux i Windows) na Eclipse Paho C++

Buduj z MQTT Engine

Weź klucz, przeczytaj dokumentację i wdrażaj. Nasz zespół pomoże przy pierwszej integracji.

FAQ

Częste pytania

Jak MQTT Engine ma się do EMQX?

EMQX pozostaje brokerem obsługującym sesje TLS urządzeń, uwierzytelnianie, QoS i last-will. MQTT Engine to konsument backendowy, który subskrybuje współdzielone tematy, aby przyjmować obecność, i publikuje polecenia do urządzeń.

Czy mogę uruchomić wiele instancji MQTT Engine?

Tak. Współdzielone subskrypcje EMQX równoważą obciążenie tematów obecności i dostępności między wszystkimi działającymi instancjami, więc skalujesz przez dodawanie instancji.

Jaki jest format poleceń serwer–urządzenie?

Koperta JSON {id, op, data} na temacie poleceń z QoS 1, gdzie op jest jedynym wymaganym polem, a nieznane op są ignorowane przez starsze urządzenia dla kompatybilności w przód.

Powiązane

Poznaj więcej z platformy