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,
- EMQ (MQTT Broker)
- MongoDB (pro ukládání informací o uživateli)
- Admin Dashboard (pro publikování oznámení)
- Android App (Klient)
- 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