Skip to main content
改群名插件头图

🏷️ 改群名 · Group Rename

面向 PJSK、BanG Dream! 等使用五位房间号的固车、冲榜群的 NoneBot 插件

Python >= 3.10 NoneBot >= 2.4.4 OneBot V11 Version 0.1.4 MIT License

适用范围 · 主要功能 · 快速开始 · 指令与效果 · 配置

本项目参考了 luban652 的 AstrBot 群名前缀插件的功能需求

🎯 适用范围

适合 PJSK、BanG Dream! 等使用五位数字房间号的固车、冲榜群。 群管理员开启后,在群内发送房间号,Bot 会移除群名中的旧号码,并把新号码放在群名开头; 发送 清空 可移除号码。插件依据群消息中的数字工作,不区分具体游戏。

✨ 主要功能

功能 行为
车牌改名 群内发送独立的连续五位 ASCII 数字 0–9(车牌),将其放在群名开头
清空车牌 发送 清空,移除群名中的连续五位及以上数字
按群开关 默认关闭,由群管理员及以上在目标群内开启或关闭
混合消息 数字或“清空”可与 @、图片、回复同条发送;数字不能被非文本消息段隔开
防止覆盖 同一群的改名串行处理,并有默认 1 秒操作冷却;同群每个冷却周期最多提示一次

🚀 快速开始

环境要求:

  • Python >= 3.10
  • NoneBot >= 2.4.4
  • OneBot V11 适配器
  • Pydantic >= 1.10.0, < 3.0.0(兼容 v1、v2)
  • 机器人账号具备修改目标群名称的权限

将仓库放到 Bot 设备上,在该 Bot 的 Python 环境中运行:

pip install -e /path/to/nonebot-plugin-group-rename

上架 NoneBot 商店后,可在 Bot 项目中使用 NB-CLI 安装:

nb plugin install nonebot-plugin-group-rename

如果手动管理插件加载,请在 NoneBot 初始化后加载:

nonebot.load_plugin("nonebot_plugin_group_rename")

确认 Bot 已加载 OneBot V11 适配器,并在 COMMAND_START 中包含 /。随后由群管理员、群主或 SUPERUSER 在目标群发送 /group_rename on 或 /改群名 on。首次安装时所有群均关闭。


⌨️ 指令与效果

群开关

指令 权限 作用
/group_rename on 或 /改群名 on 群管理员、群主或 SUPERUSER 开启当前群
/group_rename off 或 /改群名 off 群管理员、群主或 SUPERUSER 关闭当前群
/group_rename status 或 /改群名 status 群管理员、群主或 SUPERUSER 查看当前群状态
12345 默认群成员;开启管理员限制后仅上述管理员 将 12345 设置为群名车牌
清空 默认群成员;开启管理员限制后仅上述管理员 从群名移除旧车牌

SUPERUSER 权限依据 NoneBot 的 SUPERUSERS 配置判定,支持纯 ID 和 onebot:ID 两种写法;群开关命令仍只在群内生效。

改名前后举例

原群名 群消息 修改后 原因
冲榜群 12345 12345 冲榜群 新增车牌
12345 冲榜群 67890 67890 冲榜群 替换旧车牌
1234567冲榜群 67890 67890 冲榜群 连续五位及以上数字整体移除
12345 冲榜群 清空 冲榜群 清除车牌
12345 67890 67890 原群名只剩车牌时仅替换
12345 清空 12345 清空会得到空群名,因此保留原名并提示先手动设置群名

发送 @某人 12345、[回复]12345 或 12345[图片] 仍可触发。12[图片]345、123456、文字 12345、全角等非 ASCII 数字和同一条消息里的两段非空文本不会触发。被 group_rename_ignore_patterns 忽略的数字也不会触发。旧群名中的全角等连续五位及以上数字仍会被清理。


⚙️ 配置

不填写参数即可使用默认值,群开关仍默认关闭。 可继续使用 nonebot-plugin-localstore 管理的 config.json,也可通过 NoneBot 标准配置入口提供同名参数。 只使用 JSON 时无需填写 .env。

配置优先级:NoneBot 显式配置 > JSON 配置文件 > 插件默认值。 参数在启动时读取,修改后需重启 Bot;JSON 格式错误、未知字段或非法参数会阻止插件加载,并记录具体错误。

