zhenxun_bot/docs/development_doc/plugins.html

306 lines
62 KiB
HTML
Raw Normal View History

2021-10-23 19:30:03 +08:00
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>绪山真寻Bot</title>
<meta name="generator" content="VuePress 1.8.2">
2021-10-23 19:41:46 +08:00
<link rel="icon" href="/zhenxun_bot/favicon.ico">
2021-10-23 19:30:03 +08:00
<meta name="description" content="这是个绪山真寻Bot的部署教程">
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">
2022-01-16 15:27:54 +08:00
<link rel="preload" href="/zhenxun_bot/assets/css/0.styles.74a71e6e.css" as="style"><link rel="preload" href="/zhenxun_bot/assets/js/app.91f0cec4.js" as="script"><link rel="preload" href="/zhenxun_bot/assets/js/3.5a2c9393.js" as="script"><link rel="preload" href="/zhenxun_bot/assets/js/1.c6360fc1.js" as="script"><link rel="preload" href="/zhenxun_bot/assets/js/14.afd88693.js" as="script"><link rel="preload" href="/zhenxun_bot/assets/js/8.e618920f.js" as="script"><link rel="prefetch" href="/zhenxun_bot/assets/js/10.43e159f5.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/11.6a5a592d.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/12.1d4f5a30.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/13.b8e9da34.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/15.518665a7.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/16.5f26778c.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/17.149ba7d3.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/18.af8c2d15.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/19.9d667d37.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/20.e0633367.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/21.f3a77a1e.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/22.b4282467.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/23.8f221f5b.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/24.fe872c8f.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/25.d42a4089.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/26.04516f6d.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/27.4a5b11d2.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/28.63e28313.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/29.5e7fdca9.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/30.2f3e8305.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/31.09b09c75.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/32.d8a9b8f2.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/33.f820c9b2.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/34.3aafaab7.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/35.2ce73343.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/36.d49e2170.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/37.6c8cff6d.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/38.dc15688b.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/39.4e74e9cc.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/4.7b2626bb.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/40.1a0e089c.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/5.67f09f30.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/6.09121cba.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/7.e663b9e0.js"><link rel="prefetch" href="/zhenxun_bot/assets/js/9.1a1a5b76.js">
2021-12-16 12:22:53 +08:00
<link rel="stylesheet" href="/zhenxun_bot/assets/css/0.styles.74a71e6e.css">
2021-10-23 19:30:03 +08:00
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container" data-v-1156296a><div data-v-1156296a><div id="loader-wrapper" class="loading-wrapper" data-v-d48f4d20 data-v-1156296a data-v-1156296a><div class="loader-main" data-v-d48f4d20><div data-v-d48f4d20></div><div data-v-d48f4d20></div><div data-v-d48f4d20></div><div data-v-d48f4d20></div></div> <!----> <!----></div> <div class="password-shadow password-wrapper-out" style="display:none;" data-v-4e82dffc data-v-1156296a data-v-1156296a><h3 class="title" data-v-4e82dffc data-v-4e82dffc>绪山真寻Bot</h3> <p class="description" data-v-4e82dffc data-v-4e82dffc>这是个绪山真寻Bot的部署教程</p> <label id="box" class="inputBox" data-v-4e82dffc data-v-4e82dffc><input type="password" value="" data-v-4e82dffc> <span data-v-4e82dffc>Konck! Knock!</span> <button data-v-4e82dffc>OK</button></label> <div class="footer" data-v-4e82dffc data-v-4e82dffc><span data-v-4e82dffc><i class="iconfont reco-theme" data-v-4e82dffc></i> <a target="blank" href="https://vuepress-theme-reco.recoluan.com" data-v-4e82dffc>vuePress-theme-reco</a></span> <span data-v-4e82dffc><i class="iconfont reco-copyright" data-v-4e82dffc></i> <a data-v-4e82dffc><span data-v-4e82dffc>hibikier</span>
  
