Building custom push notification service with MQTT

MQTT (Message Queue Telemetry Transport) je lehký protokol pro zasílání zpráv speciálně navržený pro IOT společností IBM. MQTT pracuje na Publish-Subscribe modelu.
Facebook & WhatsApp používá MQTT pro jejich messaging engine.

No, v tutoriálu ukážu, jak můžete implementovat službu oznámení push pomocí MQTT. Nebudu implementovat kompletní servis, ale prototyp, Jak to může být.

nástroje budou použity,

  1. EMQ (MQTT Broker)
  2. MongoDB (pro ukládání informací o uživateli)
  3. Admin Dashboard (pro publikování oznámení)
  4. Android App (Klient)
  5. Eclipse Paho MQTT client (Robot, JavaScript)


je to velký obrázek, jak komponenty v systému vzájemně spolupracují.

myšlenka je, že se uživatel připojí k makléři MQTT, broker je ověří daty v mongodb.
Předpokládejme, že uživatel jako správce systému, který zveřejní oznámení & ostatní uživatelé budou přihlášeni k odběru těchto oznámení. Předpokládejme, [email protected] je uživatel, po ověření pomocí e-mailové adresy bude uživatel přihlášen k tématu([email protected]) a pak z admin dashboard, pokud publikujete zprávu na téma [email protected] uživatel ji obdrží. To je vše.

MongoDB Schema dokumentu,

{ "user_email": "email address of user", "user_password": "password of user", "type": "admin/user"}

Předpokládejme, že se jedná o řídicí panel správce,

k dispozici jsou 3 tlačítka. Jeden se odhlásit, jeden je Přidat uživatele a druhý posílat oznámení Push.
na obrazovce je vidět zobrazení oznámení push. Admin dashboard je připojen k MQTT broker přes Websocket. E-mailová adresa uživatele je téma, kde bude zpráva zveřejněna. Po kliknutí na Odeslat bude publikovat zprávu pomocí Websocket.

Nyní, pokud je příslušná e-mailová adresa připojena k příslušnému tématu &, klient obdrží zprávu.

Poznámka: Jedná se pouze o prototyp pro vzdělávací účely, který není připraven k výrobě. Chcete – li jej použít ve výrobním systému, musíte v případě potřeby implementovat zabezpečení & další ladění.

Leave a Reply