FullTClash开发文档
本文为FullTClash的开发者文档,基于3.5.1-dev (034837a)版本进行编写,与目前版本可能有出入
说明&免责声明
本文不是FullTClash的流媒体检测开发文档,而更倾向于FullTClash本体的开发,本文不会对函数、变量等做过多说明。
本文作者不持有FullTClash大部分源码版权,本文作者亦无对使用或阅读本文进行操作导致结果负责的义务,使用此文档为读者个人行为。作者对一切使用本文档导致的、阅读此文档导致的一切后果不承担任何责任,同时本文作者禁止一切对本文越权的行为,并不支持任何使用本文内容进行破坏的行为。如不同意,请勿继续阅读本文,使用或阅读本文即代表您同意以上内容。
变量
__version__:为FullTClash的版本号,在FullTclash\libs\export.py中,会影响/version命令。
custom_source:用于确定绘图的emoji样式,在FullTclash\libs\export.py中。
group:有0、1、2三个值,分别对应全部用户、User组以上用户、Admin组用户,可用于功能的权限设定。
admin = init_bot.admin:为管理员变量,赋值有多种形式(多处),默认已经赋值,建议不要修改,作为只读变量使用。
task_num:任务数,建议在执行任务时对其+1以防止任务冲突。
password:订阅密码。
latest_version_hash:远程哈希值。
USER_TARGET = config.getuser() :用户列表,已赋值,建议只读。
函数
logger.info():输出一般日志。
logger.warning():输出警告日志。
logger.error():输出警告日志。
@app.on_message():通常用作命令识别中,通常会导入filters.command()和group使用。
filters.command():可以为字典,确定命令为何时开始执行功能,用于功能函数中。
testurl(_, message: Message, **kwargs):从订阅链接测试流媒体解锁。
test(_, message: Message, **kwargs):从已有订阅测试流媒体解锁。
analyzeurl(_, message: Message, test_type="all", **kwargs):从订阅链接进行拓扑测试。
analyze(_, message: Message, test_type="all"):从已有订阅进行拓扑测试。
speedurl(_, message: Message, **kwargs):从订阅链接进行测速。
speed(_, message: Message):从已有订阅进行测速。
domain_to_ip(host: str):域名转IP。
batch_domain2ip(host: list):批量转换域名到IP。
geturl(string: str):获取订阅链接。
getSubInfo(_, message):获取订阅信息。
getsub_async(url: str, username: str, pwd: str, proxy=None):通过邮箱获取订阅,目前仅支持无邮箱验证的v2board。
get_airport_info(text: str = None):获取机场信息
get(self, key, _default=None):获取信息。
get_org(self):获取组织信息。
get_ip(self):获取IP信息。
get_country_code(self):获取国家代码。
get_city(self):获取城市。
get_asn(self):获取ASN信息。
class ExportResult:注意,这是类,放在此为了以下绘图内容的浏览方便,为实现通用的绘图。
class ExportTopo(ExportResult):注意,这是类,放在此为了以下绘图内容的浏览方便,为实现拓扑的绘图。
class ExportSpeed(ExportResult):注意,这是类,放在此为了以下绘图内容的浏览方便,为实现测速的绘图。
key_value(self):得到测试项大小
interval(self):去重排序。
colorvalue(self):绘图选色。
exportImage(self):输出绘图。
建议翻阅lib\export.py以更充分的了解绘图的开发
bot_task_queue(client: Client, message, task_type: str, qu: asyncio.Queue, **kwargs):任务队列函数。
dynamic_data_filter(data):过滤器函数。
my_filter(queue):废弃的函数,与过滤器可能有关。
init_button():按钮,可参阅流媒体脚本中的写法使用。
check_init():检测是否为第一次运行。
debug_interface(_, message):开发工具,被用在/map指令上。
reloadUser():重载User列表。
FullTClash开发文档