Skip to content

z-mio/Alist-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram-AList bot

Readme Card

主要功能:

  • 搜索
    • 文件基本信息
    • 自定义结果数量
    • 文件直链
  • 存储
    • 开关存储
    • 删除存储
    • 复制存储
    • 新建存储
    • 自动排序
    • 批量新建存储
  • Cloudflare节点管理
    • 节点监控
    • 通知
      • 节点状态
      • 每日流量统计
    • 自动管理存储
    • 自动切换节点
    • cf账号管理
    • 代理负载均衡
    • 存储随机节点
    • 存储统一节点
  • Alist配置备份&定时备份
  • Alist图床
  • 随机推荐
  • 离线下载

功能预览&说明:

点击展开
搜索

搜索预览图

配置备份

可以回复消息来添加备注,可以重复修改

配置备份

存储管理菜单

管理存储

开关存储

管理存储

复制存储

自动复制存储为负载均衡,存储排序会自动加1
复制存储

删除存储

复制存储

新建&批量新建&默认配置
- 新建&批量新建

支持添加所有 AList 支持的存储

新建&批量新建

新建&批量新建

添加单个

新建&批量新建

批量添加

新建&批量新建

新建&批量新建

新建&批量新建

- 默认配置

可以设置默认配置,新建存储会优先使用默认配置。所有参数都可以设置默认值

比如设置了PikPak的用户名密码,新建的时候就不需要输入了,只需要输入挂载路径分享ID

默认配置

图床

i5mjHX.gif i5mjHX.gif

Cloudflare节点管理

节点状态监控:每 60 秒检测一次节点状态,如果节点掉线故障会发送通知
每日流量统计:每天定时发送当天使用的流量
自动管理存储:检测到节点掉线,会自动关闭存储,节点恢复后自动开启存储
自动切换节点:检测到节点掉线,会自动切换其他未使用的可用节点,每天早上8点自动恢复原来的节点
节点负载均衡(推荐):用户下载时会自动重定向到可用下载节点

如果自动管理存储自动切换节点同时启用,那么当节点失效时会优先切换节点,如果节点全部不可用,才会关闭存储

注:添加cf账号默认使用第一个域名的第一个Workers路由
如果你cf账号里面有多个域名,域名下面有多个Workers路由,建议手动添加账号

手动添加账号

打开cloudflare_cfg.yaml配置文件,将账号添加到node列表,格式如下:

node:
- account_id: 
  email: 
  global_api_key: 
  url: 
  zone_id: 
- account_id: 
  email: 
  global_api_key: 
  url: 
  zone_id: 

account_id:cf主页 --> 域名 --> 右下角 --> 帐户 ID
zone_id: cf主页 --> 域名 --> 右下角 --> 区域 ID

email:cf账号的邮箱
global_api_key:cf主页 --> 右上角头像 --> 我的个人资料 --> API 令牌 --> Global API Key
url:填workers路由里面添加的,用来做代理的域名就行,只填域名,不要加https和后面的/*,例:a.ziling.cf

enter description here

enter description here

随机推荐

该功能会随机发送一个资源,并支持自定义路径和关键词。

支持的命令
/sr
随机推荐设置菜单
/roll
使用/roll命令,系统将从所有路径中随机选择一个资源并发送。
/roll 关键词
使用/roll命令后加上一个关键词,系统将从对应的路径中随机选择一个资源并发送。

您可以自定义路径和关键词,以便根据需求发送不同的资源。每个关键词可以对应多个路径,如下:

path:
  关键词: 路径 # 路径前面需要加上斜杠
  act: /,【ACT-动作游戏】
  adv: /,【ADV-冒险游戏】
  rpg: /,【RPG-角色扮演游戏】
  slg: /,【SLG-策略游戏】
  gd:
    - /%60【归%20档】/【KRKR合集】/1
    - /%60【归%20档】/【KRKR合集】/2
    - /%60【归%20档】/【ONS合集】

Vt1xn3.png


安装

一、Docker 安装

1.新建 bot 配置文件目录

mkdir -p /root/alist-bot

2.编写 config.yaml 放至你创建的路径下 /root/alist-bot

alist:
  alist_host: http://127.0.0.1:5244 # alist ip:port或alist域名,一般填域名即可
  alist_web: http://127.0.0.1:5244 # 你的alist域名
  alist_token: "" # alist token
user:
  admin:  # 管理员用户id,可通过 https://t.me/getletbot 获取id
  member: [ ]  # 允许使用bot的 用户、群组、频道(群组和频道id需要加上-100)可通过 https://t.me/getletbot 获取id。 留空为所有人可用
  bot_token:  # bot的api token,从 @BotFather 获取
  api_id:  # api_id、api_hash在 https://my.telegram.org/apps 获取
  api_hash:
proxy:
  scheme: http
  hostname: 127.0.0.1
  port: 7890
backup_time: '0'

3.拉取镜像运行即可

docker run -d \
  --name alist-bot \
  --restart=always \
  -v /root/alist-bot/config.yaml:/usr/src/app/config.yaml \
  -p 3214:3214 \
  ghcr.io/z-mio/alist-bot:latest

二、正常安装

1.安装 python3-pip

apt install python3-pip

2.将项目克隆到本地

git clone https://github.com/z-mio/Alist-bot.git && cd Alist-bot && pip3 install -r requirements.txt

3.修改 config.yaml 里的配置信息

alist:
  alist_host: http://127.0.0.1:5244 # alist ip:port或alist域名,一般填域名即可
  alist_web: http://127.0.0.1:5244 # 你的alist域名
  alist_token: "" # alist token
user:
  admin:  # 管理员用户id,可通过 https://t.me/getletbot 获取id
  member: [ ]  # 允许使用bot的 用户、群组、频道(群组和频道id需要加上-100)可通过 https://t.me/getletbot 获取id。 留空为所有人可用
  bot_token:  # bot的api token,从 @BotFather 获取
  api_id:  # api_id、api_hash在 https://my.telegram.org/apps 获取
  api_hash:
proxy:
  scheme: http
  hostname: 127.0.0.1
  port: 7890
backup_time: '0'

4.启动bot

前台启动bot

python3 bot.py

设置开机自启

以下是一整条命令,一起复制到SSH客户端运行

cat > /etc/systemd/system/alist-bot.service <<EOF
[Unit]
Description=Alist-bot Service
After=network.target

[Service]
User=root
WorkingDirectory=/root/Alist-bot
ExecStart=/usr/bin/python3 bot.py > /dev/null 2>&1 &
Restart=always

[Install]
WantedBy=multi-user.target

EOF

然后,执行 systemctl daemon-reload 重载配置,现在你可以使用这些命令来管理程序:

启动:systemctl start alist-bot
停止:systemctl stop alist-bot
开启开机自启:systemctl enable alist-bot
关闭开机自启:systemctl disable alist-bot
重启:systemctl restart alist-bot
状态:systemctl status alist-bot

开始使用

私聊或群组里发送指令
第一次使用可以发送/menu自动设置Bot菜单

指令列表:

/start 开始
/s + 文件名 进行搜索
/roll 随机推荐
/vb 查看下载节点信息

管理员命令:
/sl - 设置搜索结果数量
/zl - 开启/关闭直链
/st - 存储管理 
/sf - Cloudflare节点管理
/cf - 查看当前配置
/bc - 备份Alist配置
/sbt - 设置定时备份
/sr - 随机推荐设置
/od - 离线下载
/dt - 设置搜索结果定时删除
/help - 查看帮助