Sign inSign up

sanling000/fulltclash

By sanling000

Updated about 3 years ago

telegram节点订阅测速机器人

Image
1

640

sanling000/fulltclash repository overview

FullTClash

基于clash 核心运作的、进行全量订阅测试的telegram机器人 项目github:https://github.com/AirportR/FullTclash

基本介绍

FullTclash bot 是承载其测试任务的Telegram 机器人(以下简称bot),目前支持以clash配置文件为载体的批量联通性测试,支持以下测试条目:

  • Netflix Youtube DisneyPlus Bilibili steam货币 OpenAI(ChatGPT) 落地ip风险(IP欺诈度) 维基百科

以及HTTP延迟测试和链路拓扑测试(节点出入口分析)。

使用文档

可以在 这里 找到FullTclash的使用文档。

如何开始

基础准备

要成功运行该项目代码,首先需要准备以下信息:

  • Telegram 的api_id 、api_hash 获取地址 不会请Google。(部分TG账号已被拉黑,无法正常使用)

  • @BotFather 那里创建一个机器人,获得该机器人的bot_token,应形如:

    bot_token = "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"

    这步不会请Google。

为bot进行相关配置

以下为启动bot的最低要求(如果您是新手,建议先以最低要求把bot跑起来,否则自己乱改配置容易出现不可预知的错误。)

安装
mkdir -p fulltclash
进入fulltclash目录新建一个名为config.yaml的文件
docker run -dit \
   -v "$(pwd)"/config.yaml:/app/resources/config.yaml \
   -v $PWD/logs:/app/logs \
   -v $PWD/results:/app/results \
   --name fulltclash \
   --restart always \
   sanling000/fulltclash

dev版

docker run -dit \
   -v "$(pwd)"/config.yaml:/app/resources/config.yaml \
   -v $PWD/logs:/app/logs \
   -v $PWD/results:/app/results \
   -v $PWD/bin:/app/bin \
   --name fulltclashdev \
   --restart always \
   sanling000/fulltclash:dev

ws后端amd

docker run -dit \
   -e vstartup=30000 \
   -e vcore=4 \
   -e vspeed=4 \
   -e token=fulltclash \
   -p 8765:8765 \
   --name fulltclashws \
   --restart always \
   sanling000/fulltclash:ws

ws后端arm

docker run -dit \
   -v $PWD/fulltclash:/app/resources/ \
   -e token=fulltclash \
   -p 8765:8765 \
   --name fulltclashws \
   --restart always \
   sanling000/fulltclash:ws

core 核心数,数量越多测试速度越快,但代价是内存会大量占用(每个核心大概10M),自己的机子多少内存自己平衡。默认值为4 startup 起始端口。表示从此端口开始往下数占用数量,比如核心数为4,就会占用[1124,1126,1128,1130]共4个端口,遇到端口占用时可配置此项。推荐10000以上作为初始端口 speed 测速线程 token Websocket通信Token,也叫做密码,防止不合法的请求 clash: branch: meta 让Bot识别你要使用的是meta内核而非原生Clash内核。

3、需要自行更换内核路径,否则不生效。 clash: path: "fulltclash-meta-xxxx" 4、更换内核的下载地址为(看清楚分支),也可以自己编译:获取地址

  • 管理员配置
 admin:
 - 12345678 # 改成自己的telegram uid
 - 8765431 # 这是第二行,表示第二个管理员,没有第二个管理员就把该行删除。
  • bot相关配置

    bot:
     api_id: 123456 #改成自己的api_id
     api_hash: 123456ABCDefg #改成自己的api_hash
     bot_token: 123456:ABCDefgh123455  # bot_token, 从 @BotFather 获取
     # 如果是在中国大陆地区使用,则程序需要代理才能连接上Telegram服务器。写入如下信息:
     proxy: 127.0.0.1:7890 #socks5 替换成自己的代理地址和端口
    
  • 代理配置(可选)

    如果是在中国大陆地区使用,可能部分订阅网址无法直接连接。可在config.yaml中写入如下信息:

    # 获取订阅时使用代理(可选)
    proxy: 127.0.0.1:7890 #http 替换成自己的代理地址和端口,注意,此配置与上面的独立分开。
    

最新config配置信息

配置文件内容如下,按照备注在编辑器中对应修改即可:

# 注意,yaml配置文件对缩进敏感,请不要强迫症删掉#号之间的空格。
admin:
- 12345678 #管理员,此处写你的账户id或用户名,必须配置该项,否则程序会自动退出
bot:
 api_id: 123456 # Telegram的api_id
 api_hash: ABCDEFG # Telegram的api_hash
 bot_token: 123456:ABCDEFG #bot的token
