Building custom push notification service with MQTT
az MQTT (Message Queue Telemetry Transport) egy könnyű üzenetküldő protokoll, amelyet kifejezetten az IBM IOT számára terveztek. Az MQTT A Publish-Subscribe modellen működik.
Facebook & a WhatsApp MQTT-t használ az üzenetküldő motorhoz.
Nos, az oktatóanyagban megmutatom, hogyan lehet megvalósítani egy push értesítési szolgáltatást az MQTT használatával. Nem teljes körű szolgáltatást fogok megvalósítani, hanem egy prototípust arról, hogyan lehet.
eszközök fogják használni,
- EMQ (MQTT bróker)
- MongoDB (felhasználói információk tárolására)
- Admin Irányítópult (értesítés közzétételére)
- Android alkalmazás (kliens)
- Eclipse Paho MQTT kliens (Android, JavaScript)
a nagy kép, hogy a rendszer összetevői hogyan hatnak egymásra.
az ötlet az, hogy a felhasználó csatlakozik az mqtt Brókerhez, a bróker hitelesíti őket a mongodb adatokkal.
tegyük fel, hogy egy felhasználó rendszergazdaként közzéteszi az értesítéseket & a többi felhasználó feliratkozik ezekre az értesítésekre. Tegyük fel, [email protected] felhasználó, az e-mail címmel történő hitelesítés után a felhasználó feliratkozik a témára([email protected]), majd az admin irányítópultról, ha üzenetet tesz közzé a témában [email protected] a felhasználó megkapja. Ez minden.
MongoDB dokumentum séma,
{ "user_email": "email address of user", "user_password": "password of user", "type": "admin/user"}
tegyük fel, hogy ez az admin irányítópult,
3 gomb van. Az egyik a Kijelentkezés, az egyik a Felhasználó hozzáadása, a másik pedig a Push értesítések küldése.
a képernyőn a push notification nézet látható. Admin dashboard csatlakozik MQTT bróker keresztül Websocket. A felhasználói e-mail cím az a téma, ahol az üzenetet közzéteszik. A Küldés gombra kattintva közzéteszi az üzenetet a Websocket segítségével.
most ha a megfelelő e-mail cím csatlakoztatva van & feliratkozott az adott témára, akkor az ügyfél megkapja az üzenetet.
Megjegyzés: Ez csak egy oktatási célú prototípus, amely nem áll készen a gyártásra. Ahhoz, hogy használni a termelési rendszer van, hogy végre security & egyéb tuning, ahol szükséges.
Leave a Reply