Telegram 机器人入门:从创建到上线
客服应答、订单通知、内部查询,这些常见需求用一个 Telegram 机器人就能完成。最简单的机器人,一个下午就能上线。
01第一步:创建机器人
- 在 Telegram 中搜索官方的 @BotFather,发送 /newbot。
- 按提示设置显示名称和用户名,用户名必须以 bot 结尾。
- BotFather 会返回一串 Token,这是控制机器人的唯一凭证。
- 用 /setdescription、/setuserpic 设置简介和头像,用 /setcommands 设置命令菜单。
Token 泄露等于把机器人交给别人。不要写进前端代码或公开仓库,泄露后用 /revoke 重新生成。
02第二步:选择接收消息的方式
| 方式 | 原理 | 适合 |
|---|---|---|
| 长轮询 getUpdates | 程序主动向 Telegram 拉取新消息 | 本地开发、没有公网地址的服务器 |
| Webhook | Telegram 把消息推送到你的 HTTPS 地址 | 正式上线、消息量大的机器人 |
两种方式不能同时使用。设置 Webhook 后,getUpdates 会停止返回消息。
03第三步:写一个最小的机器人
主流语言都有成熟的库,例如 Python 的 python-telegram-bot、aiogram,Node.js 的 grammY、Telegraf。最小功能通常是:收到 /start 回复欢迎语,收到关键词回复对应内容,按钮使用内联键盘。
04第四步:部署
- 小机器人:一台便宜的云服务器或 Serverless 平台即可,配合 Webhook 几乎零维护。
- 需要数据库、后台管理时,再考虑完整的服务端。
- 群组里使用时,注意机器人默认开启隐私模式,只能看到命令和提及它的消息。
- 群发消息要控制频率,Telegram 对发送速度有限制,超出会返回 429 错误。
05什么时候值得定制
支付收款、多人工单分配、与现有业务系统对接,这些需求涉及数据安全和稳定性,建议找有经验的开发者定制。
问常见问题
做一个 TG 机器人要花钱吗?
Telegram Bot API 本身免费,费用主要是服务器和开发时间。
机器人能主动给用户发消息吗?
只能给已经和机器人对话过、且没有屏蔽它的用户发消息。