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 图片资源缓存开关
sharding_mode False 是否位分片模式
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...   #插件介绍
manage: false,                      #是否管理插件(对非管理隐藏)
matchers:                           #帮助图展示的指令卡片(可能需要自行配置)
- {pm_description: 禁用|取消...,     #介绍
    pm_manage: false,               #是否管理指令(对非管理隐藏)
    pm_name: pm-ban|unban,          #此帮助名
    pm_priority: 1,                 #优先级
    pm_sharding: true,              #不用管
    pm_show: true,                  #是否展示
    pm_usage: pm ban|unba...,       #触发命令
  }
-{....}
module_name: nonebot_plugin_pmhelp  #插件包名
name: PM帮助                         #插件名字
priority: 1                          #优先级
sharding: false                      #不用管
show: true                           #是否展示在帮助图中
usage: help                          #默认读取插件命令

🎨 插件开发

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

编写命令时实例
xxx = on_command(
    ....,
    state={
        "pm_name": #此帮助名,
        "pm_description": #介绍,
        "pm_usage": #触发命令,
        "pm_priority": #优先级,
        "pm_manage":#是否管理指令(对非管理隐藏),
    },
)

🎉 使用

指令表

指令 权限 需要@ 范围 说明
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.4.3.tar.gz (17.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for nonebot_plugin_pmhelp-1.4.3.tar.gz
Algorithm Hash digest
SHA256 d7e569338a4863283fa49ba5ae48ebbd7ce5ede6750efbf8cea54684249df432
MD5 871ceece2a990d93ce5195ac4f749c5a
BLAKE2b-256 ccf5348d74b95870ea631636769ff02af5f22383aa450a030c1b91aafbe49fb5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nonebot_plugin_pmhelp-1.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ccb036491cd9d331b4ad286ddef288d4ca81f9e6322344ddf78a578d97cffa1b
MD5 b79d726c8055f6ef176bab45cb77e174
BLAKE2b-256 9fd17e9de964a5955409cf998d2a7ed8087830522512a1d596e3789b9dc89820

See more details on using hashes here.

Supported by

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