2022-01-01 14:55:51 +08:00
<span data-v-4e82dffc>2021 - </span>
2022
2021-10-24 18:06:33 +08:00
</a></span></div></div> <div class="hide" data-v-1156296a><header class="navbar" data-v-1156296a><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/zhenxun_bot/" class="home-link router-link-active"><img src="/zhenxun_bot/logo.png" alt="绪山真寻Bot" class="logo"> <span class="site-name">绪山真寻Bot</span></a> <div class="links"><div class="color-picker"><a class="color-button"><i class="iconfont reco-color"></i></a> <div class="color-picker-menu" style="display:none;"><div class="mode-options"><h4 class="title">Choose mode</h4> <ul class="color-mode-options"><li class="dark">dark</li><li class="auto active">auto</li><li class="light">light</li></ul></div></div></div> <div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/zhenxun_bot/" class="nav-link"><i class="iconfont reco-home"></i>
2021-10-23 19:30:03 +08:00
首页
2021-10-24 18:06:33 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/installation_doc/" class="nav-link"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
安装文档
2021-10-25 11:16:00 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/help_doc/" class="nav-link"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
使用文档
2021-10-24 18:06:33 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/development_doc/plugins.html" aria-current="page" class="nav-link router-link-exact-active router-link-active"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
开发文档
2022-01-05 22:37:19 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/update_log/" class="nav-link"><i class="iconfont reco-suggestion"></i>
更新日志
2021-10-23 19:41:46 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/faq/" class="nav-link"><i class="iconfont reco-faq"></i>
2021-10-23 19:30:03 +08:00
FAQ
2021-10-25 11:16:00 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/blogs/about.html" class="nav-link"><i class="iconfont reco-faq"></i>
2021-10-23 19:30:03 +08:00
关于
</a></div><div class="nav-item"><a href="https://github.com/HibiKier/zhenxun_bot" target="_blank" rel="noopener noreferrer" class="nav-link external"><i class="iconfont reco-github"></i>
GitHub
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <!----></nav></div></header> <div class="sidebar-mask" data-v-1156296a></div> <aside class="sidebar" data-v-1156296a><div class="personal-info-wrapper" data-v-828910c6 data-v-1156296a><img src="https://s.gravatar.com/avatar/27d0f38d5b14cf1ae60da1522a9a246e?s=80" alt="author-avatar" class="personal-img" data-v-828910c6> <h3 class="name" data-v-828910c6>
hibikier
2022-01-05 22:37:19 +08:00
</h3> <div class="num" data-v-828910c6><div data-v-828910c6><h3 data-v-828910c6>25</h3> <h6 data-v-828910c6>Articles</h6></div> <div data-v-828910c6><h3 data-v-828910c6>0</h3> <h6 data-v-828910c6>Tags</h6></div></div> <ul class="social-links" data-v-828910c6></ul> <hr data-v-828910c6></div> <nav class="nav-links"><div class="nav-item"><a href="/zhenxun_bot/" class="nav-link"><i class="iconfont reco-home"></i>
2021-10-23 19:30:03 +08:00
首页
2021-10-24 18:06:33 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/installation_doc/" class="nav-link"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
安装文档
2021-10-25 11:16:00 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/help_doc/" class="nav-link"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
使用文档
2021-10-24 18:06:33 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/development_doc/plugins.html" aria-current="page" class="nav-link router-link-exact-active router-link-active"><i class="iconfont reco-document"></i>
2021-10-23 19:30:03 +08:00
开发文档
2022-01-05 22:37:19 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/update_log/" class="nav-link"><i class="iconfont reco-suggestion"></i>
更新日志
2021-10-23 19:41:46 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/docs/faq/" class="nav-link"><i class="iconfont reco-faq"></i>
2021-10-23 19:30:03 +08:00
FAQ
2021-10-25 11:16:00 +08:00
</a></div><div class="nav-item"><a href="/zhenxun_bot/blogs/about.html" class="nav-link"><i class="iconfont reco-faq"></i>
2021-10-23 19:30:03 +08:00
关于
</a></div><div class="nav-item"><a href="https://github.com/HibiKier/zhenxun_bot" target="_blank" rel="noopener noreferrer" class="nav-link external"><i class="iconfont reco-github"></i>
GitHub
2022-01-05 22:37:19 +08:00
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <!----></nav> <ul class="sidebar-links"><li><a href="/zhenxun_bot/docs/development_doc/plugins.html" aria-current="page" class="active sidebar-link">插件标准</a></li><li><a href="/zhenxun_bot/docs/development_doc/shop_handle.html" class="sidebar-link">商店操作</a></li></ul> </aside> <div class="password-shadow password-wrapper-in" style="display:none;" data-v-4e82dffc data-v-1156296a><h3 class="title" data-v-4e82dffc data-v-4e82dffc></h3> <!----> <label id="box" class="inputBox" data-v-4e82dffc data-v-4e82dffc><input type="password" value="" data-v-4e82dffc> <span data-v-4e82dffc>Konck! Knock!</span> <button data-v-4e82dffc>OK</button></label> <div class="footer" data-v-4e82dffc data-v-4e82dffc><span data-v-4e82dffc><i class="iconfont reco-theme" data-v-4e82dffc></i> <a target="blank" href="https://vuepress-theme-reco.recoluan.com" data-v-4e82dffc>vuePress-theme-reco</a></span> <span data-v-4e82dffc><i class="iconfont reco-copyright" data-v-4e82dffc></i> <a data-v-4e82dffc><span data-v-4e82dffc>hibikier</span>
2021-10-23 19:30:03 +08:00
  
