Skip to content

HibiKier/nonebot-plugin-zxpm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NoneBotPluginText

nonebot-plugin-zxpm

✨ 基于 NoneBot2 的一个 插件管理插件 ✨

python nonebot onebot license

📖 介绍

小真寻 的插件权限管理系统,提供了

  • 细致的插件开关
  • Ban 群组/用户(消息屏蔽)
  • 插件 Cd,Count,Block 限制(配置文件)
  • 群管监测(权限自动设置)
  • 用户权限设置(超级用户设置)
  • 一个简单的帮助查看

继承了真寻的优良传统,高贵的超级用户不受权限控制,除非插件额外限制

Note

小真寻也很可爱呀,也会很喜欢你!

💿 安装

pip install nonebot-plugin-zxpm
nb plugin install nonebot-plugin-zxpm

🎁 使用

Important

ZXPM 对插件进行了分类
NORMAL: 普通插件,没有特定标记的情况下都为这个类型
ADMIN: 群组管理员插件
SUPERUSER: 超级用户插件
SUPER_AND_ADMIN: 超级用户用于与管理员插件
DEPENDANT: 依赖插件,一般为没有主动触发命令的插件,受权限控制
HIDDEN: 隐藏插件,一般为没有主动触发命令的插件,不受权限控制,如消息统计
PARENT: 父插件,仅仅标记

ZXPM 权限管理严格
普通用户无法查看ADMINSUPERUSERSUPER_AND_ADMIN插件的帮助
权限管理员用户无法查看SUPERUSER插件的帮助

配置

配置 类型 默认值 说明
zxpm_data_path str data/zxpm 数据存储路径
zxpm_db_url str (zxpm_data_path)/db/zxpm.db 数据库地址 URL,默认为 sqlite,存储路径在zxpm_data_path
zxpm_notice_info_cd int 300 群/用户权限检测等各种检测提示信息 cd,为 0 时或永久 ban 时不提醒
zxpm_ban_reply str 才不会给你发消息. 用户被 ban 时回复消息,为空时不回复
zxpm_ban_level int 5 使用 ban 功能的对应权限
zxpm_switch_level int 1 使用开关功能的对应权限
zxpm_admin_default_auth int 5 群组管理员默认权限
zxpm_font str msyh.ttc 作图时字体

帮助

指令 格式 权限等级 参数 作用 示例
zxpm zxpm [名称] 0 -s 提供一个简单详情帮助图片 zxpm Ban: 查看 Ban 的用户帮助
zxpm Ban -s: 查看 Ban 的超级用户帮助
zxpm 40: 查看 id 为 40 的插件帮助(id 通过给 bot 发送插件列表获取)

Note

这里的指令只是写了个大概,功能开关指令比较复杂
建议对 bot 发送 zxpm ZXPM插件管理zxpm ZXPM插件管理 -s 来查看详细帮助
ZXPM 内部维护了一个插件数据库,收集所有含有PluginMetaData的插件
对于其他插件,同样也可以使用zxpm来获取帮助信息

权限设置

指令 格式 权限等级 参数 作用 示例
添加权限 添加权限 [level] [at] SUPERUSER 为用户提供插件管理等权限 添加权限 5 @user
删除权限 删除权限 [at] SUPERUSER 为用户提供插件管理等权限 删除权限 @user

Ban/unBan

群组管理员

指令 格式 权限等级 参数 作用 示例
ban ban [At 用户] ?[-t [时长(分钟)]] 5 -t -g 屏蔽用户或群组消息,权限等级低无法 Ban 等级高的用户 ban @用户: 永久 ban
ban @用户 -t 10: ban 十分钟
unban unban [At 用户] 5 接触蔽用户或群组消息 @user unban @用户: 放出来

超级用户

ban [At用户/用户Id] ?[-t [时长]]
unban --id [idx]  : 通过id来进行unban操作
ban列表: 获取所有Ban数据

群组ban列表: 获取群组Ban数据
用户ban列表: 获取用户Ban数据

ban列表 -u [用户Id]: 查找指定用户ban数据
ban列表 -g [群组Id]: 查找指定群组ban数据
示例:
    ban列表 -u 123456789    : 查找用户123456789的ban数据
    ban列表 -g 123456789    : 查找群组123456789的ban数据

私聊下:
    示例:
    ban 123456789          : 永久拉黑用户123456789
    ban 123456789 -t 100   : 拉黑用户123456789 100分钟

    ban -g 999999              : 拉黑群组为999999的群组
    ban -g 999999 -t 100       : 拉黑群组为999999的群组 100分钟

    unban 123456789     : 从小黑屋中拉出来
    unban -g 999999     : 将群组9999999从小黑屋中拉出来

插件控制

群组管理员

格式:
开启/关闭[功能名称]   : 开关功能
开启/关闭所有插件     : 开启/关闭当前群组所有插件状态
醒来                 : 结束休眠
休息吧               : 群组休眠, 不会再响应命令

示例:
开启签到              : 开启签到
关闭签到              : 关闭签到

超级用户

插件列表
开启/关闭[功能名称] ?[-t ["private", "p", "group", "g"](关闭类型)] ?[-g 群组Id]

开启/关闭插件df[功能名称]: 开启/关闭指定插件进群默认状态
    = 开启插件echo -df
    = 关闭插件echo -df
开启/关闭所有插件df: 开启/关闭所有插件进群默认状态
开启/关闭所有插件:
    私聊中: 开启/关闭所有插件全局状态
    群组中: 开启/关闭当前群组所有插件状态

私聊下:
    示例:
    开启签到                : 全局开启签到
    关闭签到                : 全局关闭签到
    关闭签到 -t p           : 全局私聊关闭签到
    关闭签到 -g 12345678    : 关闭群组12345678的签到功能(普通管理员无法开启)

可修改配置文件

(zxpm_data_path)/configs路径下有以 下 3 个配置文件,且文件中已提供参数解释
默认路径: data/zxpm/configs

  • plugin2block.yaml: 插件阻塞配置 例如:

    sign_in:
      status: true
      check_type: ALL
      watch_type: USER
      result: "你签那么快干什么啦"
    
  • plugin2cd.yaml: 插件 CD 配置 例如:

    sign_in:
      status: true
      check_type: ALL
      watch_type: USER
      result: 告辞
      cd: 12
    
  • plugin2count.yaml: 插件每日次数配置 例如:

      help:
      status: false
      watch_type: GROUP
      result: 再看就揍死你
      max_count: 2
    

❤ 感谢

  • 可爱的小真寻 Bot zhenxun_bot: 我谢我自己,桀桀桀

About

真寻的插件管理系统

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages