相关链接
使用步骤
1. 与 BotFather 对话
与 BotFather 对话并根据指引创建机器人,可以得到机器人的 Token
2. 将机器人加入群聊并获取 chat_id
- 进入机器人信息页,点击 … -> Create Group -> Next 即可创建与机器人的聊天框
- 发送一条任意内容的消息
- 访问 https://api.telegram.org/bot/getUpdates 可以找到群聊 chat_id
3. 发送消息
Telegram 的参数传递较为自由,于是考虑使用 POST 方法,将常量放入 query string 中,body 仅传递需要推送的消息
1 2 3 4 5 6 7
| token="<token>" chat_id="<chat_id>" message="Hello World."
curl -X POST "https://api.telegram.org/bot$token/sendMessage?chat_id=$chat_id" \ -H "Content-Type: application/json" \ -d "{\"text\":\"$message\"}"
|
用于 GitHub Actions 中消息通知
- 新建 Name 为
TG_BOT_URL
,Value 为 https://api.telegram.org/bot<token>/sendMessage?chat_id=<chat_id>
的 Secret
- 相关 Workflow 示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| name: master bot
on: push: branches: - master
jobs: build: name: Build on node ${{ matrix.node_version }} and ${{ matrix.os }} runs-on: ubuntu-latest strategy: matrix: os: [ubuntu-latest] node_version: [20.x]
steps: - name: Checkout uses: actions/checkout@v3
- name: Bot run: | message=$(git log -1) curl -X POST "${{secrets.TG_BOT_URL}}" -H 'Content-Type: application/json' -d "{\"text\":\"$message\"}"
|