777710c2ed
- 推送模板优化: - 优先使用账户名称而不是钱包地址 - 使用市场标题而不是16进制ID - 添加可点击的市场链接(支持 slug 和 conditionId) - 添加市场方向(outcome)显示 - 数量和价格从订单详情API获取实际值 - 失败通知只显示后端返回的msg,不显示完整堆栈 - 多语言支持: - 后端推送消息支持多语言(使用前端最后请求的语言) - 添加所有 ErrorCode 的多语言资源文件(中文简体、繁体、英文) - 通知消息文本全部使用多语言资源 - 功能改进: - 从订单详情获取实际的 side、price、size、outcome - 支持买入/卖出方向的多语言显示 - 错误信息优化,只显示后端返回的错误消息
3.1 KiB
3.1 KiB
Telegram 机器人申请和配置指南
1. 申请 Telegram 机器人
步骤 1: 创建机器人
- 打开 Telegram,搜索
@BotFather - 点击开始对话,发送
/newbot命令 - 按照提示设置机器人名称(例如:
Polymarket Bot) - 设置机器人用户名(必须以
bot结尾,例如:polymarket_notification_bot) - BotFather 会返回一个 Bot Token,格式类似:
123456789:ABCdefGHIjklMNOpqrsTUVwxyz
步骤 2: 获取 Chat ID
有两种方式获取 Chat ID:
方式 1: 通过 @userinfobot
- 在 Telegram 中搜索
@userinfobot - 点击开始对话,它会自动返回你的 Chat ID(例如:
123456789)
方式 2: 通过 API 获取
- 使用你的 Bot Token,访问以下 URL:
https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdates - 向你的机器人发送一条消息(例如:
/start) - 再次访问上面的 URL,在返回的 JSON 中找到
chat.id字段
步骤 3: 配置环境变量
将 Bot Token 和 Chat ID 配置到系统环境变量或配置文件中:
# Telegram Bot 配置
telegram.bot.token=YOUR_BOT_TOKEN
telegram.bot.chat-id=YOUR_CHAT_ID
2. 测试机器人
使用 curl 测试机器人是否正常工作:
curl -X POST "https://api.telegram.org/bot<YOUR_BOT_TOKEN>/sendMessage" \
-H "Content-Type: application/json" \
-d '{
"chat_id": "<YOUR_CHAT_ID>",
"text": "测试消息"
}'
如果返回 {"ok":true,"result":{...}},说明配置成功。
3. 分享机器人给其他用户
3.1 分享方式
机器人创建后是公开的,可以通过以下方式分享:
- 分享用户名:
@your_bot_name - 分享链接:
https://t.me/your_bot_name - 分享二维码:在 Telegram 中生成机器人二维码
3.2 用户添加步骤
其他用户需要:
- 点击分享的链接或搜索机器人用户名
- 点击"开始"按钮或发送
/start命令 - 向机器人发送任意消息(如:
hello) - 获取用户的 Chat ID(见下方说明)
3.3 获取其他用户的 Chat ID
方式 1: 通过 @userinfobot(推荐)
- 让用户搜索
@userinfobot并开始对话 - 机器人会自动返回用户的 Chat ID
方式 2: 通过你的机器人获取
- 用户向你的机器人发送消息后
- 访问:
https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdates - 在返回的 JSON 中找到
message.chat.id字段
方式 3: 在代码中实现获取(高级)
- 实现 Webhook 接收用户消息
- 从消息中提取
chat.id
3.4 多用户配置
支持多个用户接收通知,配置方式:
# 单个用户(旧方式,兼容)
telegram.bot.chat-id=123456789
# 多个用户(新方式,推荐)
telegram.bot.chat-ids=123456789,987654321,111222333
多个 Chat ID 用逗号分隔。
4. 安全建议
- 不要将 Bot Token 提交到 Git:使用环境变量或配置文件(不提交到版本控制)
- 限制机器人权限:只允许特定用户使用
- 定期更换 Token:如果 Token 泄露,可以通过 BotFather 重新生成
- 保护 Chat ID:Chat ID 是私密信息,不要公开分享