BotFather slash commands en Telegram Bot API in n8n
Wil je BotFather commands zoals /setdescription, /setabouttext, /setuserpic en /setcommands goed gebruiken met n8n? Begin bij de botconfiguratie, sla het token veilig op in n8n Credentials en kies daarna pas tussen webhook en polling.
BotFather slash commands cheat sheet
Gebruik /setcommands voor het commandmenu, /setdescription voor de botbeschrijving, /setabouttext voor de korte profieltekst en /setuserpic voor de botfoto. Daarna verwerkt n8n berichten via webhook of polling.
Welke BotFather command hoort bij welke taak?
Gebruik /setcommands voor het menu dat gebruikers zien, /setdescription voor de langere botbeschrijving, /setabouttext voor de korte profieltekst en /setuserpic voor herkenning in Telegram. n8n hoort daarna alleen de berichtenstroom te verwerken: token in Credentials, command uitlezen uit message.text en routeren met een Switch node.
Snel antwoord: BotFather commands
/setcommands maakt het commandmenu. /setdescription bepaalt de zichtbare botbeschrijving, /setabouttext vult de korte profieltekst en /setuserpic zet de profielfoto. In n8n gebruik je daarna het bot token voor webhooks, polling en berichtacties.
Commandmenu in 6 regels
Een goed BotFather commandmenu is kort en voorspelbaar: start - Begin het gesprek, help - Toon hulp, status - Check je aanvraag, settings - Pas voorkeuren aan, contact - Vraag hulp en stop - Stop meldingen. Houd commands lowercase, zonder spaties en maximaal 32 tekens; langere keuzes horen in knoppen of een vervolgvraag.
n8n routing voor slash commands
Laat de Telegram Trigger alle updates ontvangen, normaliseer message.text naar het eerste woord en routeer daarna met een Switch node. Zo blijft /start extra tekst dezelfde route als /start. Voor een complete botflow kun je dit combineren met de Telegram bot automatisering gids.
BotFather of Telegram Bot API?
Gebruik BotFather voor handmatige setup en snelle wijzigingen. Gebruik de Telegram Bot API alleen als je commands, beschrijving of profielgegevens vanuit een beheerworkflow wilt aanpassen. Voor n8n is de veilige basis hetzelfde: token in credentials, geen token in nodes, logs of codevoorbeelden.
Benodigdheden
• Telegram account + BotFather
• n8n met publieke URL (of tunnel) voor webhooks
• Beveiligde opslag voor je bot token (n8n Credentials)
Stap 1 – Bot aanmaken met BotFather
Start chat met BotFather → /newbot → kies naam en @gebruikersnaam. Noteer het API‑token.
Stap 2 – Token opslaan in n8n
Maak een nieuw Credential aan (bijv. TelegramBotToken) en plak je token. Gebruik nooit plaintext in nodes.
Stap 3 – Webhook of polling
Webhook: configureer een n8n Webhook node en stel `setWebhook` in via HTTP Request. Alternatief: periodiek `getUpdates` (polling).
Stap 4 – Updates verwerken
Parse het JSON event (message, callback_query). Filter op chat/user en voer acties uit (routering, validatie).
Stap 5 – Berichten versturen
Gebruik `sendMessage` met Markdown/HTML, of stuur media (`sendPhoto`, `sendDocument`). Gebruik inline keyboards voor interactie.
Stap 6 – Commands en menu
Definieer bot commands via BotFather of API. Bouw een eenvoudige command‑router in n8n (switch op `message.text`).
Security & betrouwbaarheid
Valideer chat IDs, throttle requests, log errors en implementeer retries/back‑off bij 429/5xx. Mask sensitievelingen in logs.
Veelgemaakte fouten
• 401: ongeldig token
• 400: ongeldige payload/parse_mode
• Webhook niet bereikbaar (SSL/URL)
🤖 BotFather Configuratie Details
Complete bot setup:
1) Open Telegram → zoek @BotFather
2) /newbot → kies display naam
3) Username moet eindigen op 'bot' (bijv. MijnBedrijf_bot)
4) Ontvang API token (bewaar veilig!)
Extra bot commands:
• /setdescription - Bot beschrijving
• /setabouttext - Over deze bot
• /setuserpic - Bot profielfoto
• /setcommands - Command menu
• /setprivacy - Privacy mode (belangrijk voor groepen!)
⚡ Webhook vs Polling Vergelijking
Webhook (aanbevolen voor productie):
✅ Real-time berichten ontvangen
✅ Geen resources verspilling
✅ Schaalbaar tot duizenden users
❌ Vereist HTTPS + publiek domein
❌ Slechts 1 webhook per bot
Polling (voor development):
✅ Werkt achter firewall/NAT
✅ Geen SSL certificaat nodig
✅ Makkelijk lokaal testen
❌ Vertraagde berichten (1-30 sec)
❌ Continue API calls (inefficiënt)
🔐 Bot Token Security
Beveiligingstips:
• NOOIT token in code committen
• Gebruik N8N Credentials Manager
• Roteer tokens regelmatig via BotFather
• Monitor bot gebruik via @BotFather
Token compromised?
1) Onmiddellijk /revoke bij BotFather
2) Genereer nieuw token
3) Update alle N8N workflows
4) Check logs voor misbruik
💬 Message Types & Formatting
Ondersteunde berichttypen:
• Text: Plain, Markdown, HTML
• Media: Photo (10MB), Video (50MB), Audio, Document
• Location: GPS coördinaten
• Contact: Telefoonnummer delen
• Sticker/GIF: Animated content
Markdown formatting:*bold* → bold_italic_ → italic`code` → inline code[link](url) → hyperlink
🎯 Inline Keyboards Bouwen
Button types:
• Callback button: Triggert callback_query
• URL button: Opent externe link
• Switch inline: Start inline query
• Pay button: Telegram Payments
N8N implementatie:{
"reply_markup": {
"inline_keyboard": [[
{"text": "✅ Ja", "callback_data": "yes"},
{"text": "❌ Nee", "callback_data": "no"}
]]
}
}
Process callbacks met Switch node op callback_data!
📋 Command Menu Setup
Bot commands configureren:
1) BotFather: /setcommands
2) Format: command - beschrijving
Voorbeeld commands:start - Begin gesprek met bot
help - Toon hulp informatie
status - Check systeem status
subscribe - Aanmelden voor updates
settings - Bot instellingen
cancel - Stop huidige actie
N8N routing:
Gebruik Switch node op message.text voor command routing!
👥 Groepschat Functionaliteit
Bot in groepen gebruiken:
1) Privacy mode uitschakelen via BotFather
2) Bot moet admin zijn voor alle berichten
3) Filter op chat.type: private/group/supergroup
Groep-specifieke features:
• Mention detection (@botname)
• Admin commands (kick/ban/mute)
• Polls en quizzes
• Pinned messages
• Member management
⚠️ Let op GDPR bij groepsdata opslag!
🔄 State Management
Conversatie state bijhouden:
• Gebruik Redis/Database voor user sessions
• Store: chat_id, current_step, temp_data
• TTL instellen voor cleanup
N8N implementatie:
1) Set node: Store user state
2) Database node: Persist data
3) Switch node: Route based on state
4) Cleanup: Schedule node voor expiry
Perfect voor multi-step formulieren en wizards!
📊 Analytics & Monitoring
Bot metrics tracken:
• Active users (DAU/MAU)
• Message frequency
• Command usage stats
• Response times
• Error rates
N8N monitoring setup:
1) Log alle interactions naar database
2) Grafana dashboard voor visualisatie
3) Alert bij errors via email/Slack
4) Weekly reports genereren
💰 Telegram Payments
Payment bot setup:
1) Contact @BotFather voor Payments API
2) Koppel payment provider (Stripe/PayPal)
3) Test mode beschikbaar
Supported providers:
• Stripe (wereldwijd)
• Smart Glocal (Europa)
• Razorpay (India)
• PayMaster (Rusland)
N8N workflow:
Invoice → Payment button → Process payment → Confirm delivery
🚀 Performance Optimalisatie
Bot snelheid verbeteren:
• Cache frequent data (Redis)
• Async processing voor zware taken
• Queue systeem voor bulk messages
• CDN voor media files
Rate limits:
• 30 messages/second per chat
• 1 message/second voor groepen
• Bulk messages: max 100 per request
Implement exponential backoff bij 429 errors!
🛠️ Advanced Bot Features
Geavanceerde functionaliteit:
📍 Inline mode:
• @botname query in elke chat
• Real-time search results
• Article/photo/video results
📍 Web App:
• Mini webapp in Telegram
• JavaScript SDK beschikbaar
• Full UI customization
📍 Scheduled messages:
• Cron node voor timing
• Timezone handling
• Reminder systeem
🔧 Debugging & Testing
Test strategieën:
• Test groep aanmaken
• Multiple test accounts
• Telegram Test Server (aparte environment)
• ngrok voor lokale webhook testing
Debug tools:
• @RawDataBot - zie JSON van messages
• Telegram Bot API Postman Collection
• N8N execution logs
• Webhook.site voor request inspection
📚 Nuttige Resources
Officiële documentatie:
• Telegram Bot API
• Bot Code Examples
• N8N Webhook Guide
Community:
• @BotDevelopment (Telegram groep)
• r/TelegramBots (Reddit)
• Stack Overflow #telegram-bot
Bot directories:
• @BotoStore
• @BotList