Node-RED: Gebruikssituatie: postvakken verbinden

Naadloos honderden postvakken in een postkantoor verbinden

Welkom bij de Stackhero-documentatie

Stackhero biedt een volledig beheerde Node-RED cloud omgeving waarmee u snel workflows kunt bouwen:

  • Ingebouwde MQTT-server (Mosquitto) voor naadloze IoT-integratie.
  • Volledige toegang tot de Node-RED admin UI voor het beheren van flows en instellingen.
  • Node-RED Dashboard inbegrepen voor realtime visualisatie.
  • Dedicated SMTP-mailserver inbegrepen, zonder limieten op het verzenden.
  • Eenvoudige one-click updates om uw instance up-to-date te houden.
  • Aangepaste domeinnamen met automatische HTTPS: bijvoorbeeld https://node-red.uw-bedrijf.com.
  • Hoge performance en sterke security dankzij een privé, dedicated infrastructuur.

U kunt binnen ongeveer 5 minuten een veilige, productieklare Node-RED cloud hosting instance draaien. Stackhero verzorgt de installatie, updates en infrastructuur, zodat u zich kunt richten op het bouwen van automatiseringen.

Een van onze klanten beheert postbussen, honderden om precies te zijn. Het bedrijf wilde hun klanten op de hoogte stellen wanneer ze nieuwe post ontvingen (geen e-mails, maar echte papieren post!). Een IoT-oplossing werd ontwikkeld om dit te bereiken, met gebruik van Node-RED, MQTT en MongoDB, en het werd binnen enkele dagen geïmplementeerd. Het is vergelijkbaar met een Amazon Dash, maar specifiek afgestemd op postmeldingen. Hier is hoe het werd gerealiseerd.

Het IoT-apparaat is elegant eenvoudig. Het is een compacte zwarte doos, gevoed via USB, die een knop en een rood lampje bevat. Er is één apparaat toegewezen aan elke postbus.

Wanneer post wordt ontvangen bij de receptie, wordt deze in de overeenkomstige postbus geplaatst en drukt de operator op de knop. Het rode lampje knippert 15 seconden. Als de operator binnen deze periode opnieuw op de knop drukt, wordt de melding geannuleerd. Als er binnen deze 15 seconden geen actie wordt ondernomen, wordt er een e-mailmelding naar de klant verzonden.

Elke knop is uitgerust met een ESP8266, een WiFi-compatibele chipset. Deze WiFi-verbinding faciliteert de communicatie van het apparaat met het internet.

Een ESP8266 op een WEMOS D1 Mini boardEen ESP8266 op een WEMOS D1 Mini board

Het MQTT-protocol werd gekozen voor de communicatie tussen de ESP8266 en de server. Het is een lichtgewicht protocol, ideaal voor IoT-toepassingen.

Wanneer de knop wordt ingedrukt, wordt na een korte pauze van 15 seconden een bericht naar de server gestuurd via MQTT. De server identificeert vervolgens de overeenkomstige e-mail en stuurt een melding naar de klant.

MQTT is perfect voor IoT. Helaas is authenticatie niet standaard geactiveerd, noch encryptie. We hebben veel IoT-platforms gezien die kwetsbaar zijn voor aanvallen, wat leidt tot lekken van privégegevens. Gelukkig, wanneer u een MQTT-instantie op Stackhero start, zijn zowel authenticatie als encryptie geactiveerd, wat een volledig beveiligde oplossing biedt.

Om de knopacties te beheren en meldingen naar gebruikers te sturen, werd Node-RED gekozen voor gegevensverwerking, met een MongoDB-database om gebruikers-e-mails op te slaan.

Node-RED is een grafisch programmeertool ontwikkeld door IBM, ideaal voor dit soort taken. Het is gemakkelijk te gebruiken, krachtig en zeer uitbreidbaar.

Dankzij Node-RED kon onze klant hun hele backend in slechts enkele uren creëren!

Wanneer een postbusknop wordt ingedrukt, wordt het bericht ontvangen door Node-RED via MQTT. Node-RED lokaliseert vervolgens de overeenkomstige gebruiker in de MongoDB-database, stelt een nieuwe e-mail op en verzendt deze.

Node-RED flow: slechts 5 nodes zijn nodig om de hele backend te creëren!Node-RED flow: slechts 5 nodes zijn nodig om de hele backend te creëren!

Wanneer u een Node-RED-instantie op Stackhero start, krijgt u een MQTT-server samen met een toegewijde e-mailserver, waarmee u onbeperkt e-mails kunt verzenden!

De backoffice-interface wordt gebruikt door postkantooroperators. Ze kunnen een nieuwe knop met een bijbehorend e-mailadres toevoegen of er een verwijderen indien nodig.

Node-RED bevat een HTTP-server, waarmee HTML-pagina's en API's met minimale inspanning kunnen worden gecreëerd.

Node-RED backoffice flowNode-RED backoffice flow

De hele backoffice-interface werd direct binnen Node-RED ontwikkeld. Het bestaat uit een HTML-pagina met authenticatie en een API met twee routes. De eerste API-route maakt het toevoegen van een nieuwe knop mogelijk, terwijl de tweede route het verwijderen van een bestaande knop vergemakkelijkt.

Node-RED diende als de hoeksteen van dit project. Met de Stackhero-instantie die een beveiligde MQTT-server en een e-mailserver direct uit de doos biedt, werd het project in slechts enkele uren gerealiseerd, iets wat traditionele tools niet konden evenaren.

Node-RED biedt onbeperkte mogelijkheden. U kunt het bijvoorbeeld verbinden met elke API of database en externe modules moeiteloos toevoegen (~2000 modules zijn beschikbaar!).

Als Node-RED uw interesse wekt, kunt u binnen slechts 2 minuten een instantie op Stackhero starten: Node-RED.