参数 默认值 说明
group_rename_max_length 30 目标群名的最长字符数,最小为 5
group_rename_enable_notify true 冷却、读取或修改群名失败、仅剩车牌无法清空时发送提示
group_rename_admin_only false 开启后仅允许群管理员、群主或 SUPERUSER 通过车牌消息触发改名
group_rename_ignore_patterns [] 忽略的五位数字,使用 JSON 数组
group_rename_cooldown_seconds 1 每群改名尝试的冷却秒数
group_rename_priority 1 群开关命令与自动改名的响应优先级,非负整数;数值越小越先处理

例如,在 config.json 中只填写需要覆盖的参数:

{
  "group_rename_admin_only": true,
  "group_rename_ignore_patterns": ["12345", "99999"],
  "group_rename_priority": 1
}

例如 JSON 将冷却设为 10 秒,同时 NoneBot 显式配置设为 30 秒,最终使用 30 秒。 插件不主动阻断后续消息处理;若前面的其他插件阻断消息,本插件可能无法收到该消息,可按宿主需求调整优先级。

群开关状态另存在 nonebot-plugin-localstore 管理的数据目录下的 groups.json,不与参数配置混用;换设备时复制该状态文件,或在目标群重新执行 /group_rename on。

配置与数据路径遵守 localstore 的 localstore_plugin_config_dir、localstore_plugin_data_dir 插件专属目录设置。

如果启动时群开关文件无法读取,插件会关闭所有群并禁止修改开关,保留原文件;修复文件后重启 Bot 恢复使用。


📋 版本记录

0.1.4

  • 修复保存群开关时任务被取消,内存与文件状态不一致的问题。
  • 整理代码注释。

0.1.3

  • 使用 localstore 插件专属路径接口,遵守宿主为本插件指定的配置与数据目录。

0.1.2

  • 兼容 Pydantic v1、v2,并为两版环境增加 CI 测试。
  • 通过 NoneBot 标准配置入口合并参数,保留独立 JSON;宿主显式配置优先。
  • 群开关命令与自动改名支持配置响应优先级,默认处理顺序不变。

0.1.1

  • SUPERUSER 权限兼容纯 ID 和 onebot:ID,群开关和管理员模式使用同一套官方权限判定。
  • 新车牌仅接受五位 ASCII 数字;保留旧群名的数字清理规则。
  • 群开关文件读取失败时保留原文件并禁止写入,避免后续操作覆盖群记录。
  • 同群每个冷却周期最多提示一次,减少连续车牌消息产生的重复回复。
  • 测试使用无服务器驱动,增加 CI 与发布前测试门禁,构建依赖下限修正为 setuptools 77。

0.1.0

  • 支持 OneBot V11 群内发送连续五位数字更新群名,发送“清空”移除旧号码;@、图片和回复可与号码同条发送。
  • 群开关默认关闭,由群管理员及以上在目标群管理;开关状态单独保存。
  • 同群改名串行处理,默认冷却 1 秒;号码与原群名之间保留空格,清空后群名为空时保留原名。
  • 使用独立 JSON 文件配置插件参数。

本项目代码采用 MIT License。

Metadata

Release files for nonebot-plugin-group-rename 0.1.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nonebot-plugin-group-rename 0.1.4
File Size Uploaded Provenance Actions
nonebot_plugin_group_rename-0.1.4.tar.gz 24.0 kB Without provenance Details for nonebot_plugin_group_rename-0.1.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for nonebot-plugin-group-rename 0.1.4
File Interpreter ABI Platform Actions
nonebot_plugin_group_rename-0.1.4-py3-none-any.whl Python 3 none any Details for nonebot_plugin_group_rename-0.1.4-py3-none-any.whl

Total release size: 38.5 kB

Release files / nonebot_plugin_group_rename-0.1.4.tar.gz

Download URL nonebot_plugin_group_rename-0.1.4.tar.gz
Size 24.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a711cc6bd8d62407d7261a129d392df7ee47ee5ba8150e3a328a8c5f716a3acf
BLAKE2b-256 checksum
How to use checksums
1e7f75135b19daaed3813b5e66e1fafe66f005d938ad6156f43899f574a66e60
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / nonebot_plugin_group_rename-0.1.4-py3-none-any.whl

Download URL nonebot_plugin_group_rename-0.1.4-py3-none-any.whl
Size 14.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
36b2c35ea1b407759fed2db3140ae12ed9514541d66606b234e98c41c44ccd67
BLAKE2b-256 checksum
How to use checksums
ca7b103aa45242a8b7393e8cb16d4e19fdab92865b776fc2286b4047d8eddf63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Security for nonebot-plugin-group-rename 0.1.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page