通过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 / { |