Code Monkey home page Code Monkey logo

alist-bot's Introduction

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 - 查看帮助

alist-bot's People

Contributors

bling0390 avatar seele0oo avatar z-mio avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

alist-bot's Issues

bug

Traceback (most recent call last):
File "/volume1/volume1/Alist-bot/bot.py", line 23, in
time.tzset()
^^^^^^^^^^
AttributeError: module 'time' has no attribute 'tzset'
之前的版本没有这个

请问开启直链的问题?

请问开启直链是网盘本来就有302功能才能开启直链的意思吗?
还是任何网盘都能开启直链的功能,如谷歌网盘也可以开启直链吗,谢谢

使用/s命令后台报错

你好,作者,我在使用过程中遇到如下问题,请问该如何解决? 😄
python版本:
image
报错界面:
image
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.