# 09. Build a bot that answers one question.

Receive a real test message through your own Telegram bot.

## Facilitator preflight

Bring laptops, internet, a projector and these local course files. Check tool access before the meetup. Keep samples free of personal information.

Quick win: Create a named test bot with BotFather and open its chat.

Prerequisites: Module 07. Telegram account and prepared HTTPS n8n webhook instance.

### Tools and cost notes

- **BotFather, Telegram Trigger and Telegram Send Message in n8n.**: Prepared before the meetup.. n8n hosting terms vary. This first bot uses a fixed response, no model API.

## Run of show

| Slide | Minutes | Activity |
|---|---:|---|
| 1 | 3 | Build a bot that answers one question. |
| 2 | 3 | Before you start. |
| 3 | 5 | Your first small win. |
| 4 | 3 | What happens between input and output? |
| 5 | 3 | Step 01. Create your own test bot. |
| 6 | 3 | Step 02. Connect credentials. |
| 7 | 3 | Step 03. Start a test event. |
| 8 | 3 | Step 04. Add one fixed reply. |
| 9 | 3 | Step 05. Test in your own chat. |
| 10 | 3 | Step 06. Choose a next step. |
| 11 | 4 | Make the working version. |
| 12 | 4 | Ask for a review. Then check it. |
| 13 | 6 | Prove your result works. |
| 14 | 4 | When it does not work yet. |
| 15 | 5 | Choose your next challenge. |
| 16 | 3 | Keep the result. Keep the evidence. |
| 17 | 2 | Sources you can check. |

Total: 60 minutes.

## 1. Build a bot that answers one question.

Outcome: Receive a real test message through your own Telegram bot. This is a 60-minute in-person laptop session after preflight. No setup-duration guarantee. Core first, extensions second.

## 2. Before you start.

n8n hosting terms vary. This first bot uses a fixed response, no model API. The facilitator verifies accounts, installed tools and model/host connections before the session. Pair up if setup is incomplete. Do not create accounts or incur costs without understanding the provider terms.

## 3. Your first small win.

Quick win: Create a named test bot with BotFather and open its chat. Aim for a visible result in the first 15 minutes after preflight. Explain that generated code/output is untested until the learner checks it. If tools are unavailable, inspect the prepared example with a partner.

Copyable prompt: [Open prompt](index.html#09-quick-win)

```text
Design a short factual welcome for a fictional community bot. Say it is a test bot, answers only practice FAQs and is not monitored for urgent requests. Do not invent meetup dates, links or services.
```

## 4. What happens between input and output?

Ask a learner to explain each stage in their own words. This is a teaching model, not a promise that all tools behave identically.

## 5. Step 01. Create your own test bot.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 6. Step 02. Connect credentials.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 7. Step 03. Start a test event.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 8. Step 04. Add one fixed reply.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 9. Step 05. Test in your own chat.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 10. Step 06. Choose a next step.

Perform these numbered actions on the laptop. Pause after the step and inspect the result. Keep credentials private and use the prepared workshop instance.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## 11. Make the working version.

Use fictional practice inputs. Ask learners to show their work, not just the final answer.

Copyable prompt: [Open prompt](index.html#09-build)

```text
Write three practice FAQ answers for my test bot using only these fictional facts: free learning group; topics include prompts and automation; the next date is unconfirmed. For other questions say Ask the organiser. No urgent-service claims.
```

## 12. Ask for a review. Then check it.

Use fictional practice inputs. Ask learners to show their work, not just the final answer.

Copyable prompt: [Open prompt](index.html#09-review)

```text
Review this bot welcome and FAQ for invented information, ambiguous promises and inappropriate urgent-use claims. Keep it clear that this is a workshop test bot. Text: [paste].
```

## 13. Prove your result works.

These are manual acceptance tests for the learner to perform. No test is claimed to have run merely because it appears here. Ask pairs to demonstrate one pass and one corrected failure.

## 14. When it does not work yet.

Choose the observed symptom. Change one thing and rerun the smallest test. Avoid restarting the whole project or adding tools before diagnosing the current step.

## 15. Choose your next challenge.

Experienced learners use the extensions while beginners complete the same core outcome. An extension is optional, not a prerequisite for participating.

## 16. Keep the result. Keep the evidence.

Save the working version before leaving. Add a short note: what worked, what needed correction and what you would try next. The next module builds on the saved output.

## 17. Sources you can check.

Primary sources checked during course creation on 2026-10-08. Provider interfaces and availability can change. The examples, prompts and activities are original community teaching designs. Source links explain capabilities; they do not prove these fictional exercises were executed.

Source: [Telegram: Create a bot](https://core.telegram.org/bots/tutorial)

Source: [n8n: Telegram webhook issues](https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger/common-issues/)

## Extensions

- Route a known question with an If node.
- Add a checked AI reply with explicit scope and cost controls.

## Delivery notes

Arrow keys, Space, Home and End navigate slides. N opens notes. Read all slides creates a scrolling lesson. Every prompt has a real Copy prompt button with an honest manual fallback if the browser blocks clipboard access. Keep the whole curriculum folder together: PPTX prompt links open the companion index.html at the same prompt anchor. PowerPoint does not copy directly. For sharing online, rebuild with --companion-base-url set to the published curriculum URL.

Motion illustrates input, agent, tool, human review and output. Pause flow stops it; system reduced-motion is respected. PDF contains a static diagram. PPTX uses an animated GIF where available; playback varies by viewer.

Original teaching content, synthesized from learning objectives. Public source decks remain separate in library/. No one-to-one rebranding or permission to republish is implied.
