
n8n Automatisering Project🚀
- Jean-Christophe Miler
- N8n , Project
- 26 januari 2026
Table of Contents
Belgische Trein Vertrek Agent: Een n8n Automatisering Project
Overzicht
Dit project toont een krachtige n8n workflow die een intelligente Belgische trein vertrek agent creëert. Het systeem integreert met de iRail API om real-time trein vertrekinformatie te verstrekken via Telegram bot interacties en geplande controles, wat de mogelijkheden van low-code automatisering voor real-world transportgegevens demonstreert.
Functies
- Real-time Trein Data: Haalt live vertrekinformatie op van Belgische treinstations via de iRail API
- Telegram Bot Integratie: Gebruikers kunnen trein vertrekken opvragen via natuurlijke taal berichten
- Slimme Station Matching: Intelligente fuzzy matching algoritme om stations te vinden uit gebruikersinvoer
- Meerdere Invoermethoden: Ondersteunt zowel webhook triggers als geplande geautomatiseerde controles
- Rijke Formattering: Toont vertrekinformatie met perron details, vertragingen en status indicatoren
- Foutafhandeling: Robuuste foutafhandeling voor ongeldige stationnamen of API fouten
Architectuur
De workflow bestaat uit verschillende belangrijke componenten die harmonieus samenwerken:
Kerncomponenten
- Webhook Trigger (
Webhook) : Luistert naar POST verzoeken op het/train-departureseindpunt - Bericht Parser (
Code in JavaScript1) : Haalt stad en tijd informatie op uit natuurlijke taal berichten - Station Zoeker (
Vind Station) : Komt gebruikersinvoer overeen met officiële Belgische stationnamen met fuzzy logica - API Integratie (
Get Stations&Get Liveboard) : Haalt station data en live vertrekinformatie op - Response Formatter (
Code in JavaScript3) : Formatteert vertrekdata naar gebruiksvriendelijke berichten - Telegram Bot (
Verstuur naar Telegram) : Levert geformatteerde resultaten aan gebruikers
Extra Functies
- Schedule Trigger: Maakt geautomatiseerde vertrekcontroles op gespecificeerde intervallen mogelijk
- Chat Interface: Biedt een interactieve chat-gebaseerde interface voor gebruikers
- HTTP Request Nodes: Staan testen en integratie met externe systemen toe
Technische Implementatie
Natural Language Processing
Het systeem gebruikt geavanceerde regex patronen om gebruikersberichten te parseren:
const patterns = [
/departures?\s+from\s+([^\s]+)\s+at\s+(\d{1,2}:?\d{0,2})/i,
/([^\s]+)\s+(\d{1,2}:?\d{0,2})/,
/([^\s]+)\s+at\s+(\d{1,2}:?\d{0,2})/i
];
Station Matching Algoritme
Het fuzzy matching systeem beoordeelt stations op basis van:
- Perfecte match: Exacte naam match (100 punten)
- Dichte match: Gedeeltelijke naam inclusie (80 punten)
- Zwakke match: Eerste drie tekens (40 punten)
Response Formattering
Het systeem toont tot 5 vertrekken met rijke formatting:
- Treinnummers en bestemmingen
- Vertrektijden met vertragingsinformatie
- Perronnummers
- Real-time status (op tijd, vertraagd, of geannuleerd)
API Integratie
iRail API Eindpunten
- Stations:
https://api.irail.be/stations/?format=json&lang=en - Liveboard:
https://api.irail.be/liveboard/?station={station}&format=json&lang=en
Data Verwerking
De workflow verwerkt:
- Timestamp conversie van Unix timestamps naar leesbaar formaat
- Vertraging berekeningen (seconden naar minuten)
- Voertuig ID opschoning (verwijdert “BE.NMBS.” prefix)
- Annulering status detectie
Gebruikssituaties
For Forpendelaars
- Snelle vertrekcontroles voordat je huis/kantoor verlaat
- Real-time vertragingsinformatie
- Perronwijzigingen en service-updates
Voor Reizigers
- Toerist-vriendelijke stationnaam matching
- Meertalige ondersteuning (Engels)
- Intuïtieve natuurlijke taal queries
Voor Ontwikkelaars
- Voorbeeld van n8n workflow ontwerp
- API integratie patronen
- Foutafhandeling best practices
Configuratie Vereisten
Voorwaarden
- n8n instantie met webhook mogelijkheden
- Telegram Bot API token
- Internet toegang tot iRail API eindpunten
Installatie Stappen
- Importeer de workflow JSON in n8n
- Configureer Telegram bot referenties
- Stel webhook eindpunt URL in
- Test met voorbeeld verzoeken
- Configureer schedule triggers indien nodig
Voorbeeld Interacties
Gebruikersbericht: “Charleroi” Bot Respons:
🚄 Vertrekken: Charleroi-Central
1. 🚂 S614160
🕐 09:54
📍 Perron 10
🧭 Naar: Jambes
✅ Op tijd
2. 🚂 S624260
🕐 09:55
📍 Perron 6
🧭 Naar: Luttre
✅ Op tijd
3. 🚂 IC932
🕐 10:13
📍 Perron 9
🧭 Naar: Lille Flandres
✅ Op tijd
4. 🚂 S614560
🕐 10:16
📍 Perron 1
🧭 Naar: Jambes
✅ Op tijd
5. 🚂 IC3810
🕐 10:19
📍 Perron 7
🧭 Naar: Herstal
✅ Op tijd
📅 Gevraagd voor: nu
🔄 Bijgewerkt: 9:53:26
Voordelen
- Automatisering: Vermindert handmatig controleren van treinschema’s
- Toegankelijkheid: Verstrekt instant informatie via bekende chat interfaces
- Betrouwbaarheid: Handelt foutengracevol af met behulpzame berichten
- Schaalbaarheid: Kan uitgebreid worden om meerdere talen of regio’s te ondersteunen
- Integratie: Gemakkelijk te integreren met andere systemen en workflows
Toekomstige Verbeteringen
Potentiële verbeteringen kunnen omvatten:
- Meertalige ondersteuning (Engels, Frans, Nederlands…)
- Reisplanning met route-informatie
- Tariefinformatie en ticket boeking integratie
- Push notificaties voor favoriete routes
- Historische vertraging analyses
Conclusie
Deze Belgische Trein Vertrek Agent demonstreert hoe n8n kan worden gebruikt om geavanceerde, real-world automatiseringsoplossingen te creëren die meerdere API’s integreren en echte waarde aan gebruikers bieden. De combinatie van natuurlijke taalverwerking, API-integratie en messaging platform connectiviteit creëert een naadloze gebruikerservaring terwijl het de kracht van low-code automatiseringsplatforms toont.
Het project dient als een uitstekende referentie voor ontwikkelaars die vergelijkbare transport- of data-gedreven automatiseringsworkflows willen bouwen met n8n.