# ====================以上为必填项,否则无法启动成功========================
# proxy: host:端口:用户名:密码 #socks5代理,用户名和密码为可选配置,已和下面的proxy单独分离,请勿混用
# strictmode: false # 严格模式,代表测试的时侯,bot内联按钮只有发起测试的主人才能按,否则所有用户用户权限都可以按。默认false,目前未适配,敬请期待。
# scripttext: "⏳联通性测试进行中..."  # 解锁脚本测试进度条自定义文本
# analyzetext: "⏳节点测试拓扑进行中..."  # 拓扑测试进度条自定义文本
# speedtext: "⏳速度测试进行中..."  # 速度测试进度条自定义文本
# bar: "=" #进度条自定义文本
# bleft: "[" #左括号自定义文本
# bright: "]" #右括号自定义文本
# bspace: "  " #空格自定义文本,默认为2个
# command: ['mycommand1', 'mycommand2'] #自定义指令,用于适配权限回调。高级用法,不会无需配置。
#以下是fulltclash的buildtoken,可以用默认的,但是安全性得不到保障,具体原因详见文档
#buildtoken: c7004ded9db897e538405c67e50e0ef0c3dbad717e67a92d02f6ebcfd1022a5ad1d2c4419541f538ff623051759ec000d2f426e03f9709a6608570c5b9141a6b
#clash:
# path: './bin/fulltclash-linux-amd64' # 代理客户端的路径,默认为 ./bin/ 下。不会弄不要动这里,用默认的即可。本仓库默认仅提供win-amd64与linux-amd64两种(意味着如果为这两种架构,这里不用改。),其他架构需要自行编译。
# allow-caching: false  #是否缓存测试过程产生的订阅,若否,则测试完成后会自动删除测试订阅,以免造成空间浪费。(此配置暂不生效)
# core: 4 # 核心数,数量越多测试速度越快,但代价是内存会大量占用(每个核心大概10M),自己的机子多少内存自己平衡。默认值为1.
# auto-start: false # bot启动时顺带启动,若为false则需要在 bot上输入/clash start 手动启动,默认false
# startup: 1124 #起始端口。表示从此端口开始往下数占用数量,比如核心数为4,就会占用[1124,1126,1128,1130]共4个端口,遇到端口占用时可配置此项。推荐10000以上作为初始端口
#proxy: "host:端口" # http配置代理(非socks5),括号内可选用于下载获取订阅链接,订阅链接国内打不开可尝试开启(可选配置),本机提供的代理可以这样填: '127.0.0.1:7890'
#如果要http代理要验证,配置格式为: proxy: "用户名:密码@host:端口" 比如: user1:[email protected]:7890
#geoip-api: "ip-api.com" # GEOIP 测试api,取二级域名,目前支持 ip-api.com ip.sb ipleak.net ipdata.co ipapi.co 五种,其中 ipdata 需要配置下面的geoip-key
#geoip-key: xxxxxxx #ipdata 的 apikey,如果使用其他api则无需填写
#subconvertor: #订阅转换(此配置主要开发者已无心维护,能用但不稳定)
# enable: true #是否启用
# host: '127.0.0.1:25500' #域名或者ip加端口
# remoteconfig: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online.ini" #远程配置
#pingurl: http://www.gstatic.com/generate_204  #自定义延迟测试URL
#netflixurl: "https://www.netflix.com/title/80113701"  #自定义奈飞非自制剧检测网页,注意在更换此链接时请确保是非自制的链接。
#speedfile:  #自定义测速文件,可以添加多个诸如以下格式或者[https://1.com, https://2.com]
#- https://dl.google.com/dl/android/studio/install/3.4.1.0/android-studio-ide-183.5522156-windows.exe
#- https://dl.google.com/dl/android/studio/install/3.4.1.0/android-studio-ide-183.5522156-windows.exe
#speednodes: 300 # 测速节点数量限制,超过将不会进行测速
#speedthread: 4 #测速线程
#nospeed: true #禁用测速,开启后将无法测速。
#speed_end_colors_switch: false #速度测试渐变色模式,默认关闭
#end_colors_switch: false #联通性测试渐变色模式,默认关闭
#ipstack: true #开启ipv4,ipv6双栈检测。默认关闭(false),开启后可以检测节点是否支持ipv4和ipv6,代价是检测时间会延长。
#localip: false  #本地ip数据库(MaxMind格式) ,请将asn数据库与city数据库放入"/resources/databases"文件夹
#dasn: "GeoLite2-ASN.mmdb" #ASN数据库名称,用于获取AS编号
#dorg: "GeoLite2-ASN.mmdb" #org数据库mingc,用于获取组织名称
#dcity: "GeoLite2-City.mmdb" #city数据库名称,用于获取地区代码
#speedconfig: #测速相关配置
# interval: 10 #每个节点的测速时长
#entrance:  #入口显示配置
# switch: "ip" #设置为ip将显示入口ip段,设置为cluster将显示簇,默认设置为ip,PS:这里的簇为入口域名绑定的ip地址数量
#user: 12345678 #用户列表,/grant 命令授权的目标会保存在这。推荐使用bot进行授权,而非手动配置。(可选配置)
#emoji: #emoji可选配置
# enable: true #是否启用,默认启用。若否,则在输出图片时emoji将无法正常显示。关闭该项可解决部分图片生成失败的问题。(可选配置)
# emoji-source: 'TwemojiLocalSource' #emoji表情源。默认值为TwemojiLocalSource。分为web源与本地源。可配置的值参考 ./libs/emoji_custom/__all__ 里面的成员变量。目前本地源仅支持: TwemojiLocalSource
#font: './resources/苹方黑体-准-简.ttf' #自定义字体,这里填字体的路径
#slaveconfig:
#  default-slave: # 默认后端配置。
#    comment: "本地测试后端" # 默认测试后端的备注。
#    username: "local" # 默认测试后端的ID,此项请勿修改,会影响本地后端的运行。

Tag summary

Content type

Image

Digest

sha256:6fbff0f51

Size

341.2 MB

Last updated

about 3 years ago

docker pull sanling000/fulltclash