This template provides a structured way to build Telegram bots that respond to specific commands and handle user input. It allows users to interact with your bot by selecting options from a Telegram bot menu, without needing to type out full instructions or rely on conversational AI. This approach offers precise control and predictable behavior for command-driven interactions.
Key Features:
- 🤖 Structured Command Handling: Unlike approaches that rely on conversational AI (like the "AI Agent" node), this template provides a deterministic way to handle specific commands triggered by users selecting options from a Telegram bot menu. Users do not need to write out full instructions.
- ➕ Command-Based Interaction (Extensible): Ready to process three commands (
/command1
,/command2
,/command3
), and easily extensible to support additional commands. - 🚦 Clear Command Routing: Employs
Switch
nodes to efficiently route execution based on both the initial command and the current conversation state. - 💬 Content Requesting: Prompts the user to provide content after a command is received. This is handled by dedicated
Telegram
nodes. - 🛠️ Easy Customization: Includes placeholder (
No Operation, do nothing
) nodes where you can easily insert your own custom processing logic for each command.
Why This Template is Unique:
n8n currently lacks a native, built-in mechanism for handling individual Telegram commands in a structured, non-conversational way. Many users resort to "AI Agent" nodes, which are designed for open-ended conversations. This template fills that gap by providing a framework for:
- ✅ Predefined Commands: Users interact with your bot through a menu of predefined commands, eliminating the need for complex natural language processing.
- 🧠 Deterministic Behavior: The workflow's response is predictable and directly tied to the selected command, unlike AI-driven approaches where responses can be less consistent.
- 🖱️ Simplified Interaction: Users simply click a button in the Telegram menu, making the interaction intuitive and user-friendly.
How to Use:
- Initialization (One-Time): Execute the "Temp to Initiate Static Data" node once to create the necessary
telegramStates
object in the workflow's static data. This is crucial for state management. - Customize Processing Logic: Replace the
NoOp
nodes (Command1 processing
,Command2 processing
,Command3 processing
) with your own nodes to handle the content received for each command. It is highly recommended to add input validation within your processing logic. - Telegram Credentials: Configure the
Telegram Trigger
andTelegram
nodes with your bot's API token.
Example Use Case:
This template is ideal for creating bots that require a command followed by specific input, such as:
- 📊 Data Collection: A command to initiate a form, followed by a request for the data.
- 🛠️ Service Requests: A command to request a service, followed by a request for details.
- 📚 Interactive Tutorials: A command to start a tutorial, followed by a request of completion.