/nonebot_plugin_rename

通过定时任务更改bot所在群自己的群名片

Primary LanguagePythonMIT LicenseMIT

NoneBotPluginLogo

NoneBotPluginText

nonebot-plugin-rename

✨ 通过定时任务更改bot所在群自己的群名片,内置了几种常见的群名片并且初步支持了多bot,欢迎pr新的群名片! ✨

license pypi python

📖简介

通过定时任务更改bot(s)所在群自己的群名片

🔐许可

MIT

💿 安装方法

使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install nonebot-plugin-rename
pip
pip install nonebot-plugin-rename

打开 nonebot2 项目根目录下的 pyproject.toml 文件, 在 [tool.nonebot] 部分追加写入

plugins = ["nonebot_plugin_rename"]
[tool.nonebot]
plugins = []
plugin_dirs = ["src/plugins"]

🏷️插件命令

使用方法 命令概述
设置群名片 序号 设置群名片 序号(需空格,可带多个序号)
查看群名片列表 查看当前支持的所有群名片列表的图片
查看当前群名片 查看当前群名片的设置
立即更改群名片 序号 立即更改当前群组bot名片,后面仅可跟一个序号(bot无返回值)
删除群名片 删除当前群组群名片
设置所有群名片 为当前机器人所在所有群设置群名片,仅限超管私聊

⚙️插件配置项

配置项 描述 类型 默认值
set_group_card_hour 间隔时间(小时) int 0
set_group_card_minute 间隔时间(分钟) int 30
use_nickname_front 是否在群名片前加上bot名称 bool True
self_name 自定义前缀(需开启上一个配置) str None
is_one_bot_set_all_group_card 是否允许与单个bot会话可以设置所有bot所在的群名片 bool False
is_show_aps_info_log 是否显示定时任务的info级别日志 bool True
is_show_hot_search_from 热搜是否显示来源 bool False
zk_time_start 中考开始时间 str 06-12 09:00:00
zk_time_end 中考结束时间 str 06-14 11:00:00
hot_search_url 热搜获取API,1为作者提供,2为tenapi int 1
rename_mhy_versions 原神/星穹铁道特殊版本及其持续时间和版本列表, 配置方法见下文 dict 见代码

如果要使用中考剩余时间,由于每个地方中考时间并不统一,请务必填写zk_time系列配置项,否则获取的时间并不是你们当地的中考时间节点(开始和结束时间),参考配置如下

zk_time_start="06-12 09:00:00"
zk_time_end="06-14 11:00:00"

原神/星穹铁道的特殊版本及其持续时间版本列表配置方法示例,建议直接复制后修改,sr代表星穹铁道,gi代表原神,"16": 35代表1.6版本持续35天,以此类推 注意base_time需要和version_list的第一个版本开始时间(按照我给的格式写)保持一致,否则无法正确识别版本,且每个键都需要存在

rename_mhy_versions='
{
    "sr": {
        "version_list": [16, 20, 21, 22, 23, 24, 25, 26],
        "special_versions_dict": {
            "16": 35,
            "25": 25
        },
        "base_time": "2023-12-27 11:00:00",
        "name": "崩铁"
    },
    "gi": {
        "version_list": [43, 44, 45, 46, 47, 48, 50],
        "special_versions_dict": {},
        "base_time": "2024-1-31 11:00:00",
        "name": "原神"
    }
}
'

请注意不要将set_group_card_hourset_group_card_minute都设为0

由于qq群名片特殊性,间隔太短可能意义并不大反而容易导致风控,建议在30分钟以上

🎉目前已实现的群名片功能

一图流 help
时间
-- 高考时间
-- 中考时间
-- 原神版本剩余时间
-- 星铁版本剩余时间
-- 北京时间
-- 古代计时制时间
热搜
-- B站热搜
-- 微博热搜
-- 腾讯新闻热搜
-- 百度热搜
-- 知乎热搜
-- 今日头条热搜
一言
-- 每日(次)一言
系统状态
-- 系统内存和cpu信息
-- Bot收发消息汇总

🧐PR需知

PS:由于本人代码比较烂,很多方法实现都比较复杂,所以对pr不是很友好,如果有更好的方法欢迎pr并指正

群名片的生成代码在/card/文件夹内,每种群名片(或者每类)对应一个文件

当新增一个新的群名片样式时,需要在以下几个地方进行修改相应代码使得其生效

  • /card/__init__.py内导入你的包
  • /utils/card_name.py内的card_list按照格式新增你的文件名和对应的描述以及导包

🔥鸣谢

自动化插件的群名片修改js版

小派蒙的获取系统信息