2022-01-01 14:55:51 +08:00
<span data-v-4e82dffc>2021 - </span>
2022
2022-01-05 22:37:19 +08:00
</a></span></div></div> <div data-v-1156296a><main class="page"><section><div class="page-title"><h1 class="title"></h1> <div data-v-1ff7123e><i class="iconfont reco-account" data-v-1ff7123e><span data-v-1ff7123e>hibikier</span></i> <!----> <!----> <!----></div></div> <div class="theme-reco-content content__default"><h1 id="真寻bot插件基本标准"><a href="#真寻bot插件基本标准" class="header-anchor">#</a> 真寻Bot插件基本标准</h1> <h2 id="简介"><a href="#简介" class="header-anchor">#</a> 简介</h2> <ul><li><p>统一插件标准的好处:</p> <ul><li>自动生成帮助</li> <li>自动生成配置项</li> <li>自动生成插件开关</li> <li>避免了修改插件单独配置文件的麻烦</li> <li>没有重写matcher利于增删额外插件</li></ul></li> <li><p>普通插件 应该包含:</p> <ul><li><code>__zx_plugin_name__</code>:插件名</li> <li><code>__plugin_usage</code>:用法</li> <li><code>__plugin_des__</code>:简介</li> <li><code>__plugin_cmd__</code>:命令</li> <li><code>__plugin_settings__</code> :插件通用设置</li></ul></li> <li><p>有主动发送消息的被动插件不需要命令调用的插件如定时任务hook等 应该包含:</p> <ul><li><code>__plugin_task__</code>:为你提供一个或多个开关</li></ul></li> <li><p>以下作为额外添加选项:</p> <ul><li><code>__plugin_type__</code>:插件帮助分类(被动类插件不需要)</li> <li><code>__plugin_version__</code>:插件版本</li> <li><code>__plugin_author__</code>:插件作者</li> <li><code>__plugin_cd_limit__</code>插件cd限制</li> <li><code>__plugin_block_limit__</code>:插件阻塞限制</li> <li><code>__plugin_count_limit__</code>: 插件每日调用次数限制</li> <li><code>__plugin_resources__</code>: 资源管理</li> <li><code>__plugin_configs__</code>: 插件配置</li></ul></li></ul> <h2 id="zx-plugin-name"><a href="#zx-plugin-name" class="header-anchor">#</a> __zx_plugin_name__</h2> <ul><li><strong>类型</strong><code>str</code></li> <li><strong>说明</strong><br>
2021-10-23 19:30:03 +08:00
插件名称,为插件普通帮助的展示内容,基本所有模块都必须有 <code>__zx_plugin_name__</code><br>
通过在__zx_plugin_name__中添加 [Admin] [Superuser] [Hidden] 控制初始化帮助时插件的分类<br>
基本为以下四类:
2021-12-08 10:10:40 +08:00
<ul><li>``:默认,即没有以下三种分类,作为普通插件</li> <li><code>[Admin]</code> 纯管理员插件</li> <li><code>[Superuser]</code> 纯超级用户插件</li> <li><code>[Hidden]</code> 隐藏的插件,一般是不需要命令调用的插件</li></ul></li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code>__zx_plugin_name__ <span class="token operator">=</span> <span class="token string">&quot;色图&quot;</span>
2021-10-23 19:30:03 +08:00
__zx_plugin_name__ <span class="token operator">=</span> <span class="token string">&quot;管理员操作 [Admin]&quot;</span>
__zx_plugin_name__ <span class="token operator">=</span> <span class="token string">&quot;超级用户操作 [Superuser]&quot;</span>
__zx_plugin_name__ <span class="token operator">=</span> <span class="token string">&quot;自动检测群员数量 [Hidden]&quot;</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br></div></div><h2 id="plugin-usage"><a href="#plugin-usage" class="header-anchor">#</a> __plugin_usage__</h2> <ul><li><strong>类型</strong><code>str</code></li> <li><strong>说明</strong><br>
插件帮助说明
示例:</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token triple-quoted-string string">&quot;&quot;&quot;
usage:
有什么用处?
指令:
...
示例:...
&quot;&quot;&quot;</span><span class="token punctuation">.</span>strip<span class="token punctuation">(</span><span class="token punctuation">)</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br></div></div><h2 id="plugin-super-usage"><a href="#plugin-super-usage" class="header-anchor">#</a> __plugin_super_usage__</h2> <ul><li><strong>类型</strong><code>str</code></li> <li><strong>说明</strong><br>
当非 <code>[Superuser]</code> 插件含有超级用户的功能时,在该属性中编写超级用户的额外帮助<br>
帮助写法与 <code>__plugin_usage__</code> 一致</li></ul> <h2 id="plugin-des"><a href="#plugin-des" class="header-anchor">#</a> __plugin_des__</h2> <ul><li><strong>类型</strong><code>str</code></li> <li><strong>说明</strong><br>
插件简介不建议太长详细介绍可以写在usage中主要在<code>详细帮助</code>中显示</li></ul> <h2 id="plugin-cmd"><a href="#plugin-cmd" class="header-anchor">#</a> __plugin_cmd__</h2> <ul><li><strong>类型</strong><code>List[str]</code></li> <li><strong>说明</strong><br>
插件指令,相同功能的插件指令请使用<code>/</code>分离,如果是超级用户的功能,请在命令后添加<code>[_superuser]</code><br>
示例:</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 发送 ‘我的签到’ 和 ‘好感度’ 效果相同</span>
__plugin_cmd__ <span class="token operator">=</span> <span class="token punctuation">[</span><span class="token string">&quot;我的签到/好感度&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;好感度排行&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;清空好感度 [_superuser]&quot;</span><span class="token punctuation">]</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br></div></div><h2 id="plugin-settings"><a href="#plugin-settings" class="header-anchor">#</a> __plugin_settings__</h2> <ul><li><strong>类型</strong><code>Dict[str, Union[str, int]]</code></li> <li><strong>说明</strong><br>
插件的通用设置,普通插件与纯管理员插件会有所不同<br>
2021-11-10 15:15:53 +08:00
示例:</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 普通插件以下除cmd外为默认值</span>
2021-10-23 19:30:03 +08:00
__plugin_settings__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;level&quot;</span><span class="token punctuation">:</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token comment"># 群权限等级请不要设置为1或9若无特殊情况请设置为5</span>
<span class="token string">&quot;default_status&quot;</span><span class="token punctuation">:</span> <span class="token boolean">True</span><span class="token punctuation">,</span> <span class="token comment"># 进群时的默认开关状态</span>
<span class="token string">&quot;limit_superuser&quot;</span><span class="token punctuation">:</span> <span class="token boolean">False</span><span class="token punctuation">,</span> <span class="token comment"># 开关插件的限制是否限制超级用户</span>
<span class="token string">&quot;cmd&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">&quot;b封面&quot;</span><span class="token punctuation">,</span> <span class="token string">'B封面'</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token comment"># 命令别名,主要用于帮助和开关</span>
2022-01-05 22:37:19 +08:00
<span class="token string">&quot;cost_gold&quot;</span><span class="token punctuation">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token comment"># 该功能需要花费的金币</span>
2021-10-23 19:30:03 +08:00
<span class="token punctuation">}</span>
<span class="token comment">#&quot;cmd&quot;第一个值会被作为功能调用统计的显示选项开关方面开启b封面=开启B封面=开启cover</span>
<span class="token comment">#&quot;__zx_plugin_name__&quot;不需要额外写入在bot启动时会自动将&quot;__zx_plugin_name__&quot;导入对应的&quot;cmd&quot;</span>
2021-11-10 15:15:53 +08:00
<span class="token comment"># 只填写需要的部分,其他默认</span>
__plugin_settings__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;level&quot;</span><span class="token punctuation">:</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token comment"># 群权限等级请不要设置为1或9若无特殊情况请设置为5</span>
<span class="token string">&quot;cmd&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">&quot;b封面&quot;</span><span class="token punctuation">,</span> <span class="token string">'B封面'</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token comment"># 命令别名,主要用于帮助和开关</span>
<span class="token punctuation">}</span>
<span class="token comment"># 再简化一点</span>
__plugin_settings__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;cmd&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">[</span><span class="token string">&quot;b封面&quot;</span><span class="token punctuation">,</span> <span class="token string">'B封面'</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token comment"># 命令别名,主要用于帮助和开关</span>
<span class="token punctuation">}</span>
2021-10-23 19:30:03 +08:00
<span class="token comment"># 管理员插件</span>
__plugin_settings__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;admin_level&quot;</span><span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token comment"># 管理员等级建议设置在5及以下敏感操作设置在5以上</span>
<span class="token punctuation">}</span>
2022-01-05 22:37:19 +08:00
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br><span class="line-number">17</span><br><span class="line-number">18</span><br><span class="line-number">19</span><br><span class="line-number">20</span><br><span class="line-number">21</span><br><span class="line-number">22</span><br><span class="line-number">23</span><br><span class="line-number">24</span><br><span class="line-number">25</span><br><span class="line-number">26</span><br></div></div><h2 id="plugin-task"><a href="#plugin-task" class="header-anchor">#</a> __plugin_task__</h2> <ul><li><strong>类型</strong><code>Dict[str, Union[str, str]]</code></li> <li><strong>说明</strong><br>
2021-10-23 19:30:03 +08:00
为你提供一个或多个开关,主要用于被动类插件的开关<br>
示例:</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 定义开关</span>
__plugin_task__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;名称&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;开关中文名&quot;</span><span class="token punctuation">,</span>
<span class="token string">&quot;abcd&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;统计开关&quot;</span><span class="token punctuation">,</span>
<span class="token string">&quot;...&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;...&quot;</span>
<span class="token punctuation">}</span>
<span class="token comment"># 导入管理器</span>
<span class="token keyword">from</span> utils<span class="token punctuation">.</span>manager <span class="token keyword">import</span> group_manager
<span class="token comment"># 在插件中设置</span>
<span class="token keyword">async</span> <span class="token keyword">def</span> <span class="token function">_</span><span class="token punctuation">(</span><span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">)</span><span class="token punctuation">:</span>
<span class="token keyword">if</span> <span class="token keyword">await</span> group_manager<span class="token punctuation">.</span>check_group_task_status<span class="token punctuation">(</span>event<span class="token punctuation">.</span>group_id<span class="token punctuation">,</span> <span class="token string">&quot;名称&quot;</span><span class="token punctuation">)</span><span class="token punctuation">:</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token keyword">if</span> <span class="token keyword">await</span> group_manager<span class="token punctuation">.</span>check_group_task_status<span class="token punctuation">(</span>event<span class="token punctuation">.</span>group_id<span class="token punctuation">,</span> <span class="token string">&quot;abcd&quot;</span><span class="token punctuation">)</span><span class="token punctuation">:</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br></div></div><h2 id="plugin-type"><a href="#plugin-type" class="header-anchor">#</a> __plugin_type__</h2> <ul><li><strong>类型</strong><code>Tuple[Union[str, int]]</code></li> <li><strong>说明</strong><br>
为普通插件分类,当没有<code>__plugin_type__</code>时,将统一放置普通功能分类中<br>
相同分类的插件在帮助图片中将会统合在一起<br>
示例:</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 定义格式:</span>
<span class="token comment"># 排列无或0时横向排列1列项排序(当你的__plugin_cmd__指令很多建议使用 1)</span>
__plugin_type__ <span class="token operator">=</span> <span class="token punctuation">(</span>分类名称<span class="token punctuation">,</span> 详细帮助中的排列<span class="token punctuation">)</span>
<span class="token comment"># 创建一个`工具`的分类</span>
__plugin_type__ <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token string">'工具'</span><span class="token punctuation">,</span><span class="token punctuation">)</span>
<span class="token comment"># 创建一个`原神相关`的分类,并在详细功能中命令以列向排列显示</span>
__plugin_type__ <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token string">'原神相关'</span><span class="token punctuation">,</span> <span class="token number">1</span><span class="token punctuation">)</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br></div></div><h2 id="plugin-version"><a href="#plugin-version" class="header-anchor">#</a> __plugin_version__</h2> <ul><li><strong>类型</strong><code>Union[float, int]</code></li> <li><strong>说明</strong><br>
插件版本,将作为插件自动更新的依照</li></ul> <h2 id="plugin-author"><a href="#plugin-author" class="header-anchor">#</a> __plugin_author__</h2> <ul><li><strong>类型</strong><code>str</code></li> <li><strong>说明</strong><br>
插件作者</li></ul> <h2 id="plugin-cd-limit"><a href="#plugin-cd-limit" class="header-anchor">#</a> __plugin_cd_limit__</h2> <ul><li><strong>类型</strong><code>Dict[str, Optional[Union[int, str]]]</code></li> <li><strong>说明</strong><br>
插件cd限制</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 以下为默认值</span>
__plugin_cd_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;cd&quot;</span><span class="token punctuation">:</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token comment"># 限制 cd 时长</span>
<span class="token string">&quot;check_type&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;all&quot;</span><span class="token punctuation">,</span> <span class="token comment"># 'private'/'group'/'all',限制私聊/群聊/全部</span>
<span class="token string">&quot;limit_type&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;user&quot;</span><span class="token punctuation">,</span> <span class="token comment"># 监听对象以user_id或group_id作为键来限制'user'用户id'group'群id</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 回复的话为None时不回复可以添加[at][uname][nickname]来对应艾特,用户群名称,昵称系统昵称</span>
<span class="token string">&quot;status&quot;</span><span class="token punctuation">:</span> true <span class="token comment"># 此限制的开关状态</span>
<span class="token punctuation">}</span>
<span class="token comment"># 可以只添加需要的内容,其他选用默认值</span>
__plugin_cd_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;cd&quot;</span><span class="token punctuation">:</span> <span class="token number">10</span><span class="token punctuation">,</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;冷静点,别冲了!&quot;</span>
<span class="token punctuation">}</span>
<span class="token comment"># 甚至全部使用默认值</span>
__plugin_cd_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token punctuation">}</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br></div></div><h2 id="plugin-block-limit"><a href="#plugin-block-limit" class="header-anchor">#</a> __plugin_block_limit__</h2> <ul><li><strong>类型</strong><code>Dict[str, Optional[str]]</code></li> <li><strong>说明</strong><br>
插件阻塞限制</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 以下为默认值</span>
__plugin_block_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;check_type&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;all&quot;</span><span class="token punctuation">,</span> <span class="token comment"># 'private'/'group'/'all',限制私聊/群聊/全部</span>
<span class="token string">&quot;limit_type&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;user&quot;</span><span class="token punctuation">,</span> <span class="token comment"># 监听对象以user_id或group_id作为键来限制'user'用户id'group'群id</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 回复的话为None时不回复可以添加[at][uname][nickname]来对应艾特,用户群名称,昵称系统昵称</span>
<span class="token string">&quot;status&quot;</span><span class="token punctuation">:</span> true <span class="token comment"># 此限制的开关状态</span>
<span class="token punctuation">}</span>
<span class="token comment"># 可以只添加需要的内容,其他选用默认值</span>
__plugin_block_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;你正在冲!&quot;</span>
<span class="token punctuation">}</span>
<span class="token comment"># 甚至全部使用默认值</span>
__plugin_block_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token punctuation">}</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br></div></div><h2 id="plugin-count-limit"><a href="#plugin-count-limit" class="header-anchor">#</a> __plugin_count_limit__</h2> <ul><li><strong>类型</strong><code>Dict[str, Optional[Union[int, str]]]</code></li> <li><strong>说明</strong><br>
插件每日调用次数限制</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 以下为默认值</span>
__plugin_count_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;max_count&quot;</span><span class="token punctuation">:</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token comment"># 每日次数限制数量</span>
<span class="token string">&quot;limit_type&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;user&quot;</span><span class="token punctuation">,</span> <span class="token comment"># 监听对象以user_id或group_id作为键来限制'user'用户id'group'群id</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 回复的话为None时不回复可以添加[at][uname][nickname]来对应艾特,用户群名称,昵称系统昵称</span>
<span class="token string">&quot;status&quot;</span><span class="token punctuation">:</span> true <span class="token comment"># 此限制的开关状态</span>
<span class="token punctuation">}</span>
<span class="token comment"># 可以只添加需要的内容,其他选用默认值</span>
__plugin_count_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;max_count&quot;</span><span class="token punctuation">:</span> <span class="token number">10</span><span class="token punctuation">,</span>
<span class="token string">&quot;rst&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;你今天没得冲了!&quot;</span>
<span class="token punctuation">}</span>
<span class="token comment"># 甚至全部使用默认值</span>
__plugin_count_limit__ <span class="token operator">=</span> <span class="token punctuation">{</span><span class="token punctuation">}</span>
2021-11-10 15:15:53 +08:00
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br></div></div><h2 id="plugin-resource"><a href="#plugin-resource" class="header-anchor">#</a> __plugin_resource__</h2> <ul><li><strong>类型</strong><code>Dict[Union[str, Path], Union[str, Path]]</code></li> <li><strong>说明</strong><br>
将插件目录下资源移动要指定文件夹并记录保存,在插件删除后自动删除对应资源文件</li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 提供示例</span>
__plugin_resources__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;cases&quot;</span><span class="token punctuation">:</span> IMAGE_PATH
<span class="token punctuation">}</span>
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br></div></div><h2 id="plugin-configs"><a href="#plugin-configs" class="header-anchor">#</a> __plugin_configs__</h2> <ul><li><strong>类型</strong><code>Dict[str, Union[int, str, float, Dict[str, Union[int, str, float]]]]</code></li> <li><strong>说明</strong><br>
2021-10-23 19:30:03 +08:00
插件配置项用于生成统一的config.yaml文件供用户统一修改<br>
2021-11-10 15:15:53 +08:00
其中 key 大小写不敏感,生成与返回会统一使用大写<br> <strong></strong> <ul><li>公用部分例如<code>hibiapi</code>等请直接添加和使用<code>hibiapi</code>配置组,包括<code>pixiv</code></li> <li>公用部分可以新增和删除配置项</li></ul></li></ul> <div class="language-python line-numbers-mode"><pre class="language-python"><code><span class="token comment"># 配置项(默认值)</span>
2021-10-23 19:30:03 +08:00
__plugin_configs__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;key1&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token string">&quot;value&quot;</span><span class="token punctuation">:</span> value<span class="token punctuation">,</span> <span class="token comment"># 配置值</span>
&quot;<span class="token builtin">help</span><span class="token punctuation">:</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 配置项说明,为空时则不添加配置项说明注释</span>
<span class="token string">&quot;name&quot;</span><span class="token punctuation">:</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 插件名称说明如果含有__zx_plugin_name__一般不需要设置</span>
<span class="token string">&quot;default_value&quot;</span><span class="token punctuation">:</span> <span class="token boolean">None</span> <span class="token comment"># 当value值为空时返回的默认值 </span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token string">&quot;key2&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
2021-12-08 10:10:40 +08:00
<span class="token string">&quot;key3&quot;</span><span class="token punctuation">:</span> value<span class="token punctuation">,</span> <span class="token comment"># 只设置value值其他值为 None</span>
2021-10-23 19:30:03 +08:00
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token punctuation">}</span>
<span class="token comment"># 增加一个配置项</span>
<span class="token comment">############ 方式一 ############</span>
<span class="token comment"># 不添加 help, name, default_value 等设置,仅仅设置 value </span>
__plugin_configs__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;key1&quot;</span><span class="token punctuation">:</span> value<span class="token punctuation">,</span>
<span class="token string">&quot;key2&quot;</span><span class="token punctuation">:</span> <span class="token number">9</span><span class="token punctuation">,</span>
<span class="token string">&quot;key3&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;Hello 真寻&quot;</span><span class="token punctuation">,</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token punctuation">}</span>
<span class="token comment"># 添加 help, name, default_value 等</span>
__plugin_configs__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;key1&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token string">&quot;value&quot;</span><span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span>
2022-01-05 22:37:19 +08:00
<span class="token string">&quot;help&quot;</span><span class="token punctuation">:</span> <span class="token string">&quot;这是一个示例&quot;</span><span class="token punctuation">,</span>
2021-10-23 19:30:03 +08:00
<span class="token string">&quot;default_value&quot;</span><span class="token punctuation">:</span> <span class="token number">10</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token punctuation">}</span>
<span class="token comment"># 是一个需要设置权限等级的插件需要在key末尾添加 [LEVEL]</span>
<span class="token comment"># 且 value 或 default_value 必须有值</span>
__plugin_configs__ <span class="token operator">=</span> <span class="token punctuation">{</span>
<span class="token string">&quot;key1 [LEVEL]&quot;</span><span class="token punctuation">:</span> <span class="token punctuation">{</span>
<span class="token string">&quot;value&quot;</span><span class="token punctuation">:</span> <span class="token number">1</span><span class="token punctuation">,</span>
<span class="token string">&quot;help: &quot;</span>这是一个示例&quot;<span class="token punctuation">,</span>
<span class="token string">&quot;default_value&quot;</span><span class="token punctuation">:</span> <span class="token number">10</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
<span class="token punctuation">.</span><span class="token punctuation">.</span><span class="token punctuation">.</span>
<span class="token punctuation">}</span>
<span class="token comment">########################</span>
<span class="token comment">############ 方式二 ############</span>
<span class="token comment"># 常用于一个包下有多个插件,需要使用 nonebot.load_plugins加载时统一配置组和权限</span>
<span class="token comment"># 从 configs.config 中 导入 Config</span>
<span class="token keyword">from</span> configs<span class="token punctuation">.</span>config <span class="token keyword">import</span> Config
<span class="token comment"># 添加配置方法</span>
Config<span class="token punctuation">.</span>add_plugin_config<span class="token punctuation">(</span>
module<span class="token punctuation">:</span> <span class="token builtin">str</span><span class="token punctuation">,</span> <span class="token comment"># 模块名称(相当于自定义创建一个配置组),一般为插件模块名称</span>
key<span class="token punctuation">:</span> <span class="token builtin">str</span><span class="token punctuation">,</span> <span class="token comment"># 配置key</span>
value<span class="token punctuation">:</span> Optional<span class="token punctuation">[</span>Any<span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token comment"># 值</span>
<span class="token operator">*</span><span class="token punctuation">,</span>
name<span class="token punctuation">:</span> Optional<span class="token punctuation">[</span><span class="token builtin">str</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 插件名称,相同 module 的 name 将会覆盖</span>
help_<span class="token punctuation">:</span> Optional<span class="token punctuation">[</span><span class="token builtin">str</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 配置项说明</span>
default_value<span class="token punctuation">:</span> Optional<span class="token punctuation">[</span><span class="token builtin">str</span><span class="token punctuation">]</span> <span class="token operator">=</span> <span class="token boolean">None</span><span class="token punctuation">,</span> <span class="token comment"># 默认值</span>
_override<span class="token punctuation">:</span> <span class="token builtin">bool</span> <span class="token operator">=</span> <span class="token boolean">False</span> <span class="token comment"># 是否覆盖一般开发不使用主要用于init_config时的读取问题</span>
<span class="token punctuation">)</span>
<span class="token comment"># 添加一个配置项, name, help_, default</span>
Config<span class="token punctuation">.</span>add_plugin_config<span class="token punctuation">(</span>
<span class="token string">&quot;module&quot;</span><span class="token punctuation">,</span>
<span class="token string">&quot;key1&quot;</span><span class="token punctuation">,</span>
<span class="token number">1</span><span class="token punctuation">,</span>
name<span class="token operator">=</span><span class="token string">&quot;这是一个示例&quot;</span><span class="token punctuation">,</span>
help_<span class="token operator">=</span><span class="token string">&quot;没错,还是示例&quot;</span><span class="token punctuation">,</span>
default_value<span class="token operator">=</span><span class="token number">10</span><span class="token punctuation">,</span>
<span class="token punctuation">)</span>
<span class="token comment"># 添加一个管理员插件等级配置项</span>
<span class="token comment"># 使用 : 分割开,前是配置组名称,后是管理插件模块</span>
<span class="token comment"># 且 key 末尾需要添加 [LEVEL],且 value 或 default_value 必须有值</span>
Config<span class="token punctuation">.</span>add_plugin_config<span class="token punctuation">(</span>
<span class="token string">&quot;module:admin_module&quot;</span><span class="token punctuation">,</span>
<span class="token string">&quot;key1 [LEVEL]&quot;</span><span class="token punctuation">,</span>
<span class="token number">1</span><span class="token punctuation">,</span>
name<span class="token operator">=</span><span class="token string">&quot;这是一个示例&quot;</span><span class="token punctuation">,</span>
help_<span class="token operator">=</span><span class="token string">&quot;默认是1级&quot;</span><span class="token punctuation">,</span>
default_value<span class="token operator">=</span><span class="token number">10</span><span class="token punctuation">,</span>
<span class="token punctuation">)</span>
<span class="token comment">########################</span>
<span class="token comment"># 获取配置</span>
<span class="token comment"># 从 configs.config 中 导入 Config</span>
<span class="token keyword">from</span> configs<span class="token punctuation">.</span>config <span class="token keyword">import</span> Config
data <span class="token operator">=</span> Config<span class="token punctuation">.</span>get_config<span class="token punctuation">(</span><span class="token string">&quot;module&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;key&quot;</span><span class="token punctuation">)</span>
<span class="token comment">############ 完成示例 ############</span>
<span class="token comment"># 添加一个配置组,名称为 pix 并为其添加一个配置项名称为image_num</span>
Config<span class="token punctuation">.</span>add_plugin_config<span class="token punctuation">(</span>
<span class="token string">&quot;pix&quot;</span><span class="token punctuation">,</span>
<span class="token string">&quot;image_num&quot;</span><span class="token punctuation">,</span>
<span class="token number">5</span><span class="token punctuation">,</span>
name<span class="token operator">=</span><span class="token string">&quot;PIX图库操作&quot;</span><span class="token punctuation">,</span>
help_<span class="token operator">=</span><span class="token string">&quot;每次访问图片返回的数量&quot;</span><span class="token punctuation">,</span>
default_value<span class="token operator">=</span><span class="token number">5</span><span class="token punctuation">,</span>
<span class="token punctuation">)</span>
<span class="token comment"># 获取数据key 的大小写不敏感</span>
image_num <span class="token operator">=</span> Config<span class="token punctuation">.</span>get_config<span class="token punctuation">(</span><span class="token string">&quot;pix&quot;</span><span class="token punctuation">,</span> <span class="token string">&quot;IMAGE_NUM&quot;</span><span class="token punctuation">)</span>
<span class="token keyword">print</span><span class="token punctuation">(</span><span class="token string-interpolation"><span class="token string">f&quot;图片数量: </span><span class="token interpolation"><span class="token punctuation">{</span>image_num<span class="token punctuation">}</span></span><span class="token string">&quot;</span></span><span class="token punctuation">)</span>
<span class="token comment">### out ###</span>
图片数量<span class="token punctuation">:</span> <span class="token number">5</span>
2022-01-05 22:37:19 +08:00
</code></pre> <div class="line-numbers-wrapper"><span class="line-number">1</span><br><span class="line-number">2</span><br><span class="line-number">3</span><br><span class="line-number">4</span><br><span class="line-number">5</span><br><span class="line-number">6</span><br><span class="line-number">7</span><br><span class="line-number">8</span><br><span class="line-number">9</span><br><span class="line-number">10</span><br><span class="line-number">11</span><br><span class="line-number">12</span><br><span class="line-number">13</span><br><span class="line-number">14</span><br><span class="line-number">15</span><br><span class="line-number">16</span><br><span class="line-number">17</span><br><span class="line-number">18</span><br><span class="line-number">19</span><br><span class="line-number">20</span><br><span class="line-number">21</span><br><span class="line-number">22</span><br><span class="line-number">23</span><br><span class="line-number">24</span><br><span class="line-number">25</span><br><span class="line-number">26</span><br><span class="line-number">27</span><br><span class="line-number">28</span><br><span class="line-number">29</span><br><span class="line-number">30</span><br><span class="line-number">31</span><br><span class="line-number">32</span><br><span class="line-number">33</span><br><span class="line-number">34</span><br><span class="line-number">35</span><br><span class="line-number">36</span><br><span class="line-number">37</span><br><span class="line-number">38</span><br><span class="line-number">39</span><br><span class="line-number">40</span><br><span class="line-number">41</span><br><span class="line-number">42</span><br><span class="line-number">43</span><br><span class="line-number">44</span><br><span class="line-number">45</span><br><span class="line-number">46</span><br><span class="line-number">47</span><br><span class="line-number">48</span><br><span class="line-number">49</span><br><span class="line-number">50</span><br><span class="line-number">51</span><br><span class="line-number">52</span><br><span class="line-number">53</span><br><span class="line-number">54</span><br><span class="line-number">55</span><br><span class="line-number">56</span><br><span class="line-number">57</span><br><span class="line-number">58</span><br><span class="line-number">59</span><br><span class="line-number">60</span><br><span class="line-number">61</span><br><span class="line-number">62</span><br><span class="line-number">63</span><br><span class="line-number">64</span><br><span class="line-number">65</span><br><span class="line-number">66</span><br><span class="line-number">67</span><br><span class="line-number">68</span><br><span class="line-number">69</span><br><span class="line-number">70</span><br><span class="line-number">71</span><br><span class="line-number">72</span><br><span class="line-number">73</span><br><span class="line-number">74</span><br><span class="line-number">75</span><br><span class="line-number">76</span><br><span class="line-number">77</span><br><span class="line-number">78</span><br><span class="line-number">79</span><br><span class="line-number">80</span><br><span class="line-number">81</span><br><span class="line-number">82</span><br><span class="line-number">83</span><br><span class="line-number">84</span><br><span class="line-number">85</span><br><span class="line-number">86</span><br><span class="line-number">87</span><br><span class="line-number">88</span><br><span class="line-number">89</span><br><span class="line-number">90</span><br><span class="line-number">91</span><br><span class="line-number">92</span><br><span class="line-number">93</span><br><span class="line-number">94</span><br><span class="line-number">95</span><br><span class="line-number">96</span><br><span class="line-number">97</span><br><span class="line-number">98</span><br><span class="line-number">99</span><br><span class="line-number">100</span><br><span class="line-number">101</span><br><span class="line-number">102</span><br><span class="line-number">103</span><br><span class="line-number">104</span
商店操作
</a></span></p></div> <div class="comments-wrapper"><!----></div> <ul class="side-bar sub-sidebar-wrapper" style="width:12rem;" data-v-70334359><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#简介" class="sidebar-link reco-side-简介" data-v-70334359>简介</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#zx-plugin-name" class="sidebar-link reco-side-zx-plugin-name" data-v-70334359>__zx_plugin_name__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-usage" class="sidebar-link reco-side-plugin-usage" data-v-70334359>__plugin_usage__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-super-usage" class="sidebar-link reco-side-plugin-super-usage" data-v-70334359>__plugin_super_usage__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-des" class="sidebar-link reco-side-plugin-des" data-v-70334359>__plugin_des__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-cmd" class="sidebar-link reco-side-plugin-cmd" data-v-70334359>__plugin_cmd__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-settings" class="sidebar-link reco-side-plugin-settings" data-v-70334359>__plugin_settings__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-task" class="sidebar-link reco-side-plugin-task" data-v-70334359>__plugin_task__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-type" class="sidebar-link reco-side-plugin-type" data-v-70334359>__plugin_type__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-version" class="sidebar-link reco-side-plugin-version" data-v-70334359>__plugin_version__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-author" class="sidebar-link reco-side-plugin-author" data-v-70334359>__plugin_author__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-cd-limit" class="sidebar-link reco-side-plugin-cd-limit" data-v-70334359>__plugin_cd_limit__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-block-limit" class="sidebar-link reco-side-plugin-block-limit" data-v-70334359>__plugin_block_limit__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-count-limit" class="sidebar-link reco-side-plugin-count-limit" data-v-70334359>__plugin_count_limit__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-resource" class="sidebar-link reco-side-plugin-resource" data-v-70334359>__plugin_resource__</a></li><li class="level-2" data-v-70334359><a href="/zhenxun_bot/docs/development_doc/plugins.html#plugin-configs" class="sidebar-link reco-side-plugin-configs" data-v-70334359>__plugin_configs__</a></li></ul></main> <!----></div></div></div></div><div class="global-ui"><div class="back-to-ceiling" style="right:1rem;bottom:6rem;width:2.5rem;height:2.5rem;border-radius:.25rem;line-height:2.5rem;display:none;" data-v-c6073ba8 data-v-c6073ba8><svg t="1574745035067" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5404" class="icon" data-v-c6073ba8><path d="M526.60727968 10.90185116a27.675 27.675 0 0 0-29.21455937 0c-131.36607665 82.28402758-218.69155461 228.01873535-218.69155402 394.07834331a462.20625001 462.20625001 0 0 0 5.36959153 69.94390903c1.00431239 6.55289093-0.34802892 13.13561351-3.76865779 18.80351572-32.63518765 54.11355614-51.75690182 118.55860487-51.7569018 187.94566865a371.06718723 371.06718723 0 0 0 11.50484808 91.98906777c6.53300375 25.50556257 41.68394495 28.14064038
2022-01-16 15:27:54 +08:00
<script src="/zhenxun_bot/assets/js/app.91f0cec4.js" defer></script><script src="/zhenxun_bot/assets/js/3.5a2c9393.js" defer></script><script src="/zhenxun_bot/assets/js/1.c6360fc1.js" defer></script><script src="/zhenxun_bot/assets/js/14.afd88693.js" defer></script><script src="/zhenxun_bot/assets/js/8.e618920f.js" defer></script>
2021-10-23 19:30:03 +08:00
</body>
</html>