🔌
Day 3
7 天入门教程
接入渠道:Telegram / Discord
🤖 Day 3
连接消息平台机器人
🎯
今日目标: 在 Telegram / Discord / Slack 中 @机器人,它能回复你
📑
本节内容
1
理解 Gateway 架构
2
配置 Telegram 机器人
3
启动 Gateway
4
测试机器人
5
查看 Gateway 状态
1
理解 Gateway 架构
Hermes 的消息网关(gateway)是一个独立进程,负责连接 Telegram、Discord、Slack、WhatsApp、Signal 等平台。启动 gateway 后,你可以在任何已配置的平台上与 Hermes 对话,且会话状态跨平台同步。
CLI 和 messaging 是两条独立入口:hermes 启动终端 UI,hermes gateway 启动消息服务。
2
配置 Telegram 机器人
推荐先接入 Telegram(配置最简单):
- 在 Telegram 中找 @BotFather,发送 /newbot 创建机器人,获取 token
- 运行交互式配置向导:
terminal
$ hermes gateway setup
? Select platform: telegram
? Enter Telegram Bot Token: 7123456789:AAH...
✓ Telegram gateway configured
3
启动 Gateway
前台运行(推荐 WSL、Docker、Termux):
terminal
$ hermes gateway
Gateway started
✓ Telegram bot is online
Linux/macOS 可安装为后台服务:
terminal
$ hermes gateway install # 安装 systemd/launchd 服务
$ hermes gateway start # 启动服务
$ hermes gateway status # 查看状态
4
测试机器人
在 Telegram 中找到你的机器人,发送一条消息:
terminal
[Telegram]
You: 你好
Bot: 你好!我是 Hermes,你的 AI 助手。
如果无回复,检查 gateway 日志:journalctl --user -u hermes-gateway -f(Linux)或 tail -f ~/.hermes/logs/gateway.log(macOS)
5
查看 Gateway 状态
terminal
$ hermes gateway status
Gateway: running
Platforms: telegram ✓, discord ✗, slack ✗
✅ 你将看到
$ hermes gateway
Gateway started
✓ Telegram bot is online
[在 Telegram 中]
You: 你好
Bot: 你好!我是 Hermes,有什么可以帮你的?
⚠️ Telegram bot 不回复
检查 token 是否正确;运行 journalctl --user -u hermes-gateway -f 查看推送日志;确认没有 webhook 冲突。
⚠️ Discord bot 显示离线
在 Discord Developer Portal 开启 MESSAGE CONTENT INTENT;确认 token 和 gateway 配置正确。
⚠️ hermes gateway setup 没有想要的平台
升级 Hermes:pip install --upgrade hermes-agent
⚠️ WSL 中 gateway start 失败
WSL 的 systemd 支持不可靠。使用 hermes gateway 前台运行,或用 tmux 保持:tmux new -s hermes 'hermes gateway'