Skip to main content

源于LittlePaimon的插件管理器插件,提供自动生成帮助图,并对群/私聊进行权限管理

Project description

NoneBotPluginLogo

nonebot-plugin-pmhelp

✨提取于LittlePaimon的插件管理器✨

Image Size Image Size

📖 介绍

提供帮助图自动生成和插件权限管理
功能:全自动生成帮助图和插件禁用,限流控制
虽然LittlePaimon基本处于半死亡状态了,但是 @CMHopeSunshine 的插件管理器真好用,所以把LittlePaimon帮助插件独立出来用于非原神bot的使用
因为直接照搬,有问题请pr

💿 安装

使用镜像站可能需要等待镜像站同步

使用 nb-cli 安装 在 nonebot2 项目的根目录下打开命令行, 输入以下指令即可安装
nb plugin install nonebot-plugin-pmhelp
使用包管理器安装 在 nonebot2 项目的插件目录下, 打开命令行, 根据你使用的包管理器, 输入相应的安装命令
pip
pip install nonebot-plugin-pmhelp
pdm
pdm add nonebot-plugin-pmhelp
poetry
poetry add nonebot-plugin-pmhelp
conda
conda install nonebot-plugin-pmhelp

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

plugins = ["nonebot_plugin_pmhelp"]

📋 效果

帮助图(举例)

橙色正常,灰色禁用,绿色使用后撤回,蓝色限流 _

webui(单独运行)

_
_

⚙️ 配置

在 nonebot2 项目的.env文件中添加下表中的必填配置

配置项 必填 默认值 说明
img_cache True 图片资源缓存开关
pm_name NoneBot帮助 帮助大标题
pm_version 11.45.14 帮助显示的版本号
pm_text 自定义文本 自定义文本
m_message True 被限流是否提醒
pm_plugin 1 管理插件文件的位置(1为统一目录,2为机器人目录,3为自定义目录)
pm_path pm_plugin为3时的目录(无需引号)
pm_enable_web True 后台管理开关
pm_username pmhelp 后台管理用户名
pm_password admin 后台管理密码
pm_secret_key ... 后台管理token密钥

nonebot2插件生成帮助图位于{帮助文件目录}/pm_config下
推荐使用webui进行修改
webui支持接入onebot_plugin_manageweb的webui
无onebot_plugin_manageweb时webui地址ip:端口/pmhelp/login

自定义修改

举例(xxx.yml):
description: 根据加载的nonebot2...   #插件介绍
matchers:                           #帮助图展示的指令卡片(可能需要自行配置)
- {pm_description: 禁用|取消...,     #介绍
    pm_name: pm-ban|unban,          #此帮助名
    pm_priority: 1,                 #优先级
    pm_show: true,                  #是否展示
    pm_usage: pm ban|unba...,       #触发命令
  }
-{....}
module_name: nonebot_plugin_pmhelp  #插件包名
name: PM帮助                         #插件名字
priority: 1                          #优先级
show: true                           #是否展示在帮助图中
usage: help                          #默认读取插件命令

🎨 插件开发

插件编写时:快捷生成卡片(无state时默认读取PluginMetadata生成)

编写命令时实例
xxx = on_command(
    ....,
    state={
        "pm_name": #此帮助名,
        "pm_description": #介绍,
        "pm_usage": #触发命令,
        "pm_priority": #优先级,
    },
)

🎉 使用

指令表

指令 权限 需要@ 范围 说明
help 所有 全部 打开所有帮助
pm ban/unban <插件名> 管理/群主/超级用户 全部 群/用户权限管理
命令pm ban|unban <插件名> -g <群号> -u <用户号> -x t|f <时间/次数> -w <时间>

权限群主和群管可以管理本群的用户超级用户可以管理所有用户并且超级用户不收本插件任何权限限制
参数
    ban|unban禁用/启用使用或者禁用/启用限流

    <插件名>可以是中/英文或者allall表示所有插件多个插件用空格分隔

    -g <群号>:不填时为命令当前群 可以是群号或者allall表示所有群多个群号用空格分隔
    
    -u <用户号>不填时或者填all则为本群所有用户all私聊使用为所有好友多个用户用空格分隔
        
    -x 限流:
        t:多少秒后可以再次使用
        f:一分钟使用次数
        <时间/次数>默认值10 /

    -w 延迟撤回
        <时间> 发送后多少s后撤回

额外说明
    ·如果要全局禁用/启用某一个用户需要超级用户私聊Bot来使用命令
    ·关闭的话也需要带数字方便匹
    ·全局禁用下单个群/好友的权限限制将失效

示例

- pm ban all 
群聊:禁用当前群所有插件
超级用户私聊:全局禁用所有插件
- pm ban all -g all 
禁用所有群的所有插件
- pm ban all -x t 10 
群聊:所有插件使用后10s才可以再次使用
超级用户私聊:全局所有插件使用后10s才可以再次使用
- pm unban all -x t 10 
群聊:解除当前群所有插件的限流
超级用户私聊:解除所有插件的限流
- pm ban all -w 10
当前群所有插件使用后10s后撤回

丨❤鸣谢

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_pmhelp-1.3.9.tar.gz (17.9 MB view details)

Uploaded Source

Built Distribution

nonebot_plugin_pmhelp-1.3.9-py3-none-any.whl (17.9 MB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_pmhelp-1.3.9.tar.gz.

File metadata

  • Download URL: nonebot_plugin_pmhelp-1.3.9.tar.gz
  • Upload date:
  • Size: 17.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for nonebot_plugin_pmhelp-1.3.9.tar.gz
Algorithm Hash digest
SHA256 9798cbba3630de2a73bfda0508aeade5117e341f6dfea49b51a33eafad4d4a9f
MD5 afb7112c7e8e0499285fd9271c429f88
BLAKE2b-256 91ba765157e6cb5a7e72e23ae2cb1e7e3e603c5f2db6e7b849ad384638dca45f

See more details on using hashes here.

File details

Details for the file nonebot_plugin_pmhelp-1.3.9-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_pmhelp-1.3.9-py3-none-any.whl
Algorithm Hash digest
SHA256 32bd9522f104f485ac5372002fe1e0a8d04a1f0e5785c1553b7770f781b78942
MD5 2fc6e80d0a92955b41b1d383c90d592d
BLAKE2b-256 183edd9efb7e413a17557c673cfe30869e27c6a74a7961a1328fa1ec32818669

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page