通过Telegram机器人管理ASF
个人比较喜欢 Node.js,最近用 Node.js 弄了个简单的 Telegram 机器人用于管理 ASF,即 ArchiSteamFarm。现在我把代码放 GitHub 上面,有需要的可以尝试一下。
准备信息
创建 Telegram 机器人
在 Telegram 里,搜索 @BotFather 机器人并启用。
发送以下命令:
- 创建机器人:
/newbot
- 设定 bot 名称:
ASF
(任取,可重复,这里只是个例子) - 设定 bot 用户名:
test_asf_bot
(任取,不可重复,这里只是个例子)
@BotFather
会发给你一串 token,形如 987654321:XXXXXX-XXXXXXXXXX
,注意保留。
查询 Chat ID
在 Telegram 里,搜索 @FalconGate_Bot
机器人并启用。
发送命令:/get_my_id
@FalconGate_Bot
会发给你一串数字,即是你的 Chat ID。
下载文件
项目地址: node-asf-bot
1 | git clone https://github.com/ZvonimirSun/node-asf-bot.git |
运行
直接运行
依赖
- Node.js
- ASF IPC
修改配置
配置环境变量。
1 | # The API token of your Telegram bot |
启动
1 | npm start |
Docker
依赖
- docker-ce
- docker-compose
- ASF IPC
修改配置
修改docker-compose.yml
文件配置环境变量。
1 | environment: |
将对应配置项替换。
启动
1 | docker-compose up -d |
Webhooks 方式运行(选)
在上面的环境变量或docker-compose.yml
中添加URL
配置项,即可转为 Webhooks 方式运行,比 polling 方式响应更及时。
注意,此种方式,必须拥有自己的域名,且必须采用 https,不支持SSL V2/V3
等过旧的协议,推荐采用TLS V1.2
。
配置应用
1 | export URL=https://asfbot.example.com |
或者
1 | environment: |
配置 Nginx
Nginx 反代 3000 端口,部分配置示例如下。
1 | location / { |