mirror of
https://github.com/LiteyukiStudio/LiteyukiBot.git
synced 2024-11-24 23:35:06 +08:00
Deploying to docs from @ LiteyukiStudio/LiteyukiBot@94a021bab0 🚀
This commit is contained in:
parent
f136e5d690
commit
60cd0859e7
1
assets/app.DENfQT2i.js
Normal file
1
assets/app.DENfQT2i.js
Normal file
@ -0,0 +1 @@
|
||||
import{R as p}from"./chunks/theme.C4kBN4Ub.js";import{R as o,a8 as u,a9 as l,aa as c,d as f,u as d,v as m,s as h,ab as g,ac as A,ad as v,ae as P,af as R,ag as w,ah as y,ai as C,aj as b,ak as E,al as S}from"./chunks/framework._avq4Ty7.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=f({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=d();return m(()=>{h(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&g(),A(),v(),s.setup&&s.setup(),()=>P(s.Layout)}});async function j(){globalThis.__VITEPRESS__=!0;const e=_(),a=D();a.provide(R,e);const t=w(e.route);return a.provide(y,t),a.component("Content",C),a.component("ClientOnly",b),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:E}),{app:a,router:e,data:t}}function D(){return c(T)}function _(){let e=o,a;return u(t=>{let n=l(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&j().then(({app:e,router:a,data:t})=>{a.go().then(()=>{S(a.route,t.site),e.mount("#app")})});export{j as createApp};
|
@ -1 +0,0 @@
|
||||
import{R as p}from"./chunks/theme.OwOq8vXE.js";import{R as o,a8 as u,a9 as l,aa as c,ab as f,ac as d,ad as m,ae as h,af as g,ag as A,ah as v,d as P,u as R,v as w,s as y,ai as C,aj as b,ak as E,al as S}from"./chunks/framework.jrU0lkHV.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(p),T=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=R();return w(()=>{y(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),b(),E(),s.setup&&s.setup(),()=>S(s.Layout)}});async function j(){globalThis.__VITEPRESS__=!0;const e=_(),a=D();a.provide(l,e);const t=c(e.route);return a.provide(f,t),a.component("Content",d),a.component("ClientOnly",m),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:h}),{app:a,router:e,data:t}}function D(){return g(T)}function _(){let e=o,a;return A(t=>{let n=v(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&j().then(({app:e,router:a,data:t})=>{a.go().then(()=>{u(a.route,t.site),e.mount("#app")})});export{j as createApp};
|
File diff suppressed because one or more lines are too long
1
assets/chunks/@localSearchIndexen.CdhrGuzG.js
Normal file
1
assets/chunks/@localSearchIndexen.CdhrGuzG.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
assets/chunks/@localSearchIndexroot.ccxbyMZz.js
Normal file
1
assets/chunks/@localSearchIndexroot.ccxbyMZz.js
Normal file
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{g as c}from"./theme.OwOq8vXE.js";import{d as e,o as a,c as n,j as t,t as i,k as p,_ as u}from"./framework.jrU0lkHV.js";const _="https://github.com/",o="LiteyukiStudio/LiteyukiBot",b=`${_}${o}`,m={class:"contributor-bar"},l=e({__name:"ContributorBar",setup(h){const r=`https://contrib.rocks/image?repo=${o}`,s=`${b}/graphs/contributors`;return(d,f)=>(a(),n("div",m,[t("h2",null,i(p(c)("thx_contributors")),1),t("a",{href:s},[t("div",{class:"contributor-list"},[t("img",{src:r,alt:"Contributors"})])])]))}}),k=u(l,[["__scopeId","data-v-bc374713"]]);export{k as C};
|
||||
import{g as c}from"./theme.C4kBN4Ub.js";import{d as e,o as a,c as n,j as t,t as i,k as p,_ as u}from"./framework._avq4Ty7.js";const _="https://github.com/",o="LiteyukiStudio/LiteyukiBot",b=`${_}${o}`,m={class:"contributor-bar"},l=e({__name:"ContributorBar",setup(h){const r=`https://contrib.rocks/image?repo=${o}`,s=`${b}/graphs/contributors`;return(d,f)=>(a(),n("div",m,[t("h2",null,i(p(c)("thx_contributors")),1),t("a",{href:s},[t("div",{class:"contributor-list"},[t("img",{src:r,alt:"Contributors"})])])]))}}),k=u(l,[["__scopeId","data-v-bc374713"]]);export{k as C};
|
8
assets/chunks/VPLocalSearchBox.CCi2qGzD.js
Normal file
8
assets/chunks/VPLocalSearchBox.CCi2qGzD.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
18
assets/chunks/framework._avq4Ty7.js
Normal file
18
assets/chunks/framework._avq4Ty7.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","order":2},"headers":[],"relativePath":"deploy/config.md","filePath":"zh/deploy/config.md","lastUpdated":1728838653000}'),l={name:"deploy/config.md"};function h(e,s,k,p,d,o){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="配置" tabindex="-1">配置 <a class="header-anchor" href="#配置" aria-label="Permalink to "配置""></a></h1><p>轻雪支持<code>yaml</code>、<code>json</code>和<code>toml</code>作为配置文件,取决于你个人的喜好</p><p>首次运行后生成<code>config.yml</code>和<code>config</code>目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改<code>superusers</code>及<code>nickname</code>字段即可</p><p>启动时会加载项目目录下<code>config.yml/yaml/json/toml</code>和<code>config</code>目录下的所有配置文件,你可在<code>config</code>目录下创建多个配置文件,轻雪会自动合并这些配置文件</p><h2 id="基础配置项" tabindex="-1"><strong>基础配置项</strong> <a class="header-anchor" href="#基础配置项" aria-label="Permalink to "**基础配置项**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","order":2},"headers":[],"relativePath":"deploy/config.md","filePath":"zh/deploy/config.md","lastUpdated":1728838653000}'),l={name:"deploy/config.md"};function h(e,s,k,p,d,o){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="配置" tabindex="-1">配置 <a class="header-anchor" href="#配置" aria-label="Permalink to "配置""></a></h1><p>轻雪支持<code>yaml</code>、<code>json</code>和<code>toml</code>作为配置文件,取决于你个人的喜好</p><p>首次运行后生成<code>config.yml</code>和<code>config</code>目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改<code>superusers</code>及<code>nickname</code>字段即可</p><p>启动时会加载项目目录下<code>config.yml/yaml/json/toml</code>和<code>config</code>目录下的所有配置文件,你可在<code>config</code>目录下创建多个配置文件,轻雪会自动合并这些配置文件</p><h2 id="基础配置项" tabindex="-1"><strong>基础配置项</strong> <a class="header-anchor" href="#基础配置项" aria-label="Permalink to "**基础配置项**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # Nonebot机器人的配置,6.3.10版本后,NoneBot下配置已迁移至nonebot键下,不再使用外层配置,但是部分内容会被覆盖,请尽快迁移</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> command_start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: [ </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"/"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">""</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 指令前缀,若没有""空命令头,请开启alconna_use_command_start保证alconna解析正常</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> host</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">127.0.0.1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 监听地址,默认为本机,若要接收外部请求请填写0.0.0.0</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","order":2},"headers":[],"relativePath":"deploy/config.md","filePath":"zh/deploy/config.md","lastUpdated":1728838653000}'),l={name:"deploy/config.md"};function h(e,s,k,p,d,o){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="配置" tabindex="-1">配置 <a class="header-anchor" href="#配置" aria-label="Permalink to "配置""></a></h1><p>轻雪支持<code>yaml</code>、<code>json</code>和<code>toml</code>作为配置文件,取决于你个人的喜好</p><p>首次运行后生成<code>config.yml</code>和<code>config</code>目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改<code>superusers</code>及<code>nickname</code>字段即可</p><p>启动时会加载项目目录下<code>config.yml/yaml/json/toml</code>和<code>config</code>目录下的所有配置文件,你可在<code>config</code>目录下创建多个配置文件,轻雪会自动合并这些配置文件</p><h2 id="基础配置项" tabindex="-1"><strong>基础配置项</strong> <a class="header-anchor" href="#基础配置项" aria-label="Permalink to "**基础配置项**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"配置","description":"","frontmatter":{"title":"配置","order":2},"headers":[],"relativePath":"deploy/config.md","filePath":"zh/deploy/config.md","lastUpdated":1728838653000}'),l={name:"deploy/config.md"};function h(e,s,k,p,d,o){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="配置" tabindex="-1">配置 <a class="header-anchor" href="#配置" aria-label="Permalink to "配置""></a></h1><p>轻雪支持<code>yaml</code>、<code>json</code>和<code>toml</code>作为配置文件,取决于你个人的喜好</p><p>首次运行后生成<code>config.yml</code>和<code>config</code>目录,你可修改配置项后重启轻雪,绝大多数情况下,你只需要修改<code>superusers</code>及<code>nickname</code>字段即可</p><p>启动时会加载项目目录下<code>config.yml/yaml/json/toml</code>和<code>config</code>目录下的所有配置文件,你可在<code>config</code>目录下创建多个配置文件,轻雪会自动合并这些配置文件</p><h2 id="基础配置项" tabindex="-1"><strong>基础配置项</strong> <a class="header-anchor" href="#基础配置项" aria-label="Permalink to "**基础配置项**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # Nonebot机器人的配置,6.3.10版本后,NoneBot下配置已迁移至nonebot键下,不再使用外层配置,但是部分内容会被覆盖,请尽快迁移</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> command_start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: [ </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"/"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">""</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 指令前缀,若没有""空命令头,请开启alconna_use_command_start保证alconna解析正常</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> host</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">127.0.0.1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 监听地址,默认为本机,若要接收外部请求请填写0.0.0.0</span></span>
|
@ -1,3 +1,3 @@
|
||||
import{_ as o,c as t,a7 as a,o as l}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"答疑","description":"","frontmatter":{"title":"答疑","order":3},"headers":[],"relativePath":"deploy/fandq.md","filePath":"zh/deploy/fandq.md","lastUpdated":1729881298000}'),i={name:"deploy/fandq.md"};function d(n,e,r,p,c,s){return l(),t("div",null,e[0]||(e[0]=[a(`<h1 id="答疑" tabindex="-1">答疑 <a class="header-anchor" href="#答疑" aria-label="Permalink to "答疑""></a></h1><h2 id="常见问题" tabindex="-1"><strong>常见问题</strong> <a class="header-anchor" href="#常见问题" aria-label="Permalink to "**常见问题**""></a></h2><ul><li><p>设备上Python环境太乱了,pip和python不对应怎么办?</p><ul><li>请使用<code>/path/to/python -m pip install -r requirements.txt</code>来安装依赖, 然后用<code>/path/to/python main.py</code>来启动Bot, 其中<code>/path/to/python</code>是你要用来运行Bot的可执行文件</li></ul></li><li><p>更新轻雪失败,报错<code>InvalidGitRepositoryError</code></p><ul><li>请正确安装<code>Git</code>,并使用克隆而非直接下载的方式部署轻雪</li></ul></li><li><p>怎么对接聊天平台?</p><ul><li>Bot部分插件提供了对接特定平台的能力,例如使用NoneBot插件可对接支持的适配器平台</li></ul></li><li><p><code>Playwright</code>安装失败</p><ul><li>输入<code>playwright install</code>安装浏览器</li></ul></li><li><p>有的插件安装后报错无法启动</p><ul><li>请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式<code>safe_mode: true</code>下启动轻雪,在安全模式下你可以使用<code>npm uninstall</code>卸载问题插件</li></ul></li></ul><h2 id="其他问题" tabindex="-1">其他问题 <a class="header-anchor" href="#其他问题" aria-label="Permalink to "其他问题""></a></h2><pre><code>-
|
||||
import{_ as o,o as t,c as a,a7 as l}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"答疑","description":"","frontmatter":{"title":"答疑","order":3},"headers":[],"relativePath":"deploy/fandq.md","filePath":"zh/deploy/fandq.md","lastUpdated":1729881298000}'),i={name:"deploy/fandq.md"};function d(n,e,r,p,c,s){return t(),a("div",null,e[0]||(e[0]=[l(`<h1 id="答疑" tabindex="-1">答疑 <a class="header-anchor" href="#答疑" aria-label="Permalink to "答疑""></a></h1><h2 id="常见问题" tabindex="-1"><strong>常见问题</strong> <a class="header-anchor" href="#常见问题" aria-label="Permalink to "**常见问题**""></a></h2><ul><li><p>设备上Python环境太乱了,pip和python不对应怎么办?</p><ul><li>请使用<code>/path/to/python -m pip install -r requirements.txt</code>来安装依赖, 然后用<code>/path/to/python main.py</code>来启动Bot, 其中<code>/path/to/python</code>是你要用来运行Bot的可执行文件</li></ul></li><li><p>更新轻雪失败,报错<code>InvalidGitRepositoryError</code></p><ul><li>请正确安装<code>Git</code>,并使用克隆而非直接下载的方式部署轻雪</li></ul></li><li><p>怎么对接聊天平台?</p><ul><li>Bot部分插件提供了对接特定平台的能力,例如使用NoneBot插件可对接支持的适配器平台</li></ul></li><li><p><code>Playwright</code>安装失败</p><ul><li>输入<code>playwright install</code>安装浏览器</li></ul></li><li><p>有的插件安装后报错无法启动</p><ul><li>请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式<code>safe_mode: true</code>下启动轻雪,在安全模式下你可以使用<code>npm uninstall</code>卸载问题插件</li></ul></li></ul><h2 id="其他问题" tabindex="-1">其他问题 <a class="header-anchor" href="#其他问题" aria-label="Permalink to "其他问题""></a></h2><pre><code>-
|
||||
加入QQ群[775840726](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=SzmDYbfR6jY94o9KFNon7AwelRyI6M_u&authKey=ygeBdEmdFNyCWuNR4w0M1M8%2B5oDg7k%2FDfN0tzBkYcnbB%2FGHNnlVEnCIGbdftsnn7&noverify=0&group_code=775840726)
|
||||
</code></pre>`,5)]))}const m=o(i,[["render",d]]);export{u as __pageData,m as default};
|
@ -1,3 +1,3 @@
|
||||
import{_ as o,c as t,a7 as a,o as l}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"答疑","description":"","frontmatter":{"title":"答疑","order":3},"headers":[],"relativePath":"deploy/fandq.md","filePath":"zh/deploy/fandq.md","lastUpdated":1729881298000}'),i={name:"deploy/fandq.md"};function d(n,e,r,p,c,s){return l(),t("div",null,e[0]||(e[0]=[a(`<h1 id="答疑" tabindex="-1">答疑 <a class="header-anchor" href="#答疑" aria-label="Permalink to "答疑""></a></h1><h2 id="常见问题" tabindex="-1"><strong>常见问题</strong> <a class="header-anchor" href="#常见问题" aria-label="Permalink to "**常见问题**""></a></h2><ul><li><p>设备上Python环境太乱了,pip和python不对应怎么办?</p><ul><li>请使用<code>/path/to/python -m pip install -r requirements.txt</code>来安装依赖, 然后用<code>/path/to/python main.py</code>来启动Bot, 其中<code>/path/to/python</code>是你要用来运行Bot的可执行文件</li></ul></li><li><p>更新轻雪失败,报错<code>InvalidGitRepositoryError</code></p><ul><li>请正确安装<code>Git</code>,并使用克隆而非直接下载的方式部署轻雪</li></ul></li><li><p>怎么对接聊天平台?</p><ul><li>Bot部分插件提供了对接特定平台的能力,例如使用NoneBot插件可对接支持的适配器平台</li></ul></li><li><p><code>Playwright</code>安装失败</p><ul><li>输入<code>playwright install</code>安装浏览器</li></ul></li><li><p>有的插件安装后报错无法启动</p><ul><li>请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式<code>safe_mode: true</code>下启动轻雪,在安全模式下你可以使用<code>npm uninstall</code>卸载问题插件</li></ul></li></ul><h2 id="其他问题" tabindex="-1">其他问题 <a class="header-anchor" href="#其他问题" aria-label="Permalink to "其他问题""></a></h2><pre><code>-
|
||||
import{_ as o,o as t,c as a,a7 as l}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"答疑","description":"","frontmatter":{"title":"答疑","order":3},"headers":[],"relativePath":"deploy/fandq.md","filePath":"zh/deploy/fandq.md","lastUpdated":1729881298000}'),i={name:"deploy/fandq.md"};function d(n,e,r,p,c,s){return t(),a("div",null,e[0]||(e[0]=[l(`<h1 id="答疑" tabindex="-1">答疑 <a class="header-anchor" href="#答疑" aria-label="Permalink to "答疑""></a></h1><h2 id="常见问题" tabindex="-1"><strong>常见问题</strong> <a class="header-anchor" href="#常见问题" aria-label="Permalink to "**常见问题**""></a></h2><ul><li><p>设备上Python环境太乱了,pip和python不对应怎么办?</p><ul><li>请使用<code>/path/to/python -m pip install -r requirements.txt</code>来安装依赖, 然后用<code>/path/to/python main.py</code>来启动Bot, 其中<code>/path/to/python</code>是你要用来运行Bot的可执行文件</li></ul></li><li><p>更新轻雪失败,报错<code>InvalidGitRepositoryError</code></p><ul><li>请正确安装<code>Git</code>,并使用克隆而非直接下载的方式部署轻雪</li></ul></li><li><p>怎么对接聊天平台?</p><ul><li>Bot部分插件提供了对接特定平台的能力,例如使用NoneBot插件可对接支持的适配器平台</li></ul></li><li><p><code>Playwright</code>安装失败</p><ul><li>输入<code>playwright install</code>安装浏览器</li></ul></li><li><p>有的插件安装后报错无法启动</p><ul><li>请先查阅插件文档,确认插件必要配置项完好后,仍然出现问题,请联系插件作者或在安全模式<code>safe_mode: true</code>下启动轻雪,在安全模式下你可以使用<code>npm uninstall</code>卸载问题插件</li></ul></li></ul><h2 id="其他问题" tabindex="-1">其他问题 <a class="header-anchor" href="#其他问题" aria-label="Permalink to "其他问题""></a></h2><pre><code>-
|
||||
加入QQ群[775840726](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=SzmDYbfR6jY94o9KFNon7AwelRyI6M_u&authKey=ygeBdEmdFNyCWuNR4w0M1M8%2B5oDg7k%2FDfN0tzBkYcnbB%2FGHNnlVEnCIGbdftsnn7&noverify=0&group_code=775840726)
|
||||
</code></pre>`,5)]))}const m=o(i,[["render",d]]);export{u as __pageData,m as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"安装","description":"","frontmatter":{"title":"安装","order":1},"headers":[],"relativePath":"deploy/install.md","filePath":"zh/deploy/install.md","lastUpdated":1731167537000}'),n={name:"deploy/install.md"};function l(o,s,h,p,d,k){return e(),a("div",null,s[0]||(s[0]=[t(`<h1 id="安装" tabindex="-1">安装 <a class="header-anchor" href="#安装" aria-label="Permalink to "安装""></a></h1><h2 id="常规部署" tabindex="-1"><strong>常规部署</strong> <a class="header-anchor" href="#常规部署" aria-label="Permalink to "**常规部署**""></a></h2><ol><li>安装 <a href="https://git-scm.com/download/" target="_blank" rel="noreferrer"><code>Git</code></a> 和 <a href="https://www.python.org/downloads/release/python-31010/" target="_blank" rel="noreferrer"><code>Python3.10+</code></a> 环境</li></ol><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"安装","description":"","frontmatter":{"title":"安装","order":1},"headers":[],"relativePath":"deploy/install.md","filePath":"zh/deploy/install.md","lastUpdated":1731694626000}'),e={name:"deploy/install.md"};function l(h,s,p,o,d,k){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="安装" tabindex="-1">安装 <a class="header-anchor" href="#安装" aria-label="Permalink to "安装""></a></h1><h2 id="常规部署" tabindex="-1"><strong>常规部署</strong> <a class="header-anchor" href="#常规部署" aria-label="Permalink to "**常规部署**""></a></h2><ol><li>安装 <a href="https://git-scm.com/download/" target="_blank" rel="noreferrer"><code>Git</code></a> 和 <a href="https://www.python.org/downloads/release/python-31010/" target="_blank" rel="noreferrer"><code>Python3.10+</code></a> 环境</li></ol><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">git</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> clone</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/LiteyukiStudio/LiteyukiBot</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --depth=1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 若你不能访问Github,可以使用Liteyuki镜像:https://git.liteyuki.icu/bot/app</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 切换到Bot目录下</span></span>
|
||||
@ -15,4 +15,4 @@ import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const c
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pip</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -r</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> requirements.txt</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 启动Bot</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">python</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> main.py</span></span></code></pre></div><h2 id="使用docker构建" tabindex="-1"><strong>使用Docker构建</strong> <a class="header-anchor" href="#使用docker构建" aria-label="Permalink to "**使用Docker构建**""></a></h2><ol><li>安装 <a href="https://docs.docker.com/get-docker/" target="_blank" rel="noreferrer"><code>Docker</code></a></li><li>克隆项目 <code>git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1</code></li><li>进入轻雪目录 <code>cd LiteyukiBot</code></li><li>构建镜像 <code>docker build -t liteyukibot .</code></li><li>启动容器 <code>docker run -p 20216:20216 -v $(pwd):/liteyukibot -v $(pwd)/.cache:/root/.cache liteyukibot</code></li></ol><div class="tip custom-block github-alert"><p class="custom-block-title">TIP</p><p>Windows请使用项目绝对目录<code>/path/to/LiteyukiBot</code>代替<code>$(pwd)</code> <br> 若你修改了端口号请将<code>20216:20216</code>中的<code>20216</code>替换为你的端口号</p></div><h2 id="装置要求" tabindex="-1"><strong>装置要求</strong> <a class="header-anchor" href="#装置要求" aria-label="Permalink to "**装置要求**""></a></h2><ul><li>Windows系统版本最低<code>Windows10+</code>/<code>Windows Server 2019+</code></li><li>Linux系统要支持Python3.10+,推荐<code>Ubuntu 20.04+</code>(<s>别用你那b CentOS</s>)</li><li>CPU: 至少<code>1vCPU</code></li><li>内存: Bot无其他插件会占用<code>300~500MB</code>,包括<code>chromium</code> 及 <code>node</code>等进程,其他插件占用视具体插件而定,建议<code>1GB</code>以上</li><li>硬盘: 至少<code>1GB</code>空间</li></ul><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>如果装置上有多个环境,请使用<code>path/to/python -m pip install -r requirements.txt</code>来安装依赖,<code>path/to/python</code> 为你的Python可执行文件路径</p></div><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>轻雪的更新功能依赖Git,如果你没有安装Git直接下载源代码运行,你将无法使用更新功能</p></div><h4 id="其他问题请移步至答疑" tabindex="-1">其他问题请移步至<a href="./fandq.html">答疑</a> <a class="header-anchor" href="#其他问题请移步至答疑" aria-label="Permalink to "其他问题请移步至[答疑](./fandq)""></a></h4>`,12)]))}const g=i(n,[["render",l]]);export{c as __pageData,g as default};
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">python</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> main.py</span></span></code></pre></div><h2 id="使用docker构建" tabindex="-1"><strong>使用Docker构建</strong> <a class="header-anchor" href="#使用docker构建" aria-label="Permalink to "**使用Docker构建**""></a></h2><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> pull</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> git.liteyuki.icu/bot/app:latest</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 每夜版镜像</span></span></code></pre></div><div class="tip custom-block github-alert"><p class="custom-block-title">TIP</p><p>Windows请使用项目绝对目录<code>/path/to/LiteyukiBot</code>代替<code>$(pwd)</code> <br> 若你修改了端口号请将<code>20216:20216</code>中的<code>20216</code>替换为你的端口号</p></div><h2 id="装置要求" tabindex="-1"><strong>装置要求</strong> <a class="header-anchor" href="#装置要求" aria-label="Permalink to "**装置要求**""></a></h2><ul><li>Windows系统版本最低<code>Windows10+</code>/<code>Windows Server 2019+</code></li><li>Linux系统要支持Python3.10+,推荐<code>Ubuntu 20.04+</code>(<s>别用你那b CentOS</s>)</li><li>CPU: 至少<code>1vCPU</code></li><li>内存: Bot无其他插件会占用<code>300~500MB</code>,包括<code>chromium</code> 及 <code>node</code>等进程,其他插件占用视具体插件而定,建议<code>1GB</code>以上</li><li>硬盘: 至少<code>1GB</code>空间</li></ul><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>如果装置上有多个环境,请使用<code>path/to/python -m pip install -r requirements.txt</code>来安装依赖,<code>path/to/python</code> 为你的Python可执行文件路径</p></div><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>轻雪的更新功能依赖Git,如果你没有安装Git直接下载源代码运行,你将无法使用更新功能</p></div><h4 id="其他问题请移步至答疑" tabindex="-1">其他问题请移步至<a href="./fandq.html">答疑</a> <a class="header-anchor" href="#其他问题请移步至答疑" aria-label="Permalink to "其他问题请移步至[答疑](./fandq)""></a></h4>`,12)]))}const g=i(e,[["render",l]]);export{c as __pageData,g as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"安装","description":"","frontmatter":{"title":"安装","order":1},"headers":[],"relativePath":"deploy/install.md","filePath":"zh/deploy/install.md","lastUpdated":1731167537000}'),n={name:"deploy/install.md"};function l(o,s,h,p,d,k){return e(),a("div",null,s[0]||(s[0]=[t(`<h1 id="安装" tabindex="-1">安装 <a class="header-anchor" href="#安装" aria-label="Permalink to "安装""></a></h1><h2 id="常规部署" tabindex="-1"><strong>常规部署</strong> <a class="header-anchor" href="#常规部署" aria-label="Permalink to "**常规部署**""></a></h2><ol><li>安装 <a href="https://git-scm.com/download/" target="_blank" rel="noreferrer"><code>Git</code></a> 和 <a href="https://www.python.org/downloads/release/python-31010/" target="_blank" rel="noreferrer"><code>Python3.10+</code></a> 环境</li></ol><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"安装","description":"","frontmatter":{"title":"安装","order":1},"headers":[],"relativePath":"deploy/install.md","filePath":"zh/deploy/install.md","lastUpdated":1731694626000}'),e={name:"deploy/install.md"};function l(h,s,p,o,d,k){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="安装" tabindex="-1">安装 <a class="header-anchor" href="#安装" aria-label="Permalink to "安装""></a></h1><h2 id="常规部署" tabindex="-1"><strong>常规部署</strong> <a class="header-anchor" href="#常规部署" aria-label="Permalink to "**常规部署**""></a></h2><ol><li>安装 <a href="https://git-scm.com/download/" target="_blank" rel="noreferrer"><code>Git</code></a> 和 <a href="https://www.python.org/downloads/release/python-31010/" target="_blank" rel="noreferrer"><code>Python3.10+</code></a> 环境</li></ol><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 克隆项目到本地,轻雪使用Git进行版本管理,该步骤为必要项</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">git</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> clone</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> https://github.com/LiteyukiStudio/LiteyukiBot</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> --depth=1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 若你不能访问Github,可以使用Liteyuki镜像:https://git.liteyuki.icu/bot/app</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 切换到Bot目录下</span></span>
|
||||
@ -15,4 +15,4 @@ import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const c
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">pip</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> install</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> -r</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> requirements.txt</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 启动Bot</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">python</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> main.py</span></span></code></pre></div><h2 id="使用docker构建" tabindex="-1"><strong>使用Docker构建</strong> <a class="header-anchor" href="#使用docker构建" aria-label="Permalink to "**使用Docker构建**""></a></h2><ol><li>安装 <a href="https://docs.docker.com/get-docker/" target="_blank" rel="noreferrer"><code>Docker</code></a></li><li>克隆项目 <code>git clone https://github.com/LiteyukiStudio/LiteyukiBot --depth=1</code></li><li>进入轻雪目录 <code>cd LiteyukiBot</code></li><li>构建镜像 <code>docker build -t liteyukibot .</code></li><li>启动容器 <code>docker run -p 20216:20216 -v $(pwd):/liteyukibot -v $(pwd)/.cache:/root/.cache liteyukibot</code></li></ol><div class="tip custom-block github-alert"><p class="custom-block-title">TIP</p><p>Windows请使用项目绝对目录<code>/path/to/LiteyukiBot</code>代替<code>$(pwd)</code> <br> 若你修改了端口号请将<code>20216:20216</code>中的<code>20216</code>替换为你的端口号</p></div><h2 id="装置要求" tabindex="-1"><strong>装置要求</strong> <a class="header-anchor" href="#装置要求" aria-label="Permalink to "**装置要求**""></a></h2><ul><li>Windows系统版本最低<code>Windows10+</code>/<code>Windows Server 2019+</code></li><li>Linux系统要支持Python3.10+,推荐<code>Ubuntu 20.04+</code>(<s>别用你那b CentOS</s>)</li><li>CPU: 至少<code>1vCPU</code></li><li>内存: Bot无其他插件会占用<code>300~500MB</code>,包括<code>chromium</code> 及 <code>node</code>等进程,其他插件占用视具体插件而定,建议<code>1GB</code>以上</li><li>硬盘: 至少<code>1GB</code>空间</li></ul><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>如果装置上有多个环境,请使用<code>path/to/python -m pip install -r requirements.txt</code>来安装依赖,<code>path/to/python</code> 为你的Python可执行文件路径</p></div><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>轻雪的更新功能依赖Git,如果你没有安装Git直接下载源代码运行,你将无法使用更新功能</p></div><h4 id="其他问题请移步至答疑" tabindex="-1">其他问题请移步至<a href="./fandq.html">答疑</a> <a class="header-anchor" href="#其他问题请移步至答疑" aria-label="Permalink to "其他问题请移步至[答疑](./fandq)""></a></h4>`,12)]))}const g=i(n,[["render",l]]);export{c as __pageData,g as default};
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">python</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> main.py</span></span></code></pre></div><h2 id="使用docker构建" tabindex="-1"><strong>使用Docker构建</strong> <a class="header-anchor" href="#使用docker构建" aria-label="Permalink to "**使用Docker构建**""></a></h2><div class="language-bash vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">bash</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">docker</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> pull</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> git.liteyuki.icu/bot/app:latest</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 每夜版镜像</span></span></code></pre></div><div class="tip custom-block github-alert"><p class="custom-block-title">TIP</p><p>Windows请使用项目绝对目录<code>/path/to/LiteyukiBot</code>代替<code>$(pwd)</code> <br> 若你修改了端口号请将<code>20216:20216</code>中的<code>20216</code>替换为你的端口号</p></div><h2 id="装置要求" tabindex="-1"><strong>装置要求</strong> <a class="header-anchor" href="#装置要求" aria-label="Permalink to "**装置要求**""></a></h2><ul><li>Windows系统版本最低<code>Windows10+</code>/<code>Windows Server 2019+</code></li><li>Linux系统要支持Python3.10+,推荐<code>Ubuntu 20.04+</code>(<s>别用你那b CentOS</s>)</li><li>CPU: 至少<code>1vCPU</code></li><li>内存: Bot无其他插件会占用<code>300~500MB</code>,包括<code>chromium</code> 及 <code>node</code>等进程,其他插件占用视具体插件而定,建议<code>1GB</code>以上</li><li>硬盘: 至少<code>1GB</code>空间</li></ul><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>如果装置上有多个环境,请使用<code>path/to/python -m pip install -r requirements.txt</code>来安装依赖,<code>path/to/python</code> 为你的Python可执行文件路径</p></div><div class="warning custom-block github-alert"><p class="custom-block-title">WARNING</p><p>轻雪的更新功能依赖Git,如果你没有安装Git直接下载源代码运行,你将无法使用更新功能</p></div><h4 id="其他问题请移步至答疑" tabindex="-1">其他问题请移步至<a href="./fandq.html">答疑</a> <a class="header-anchor" href="#其他问题请移步至答疑" aria-label="Permalink to "其他问题请移步至[答疑](./fandq)""></a></h4>`,12)]))}const g=i(e,[["render",l]]);export{c as __pageData,g as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.bot","description":"","frontmatter":{"title":"liteyuki.bot","collapsed":true},"headers":[],"relativePath":"dev/api/bot/index.md","filePath":"zh/dev/api/bot/index.md","lastUpdated":null}'),e={name:"dev/api/bot/index.md"};function l(h,s,p,k,r,o){return n(),a("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-bot" tabindex="-1"><strong>模块</strong> <code>liteyuki.bot</code> <a class="header-anchor" href="#模块-liteyuki-bot" aria-label="Permalink to "**模块** \`liteyuki.bot\`""></a></h1><h3 id="class-liteyukibot" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiBot</code> <a class="header-anchor" href="#class-liteyukibot" aria-label="Permalink to "***class*** \`LiteyukiBot\`""></a></h3><hr><h4 id="func-init-self-kwargs-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, **kwargs) -> None</code> <a class="header-anchor" href="#func-init-self-kwargs-none" aria-label="Permalink to "***func*** \`__init__(self, **kwargs) -> None\`""></a></h4><p><strong>说明</strong>: 初始化轻雪实例</p><p><strong>参数</strong>:</p><blockquote><ul><li>**kwargs: 配置</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/bot/__init__.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">kwargs) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.bot","description":"","frontmatter":{"title":"liteyuki.bot","collapsed":true},"headers":[],"relativePath":"dev/api/bot/index.md","filePath":"zh/dev/api/bot/index.md","lastUpdated":null}'),e={name:"dev/api/bot/index.md"};function l(h,s,p,k,r,o){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-bot" tabindex="-1"><strong>模块</strong> <code>liteyuki.bot</code> <a class="header-anchor" href="#模块-liteyuki-bot" aria-label="Permalink to "**模块** \`liteyuki.bot\`""></a></h1><h3 id="class-liteyukibot" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiBot</code> <a class="header-anchor" href="#class-liteyukibot" aria-label="Permalink to "***class*** \`LiteyukiBot\`""></a></h3><hr><h4 id="func-init-self-kwargs-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, **kwargs) -> None</code> <a class="header-anchor" href="#func-init-self-kwargs-none" aria-label="Permalink to "***func*** \`__init__(self, **kwargs) -> None\`""></a></h4><p><strong>说明</strong>: 初始化轻雪实例</p><p><strong>参数</strong>:</p><blockquote><ul><li>**kwargs: 配置</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/bot/__init__.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">kwargs) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """总通道"""</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.i_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Chan[Any]()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.o_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Chan[Any]()</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.bot","description":"","frontmatter":{"title":"liteyuki.bot","collapsed":true},"headers":[],"relativePath":"dev/api/bot/index.md","filePath":"zh/dev/api/bot/index.md","lastUpdated":null}'),e={name:"dev/api/bot/index.md"};function l(h,s,p,k,r,o){return n(),a("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-bot" tabindex="-1"><strong>模块</strong> <code>liteyuki.bot</code> <a class="header-anchor" href="#模块-liteyuki-bot" aria-label="Permalink to "**模块** \`liteyuki.bot\`""></a></h1><h3 id="class-liteyukibot" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiBot</code> <a class="header-anchor" href="#class-liteyukibot" aria-label="Permalink to "***class*** \`LiteyukiBot\`""></a></h3><hr><h4 id="func-init-self-kwargs-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, **kwargs) -> None</code> <a class="header-anchor" href="#func-init-self-kwargs-none" aria-label="Permalink to "***func*** \`__init__(self, **kwargs) -> None\`""></a></h4><p><strong>说明</strong>: 初始化轻雪实例</p><p><strong>参数</strong>:</p><blockquote><ul><li>**kwargs: 配置</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/bot/__init__.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">kwargs) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.bot","description":"","frontmatter":{"title":"liteyuki.bot","collapsed":true},"headers":[],"relativePath":"dev/api/bot/index.md","filePath":"zh/dev/api/bot/index.md","lastUpdated":null}'),e={name:"dev/api/bot/index.md"};function l(h,s,p,k,r,o){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-bot" tabindex="-1"><strong>模块</strong> <code>liteyuki.bot</code> <a class="header-anchor" href="#模块-liteyuki-bot" aria-label="Permalink to "**模块** \`liteyuki.bot\`""></a></h1><h3 id="class-liteyukibot" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiBot</code> <a class="header-anchor" href="#class-liteyukibot" aria-label="Permalink to "***class*** \`LiteyukiBot\`""></a></h3><hr><h4 id="func-init-self-kwargs-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, **kwargs) -> None</code> <a class="header-anchor" href="#func-init-self-kwargs-none" aria-label="Permalink to "***func*** \`__init__(self, **kwargs) -> None\`""></a></h4><p><strong>说明</strong>: 初始化轻雪实例</p><p><strong>参数</strong>:</p><blockquote><ul><li>**kwargs: 配置</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/bot/__init__.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">**</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">kwargs) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> """总通道"""</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.i_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Chan[Any]()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.o_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Chan[Any]()</span></span>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as e}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.comm.channel","description":"","frontmatter":{"title":"liteyuki.comm.channel"},"headers":[],"relativePath":"dev/api/comm/channel.md","filePath":"zh/dev/api/comm/channel.md","lastUpdated":null}'),l={name:"dev/api/comm/channel.md"};function t(h,s,k,p,r,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-comm-channel" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.channel</code> <a class="header-anchor" href="#模块-liteyuki-comm-channel" aria-label="Permalink to "**模块** \`liteyuki.comm.channel\`""></a></h1><p>本模块定义了一个通用的通道类,用于进程间通信</p><h3 id="var-sync-on-receive-func" tabindex="-1">var <code>SYNC_ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-sync-on-receive-func" aria-label="Permalink to "var \`SYNC_ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Any]</code></p></li></ul><h3 id="var-on-receive-func" tabindex="-1">var <code>ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-on-receive-func" aria-label="Permalink to "var \`ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_ON_RECEIVE_FUNC | ASYNC_ON_RECEIVE_FUNC</code></p></li></ul><h3 id="var-sync-filter-func" tabindex="-1">var <code>SYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-sync-filter-func" aria-label="Permalink to "var \`SYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], bool]</code></p></li></ul><h3 id="var-async-filter-func" tabindex="-1">var <code>ASYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-async-filter-func" aria-label="Permalink to "var \`ASYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 异步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Coroutine[Any, Any, bool]]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC</code></p></li></ul><h3 id="class-channel-generic-t" tabindex="-1"><em><strong>class</strong></em> <code>Channel(Generic[T])</code> <a class="header-anchor" href="#class-channel-generic-t" aria-label="Permalink to "***class*** \`Channel(Generic[T])\`""></a></h3><hr><h4 id="func-init-self-name-str-type-check-optional-bool-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, type_check: Optional[bool] = None)</code> <a class="header-anchor" href="#func-init-self-name-str-type-check-optional-bool-none" aria-label="Permalink to "***func*** \`__init__(self, name: str, type_check: Optional[bool] = None)\`""></a></h4><p><strong>说明</strong>: 初始化通道</p><p><strong>参数</strong>:</p><blockquote><ul><li>name: 通道ID</li><li>type_check: 是否开启类型检查, 若为空,则传入泛型默认开启,否则默认关闭</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/channel.py#L44" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, type_check: Optional[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as e}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.comm.channel","description":"","frontmatter":{"title":"liteyuki.comm.channel"},"headers":[],"relativePath":"dev/api/comm/channel.md","filePath":"zh/dev/api/comm/channel.md","lastUpdated":null}'),l={name:"dev/api/comm/channel.md"};function t(h,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-comm-channel" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.channel</code> <a class="header-anchor" href="#模块-liteyuki-comm-channel" aria-label="Permalink to "**模块** \`liteyuki.comm.channel\`""></a></h1><p>本模块定义了一个通用的通道类,用于进程间通信</p><h3 id="var-sync-on-receive-func" tabindex="-1">var <code>SYNC_ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-sync-on-receive-func" aria-label="Permalink to "var \`SYNC_ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Any]</code></p></li></ul><h3 id="var-on-receive-func" tabindex="-1">var <code>ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-on-receive-func" aria-label="Permalink to "var \`ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_ON_RECEIVE_FUNC | ASYNC_ON_RECEIVE_FUNC</code></p></li></ul><h3 id="var-sync-filter-func" tabindex="-1">var <code>SYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-sync-filter-func" aria-label="Permalink to "var \`SYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], bool]</code></p></li></ul><h3 id="var-async-filter-func" tabindex="-1">var <code>ASYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-async-filter-func" aria-label="Permalink to "var \`ASYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 异步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Coroutine[Any, Any, bool]]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC</code></p></li></ul><h3 id="class-channel-generic-t" tabindex="-1"><em><strong>class</strong></em> <code>Channel(Generic[T])</code> <a class="header-anchor" href="#class-channel-generic-t" aria-label="Permalink to "***class*** \`Channel(Generic[T])\`""></a></h3><hr><h4 id="func-init-self-name-str-type-check-optional-bool-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, type_check: Optional[bool] = None)</code> <a class="header-anchor" href="#func-init-self-name-str-type-check-optional-bool-none" aria-label="Permalink to "***func*** \`__init__(self, name: str, type_check: Optional[bool] = None)\`""></a></h4><p><strong>说明</strong>: 初始化通道</p><p><strong>参数</strong>:</p><blockquote><ul><li>name: 通道ID</li><li>type_check: 是否开启类型检查, 若为空,则传入泛型默认开启,否则默认关闭</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/channel.py#L44" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, type_check: Optional[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.conn_send, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.conn_recv </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pipe()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._conn_send_inner, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._conn_recv_inner </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pipe()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._closed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> False</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as e}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.comm.channel","description":"","frontmatter":{"title":"liteyuki.comm.channel"},"headers":[],"relativePath":"dev/api/comm/channel.md","filePath":"zh/dev/api/comm/channel.md","lastUpdated":null}'),l={name:"dev/api/comm/channel.md"};function t(h,s,k,p,r,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-comm-channel" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.channel</code> <a class="header-anchor" href="#模块-liteyuki-comm-channel" aria-label="Permalink to "**模块** \`liteyuki.comm.channel\`""></a></h1><p>本模块定义了一个通用的通道类,用于进程间通信</p><h3 id="var-sync-on-receive-func" tabindex="-1">var <code>SYNC_ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-sync-on-receive-func" aria-label="Permalink to "var \`SYNC_ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Any]</code></p></li></ul><h3 id="var-on-receive-func" tabindex="-1">var <code>ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-on-receive-func" aria-label="Permalink to "var \`ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_ON_RECEIVE_FUNC | ASYNC_ON_RECEIVE_FUNC</code></p></li></ul><h3 id="var-sync-filter-func" tabindex="-1">var <code>SYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-sync-filter-func" aria-label="Permalink to "var \`SYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], bool]</code></p></li></ul><h3 id="var-async-filter-func" tabindex="-1">var <code>ASYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-async-filter-func" aria-label="Permalink to "var \`ASYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 异步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Coroutine[Any, Any, bool]]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC</code></p></li></ul><h3 id="class-channel-generic-t" tabindex="-1"><em><strong>class</strong></em> <code>Channel(Generic[T])</code> <a class="header-anchor" href="#class-channel-generic-t" aria-label="Permalink to "***class*** \`Channel(Generic[T])\`""></a></h3><hr><h4 id="func-init-self-name-str-type-check-optional-bool-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, type_check: Optional[bool] = None)</code> <a class="header-anchor" href="#func-init-self-name-str-type-check-optional-bool-none" aria-label="Permalink to "***func*** \`__init__(self, name: str, type_check: Optional[bool] = None)\`""></a></h4><p><strong>说明</strong>: 初始化通道</p><p><strong>参数</strong>:</p><blockquote><ul><li>name: 通道ID</li><li>type_check: 是否开启类型检查, 若为空,则传入泛型默认开启,否则默认关闭</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/channel.py#L44" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, type_check: Optional[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as e}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.comm.channel","description":"","frontmatter":{"title":"liteyuki.comm.channel"},"headers":[],"relativePath":"dev/api/comm/channel.md","filePath":"zh/dev/api/comm/channel.md","lastUpdated":null}'),l={name:"dev/api/comm/channel.md"};function t(h,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-comm-channel" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.channel</code> <a class="header-anchor" href="#模块-liteyuki-comm-channel" aria-label="Permalink to "**模块** \`liteyuki.comm.channel\`""></a></h1><p>本模块定义了一个通用的通道类,用于进程间通信</p><h3 id="var-sync-on-receive-func" tabindex="-1">var <code>SYNC_ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-sync-on-receive-func" aria-label="Permalink to "var \`SYNC_ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Any]</code></p></li></ul><h3 id="var-on-receive-func" tabindex="-1">var <code>ON_RECEIVE_FUNC</code> <a class="header-anchor" href="#var-on-receive-func" aria-label="Permalink to "var \`ON_RECEIVE_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 接收函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_ON_RECEIVE_FUNC | ASYNC_ON_RECEIVE_FUNC</code></p></li></ul><h3 id="var-sync-filter-func" tabindex="-1">var <code>SYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-sync-filter-func" aria-label="Permalink to "var \`SYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 同步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], bool]</code></p></li></ul><h3 id="var-async-filter-func" tabindex="-1">var <code>ASYNC_FILTER_FUNC</code> <a class="header-anchor" href="#var-async-filter-func" aria-label="Permalink to "var \`ASYNC_FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 异步过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[T], Coroutine[Any, Any, bool]]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 过滤函数</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>SYNC_FILTER_FUNC | ASYNC_FILTER_FUNC</code></p></li></ul><h3 id="class-channel-generic-t" tabindex="-1"><em><strong>class</strong></em> <code>Channel(Generic[T])</code> <a class="header-anchor" href="#class-channel-generic-t" aria-label="Permalink to "***class*** \`Channel(Generic[T])\`""></a></h3><hr><h4 id="func-init-self-name-str-type-check-optional-bool-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, type_check: Optional[bool] = None)</code> <a class="header-anchor" href="#func-init-self-name-str-type-check-optional-bool-none" aria-label="Permalink to "***func*** \`__init__(self, name: str, type_check: Optional[bool] = None)\`""></a></h4><p><strong>说明</strong>: 初始化通道</p><p><strong>参数</strong>:</p><blockquote><ul><li>name: 通道ID</li><li>type_check: 是否开启类型检查, 若为空,则传入泛型默认开启,否则默认关闭</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/channel.py#L44" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, type_check: Optional[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.conn_send, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.conn_recv </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pipe()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._conn_send_inner, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._conn_recv_inner </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Pipe()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._closed </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> False</span></span>
|
@ -1 +1 @@
|
||||
import{_ as s,c as t,a7 as i,o as e}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.comm.event","description":"","frontmatter":{"title":"liteyuki.comm.event"},"headers":[],"relativePath":"dev/api/comm/event.md","filePath":"zh/dev/api/comm/event.md","lastUpdated":null}'),n={name:"dev/api/comm/event.md"};function l(h,a,r,d,p,o){return e(),t("div",null,a[0]||(a[0]=[i('<h1 id="模块-liteyuki-comm-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.event</code> <a class="header-anchor" href="#模块-liteyuki-comm-event" aria-label="Permalink to "**模块** `liteyuki.comm.event`""></a></h1><p>本模块用于轻雪主进程和子进程之间的通信的事件类</p><h3 id="class-event" tabindex="-1"><em><strong>class</strong></em> <code>Event</code> <a class="header-anchor" href="#class-event" aria-label="Permalink to "***class*** `Event`""></a></h3><hr><h4 id="func-init-self-name-str-data-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, data: dict[str, Any])</code> <a class="header-anchor" href="#func-init-self-name-str-data-dict-str-any" aria-label="Permalink to "***func*** `__init__(self, name: str, data: dict[str, Any])`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/event.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]):</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> name</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data</span></span></code></pre></div></details>',6)]))}const m=s(n,[["render",l]]);export{c as __pageData,m as default};
|
||||
import{_ as s,o as t,c as i,a7 as e}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.comm.event","description":"","frontmatter":{"title":"liteyuki.comm.event"},"headers":[],"relativePath":"dev/api/comm/event.md","filePath":"zh/dev/api/comm/event.md","lastUpdated":null}'),n={name:"dev/api/comm/event.md"};function l(h,a,r,d,p,o){return t(),i("div",null,a[0]||(a[0]=[e('<h1 id="模块-liteyuki-comm-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.event</code> <a class="header-anchor" href="#模块-liteyuki-comm-event" aria-label="Permalink to "**模块** `liteyuki.comm.event`""></a></h1><p>本模块用于轻雪主进程和子进程之间的通信的事件类</p><h3 id="class-event" tabindex="-1"><em><strong>class</strong></em> <code>Event</code> <a class="header-anchor" href="#class-event" aria-label="Permalink to "***class*** `Event`""></a></h3><hr><h4 id="func-init-self-name-str-data-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, data: dict[str, Any])</code> <a class="header-anchor" href="#func-init-self-name-str-data-dict-str-any" aria-label="Permalink to "***func*** `__init__(self, name: str, data: dict[str, Any])`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/event.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]):</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> name</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data</span></span></code></pre></div></details>',6)]))}const m=s(n,[["render",l]]);export{c as __pageData,m as default};
|
@ -1 +1 @@
|
||||
import{_ as s,c as t,a7 as i,o as e}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.comm.event","description":"","frontmatter":{"title":"liteyuki.comm.event"},"headers":[],"relativePath":"dev/api/comm/event.md","filePath":"zh/dev/api/comm/event.md","lastUpdated":null}'),n={name:"dev/api/comm/event.md"};function l(h,a,r,d,p,o){return e(),t("div",null,a[0]||(a[0]=[i('<h1 id="模块-liteyuki-comm-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.event</code> <a class="header-anchor" href="#模块-liteyuki-comm-event" aria-label="Permalink to "**模块** `liteyuki.comm.event`""></a></h1><p>本模块用于轻雪主进程和子进程之间的通信的事件类</p><h3 id="class-event" tabindex="-1"><em><strong>class</strong></em> <code>Event</code> <a class="header-anchor" href="#class-event" aria-label="Permalink to "***class*** `Event`""></a></h3><hr><h4 id="func-init-self-name-str-data-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, data: dict[str, Any])</code> <a class="header-anchor" href="#func-init-self-name-str-data-dict-str-any" aria-label="Permalink to "***func*** `__init__(self, name: str, data: dict[str, Any])`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/event.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]):</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> name</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data</span></span></code></pre></div></details>',6)]))}const m=s(n,[["render",l]]);export{c as __pageData,m as default};
|
||||
import{_ as s,o as t,c as i,a7 as e}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.comm.event","description":"","frontmatter":{"title":"liteyuki.comm.event"},"headers":[],"relativePath":"dev/api/comm/event.md","filePath":"zh/dev/api/comm/event.md","lastUpdated":null}'),n={name:"dev/api/comm/event.md"};function l(h,a,r,d,p,o){return t(),i("div",null,a[0]||(a[0]=[e('<h1 id="模块-liteyuki-comm-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.event</code> <a class="header-anchor" href="#模块-liteyuki-comm-event" aria-label="Permalink to "**模块** `liteyuki.comm.event`""></a></h1><p>本模块用于轻雪主进程和子进程之间的通信的事件类</p><h3 id="class-event" tabindex="-1"><em><strong>class</strong></em> <code>Event</code> <a class="header-anchor" href="#class-event" aria-label="Permalink to "***class*** `Event`""></a></h3><hr><h4 id="func-init-self-name-str-data-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, name: str, data: dict[str, Any])</code> <a class="header-anchor" href="#func-init-self-name-str-data-dict-str-any" aria-label="Permalink to "***func*** `__init__(self, name: str, data: dict[str, Any])`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/event.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]):</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.name </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> name</span></span>\n<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data</span></span></code></pre></div></details>',6)]))}const m=s(n,[["render",l]]);export{c as __pageData,m as default};
|
@ -1 +1 @@
|
||||
import{_ as o,c as i,j as e,a,o as n}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki.comm","description":"","frontmatter":{"title":"liteyuki.comm","collapsed":true},"headers":[],"relativePath":"dev/api/comm/index.md","filePath":"zh/dev/api/comm/index.md","lastUpdated":null}'),l={name:"dev/api/comm/index.md"};function r(c,t,m,d,s,p){return n(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-comm",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.comm"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-comm","aria-label":'Permalink to "**模块** `liteyuki.comm`"'},"")],-1),e("p",null,"该模块用于轻雪主进程和Nonebot子进程之间的通信 依赖关系 event -> _ storage -> channel_ rpc -> channel_, storage",-1)]))}const f=o(l,[["render",r]]);export{_ as __pageData,f as default};
|
||||
import{_ as o,o as i,c as n,j as e,a}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki.comm","description":"","frontmatter":{"title":"liteyuki.comm","collapsed":true},"headers":[],"relativePath":"dev/api/comm/index.md","filePath":"zh/dev/api/comm/index.md","lastUpdated":null}'),l={name:"dev/api/comm/index.md"};function r(c,t,m,d,s,p){return i(),n("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-comm",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.comm"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-comm","aria-label":'Permalink to "**模块** `liteyuki.comm`"'},"")],-1),e("p",null,"该模块用于轻雪主进程和Nonebot子进程之间的通信 依赖关系 event -> _ storage -> channel_ rpc -> channel_, storage",-1)]))}const f=o(l,[["render",r]]);export{_ as __pageData,f as default};
|
@ -1 +1 @@
|
||||
import{_ as o,c as i,j as e,a,o as n}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki.comm","description":"","frontmatter":{"title":"liteyuki.comm","collapsed":true},"headers":[],"relativePath":"dev/api/comm/index.md","filePath":"zh/dev/api/comm/index.md","lastUpdated":null}'),l={name:"dev/api/comm/index.md"};function r(c,t,m,d,s,p){return n(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-comm",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.comm"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-comm","aria-label":'Permalink to "**模块** `liteyuki.comm`"'},"")],-1),e("p",null,"该模块用于轻雪主进程和Nonebot子进程之间的通信 依赖关系 event -> _ storage -> channel_ rpc -> channel_, storage",-1)]))}const f=o(l,[["render",r]]);export{_ as __pageData,f as default};
|
||||
import{_ as o,o as i,c as n,j as e,a}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki.comm","description":"","frontmatter":{"title":"liteyuki.comm","collapsed":true},"headers":[],"relativePath":"dev/api/comm/index.md","filePath":"zh/dev/api/comm/index.md","lastUpdated":null}'),l={name:"dev/api/comm/index.md"};function r(c,t,m,d,s,p){return i(),n("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-comm",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.comm"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-comm","aria-label":'Permalink to "**模块** `liteyuki.comm`"'},"")],-1),e("p",null,"该模块用于轻雪主进程和Nonebot子进程之间的通信 依赖关系 event -> _ storage -> channel_ rpc -> channel_, storage",-1)]))}const f=o(l,[["render",r]]);export{_ as __pageData,f as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.comm.storage","description":"","frontmatter":{"title":"liteyuki.comm.storage"},"headers":[],"relativePath":"dev/api/comm/storage.md","filePath":"zh/dev/api/comm/storage.md","lastUpdated":null}'),e={name:"dev/api/comm/storage.md"};function h(l,s,k,p,r,d){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-comm-storage" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.storage</code> <a class="header-anchor" href="#模块-liteyuki-comm-storage" aria-label="Permalink to "**模块** \`liteyuki.comm.storage\`""></a></h1><p>共享内存模块。类似于redis,但是更加轻量级并且线程安全</p><h3 id="var-on-main-subscriber-receive-funcs" tabindex="-1">var <code>_on_main_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-main-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_main_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 主进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="var-on-sub-subscriber-receive-funcs" tabindex="-1">var <code>_on_sub_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-sub-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_sub_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 子进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="class-keyvaluestore" tabindex="-1"><em><strong>class</strong></em> <code>KeyValueStore</code> <a class="header-anchor" href="#class-keyvaluestore" aria-label="Permalink to "***class*** \`KeyValueStore\`""></a></h3><hr><h4 id="func-init-self" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self)</code> <a class="header-anchor" href="#func-init-self" aria-label="Permalink to "***func*** \`__init__(self)\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/storage.py#L35" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.comm.storage","description":"","frontmatter":{"title":"liteyuki.comm.storage"},"headers":[],"relativePath":"dev/api/comm/storage.md","filePath":"zh/dev/api/comm/storage.md","lastUpdated":null}'),e={name:"dev/api/comm/storage.md"};function h(l,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-comm-storage" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.storage</code> <a class="header-anchor" href="#模块-liteyuki-comm-storage" aria-label="Permalink to "**模块** \`liteyuki.comm.storage\`""></a></h1><p>共享内存模块。类似于redis,但是更加轻量级并且线程安全</p><h3 id="var-on-main-subscriber-receive-funcs" tabindex="-1">var <code>_on_main_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-main-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_main_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 主进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="var-on-sub-subscriber-receive-funcs" tabindex="-1">var <code>_on_sub_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-sub-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_sub_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 子进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="class-keyvaluestore" tabindex="-1"><em><strong>class</strong></em> <code>KeyValueStore</code> <a class="header-anchor" href="#class-keyvaluestore" aria-label="Permalink to "***class*** \`KeyValueStore\`""></a></h3><hr><h4 id="func-init-self" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self)</code> <a class="header-anchor" href="#func-init-self" aria-label="Permalink to "***func*** \`__init__(self)\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/storage.py#L35" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._store </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> {}</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.active_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]]](</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'shared_memory-active'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.passive_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]]](</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'shared_memory-passive'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.comm.storage","description":"","frontmatter":{"title":"liteyuki.comm.storage"},"headers":[],"relativePath":"dev/api/comm/storage.md","filePath":"zh/dev/api/comm/storage.md","lastUpdated":null}'),e={name:"dev/api/comm/storage.md"};function h(l,s,k,p,r,d){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-comm-storage" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.storage</code> <a class="header-anchor" href="#模块-liteyuki-comm-storage" aria-label="Permalink to "**模块** \`liteyuki.comm.storage\`""></a></h1><p>共享内存模块。类似于redis,但是更加轻量级并且线程安全</p><h3 id="var-on-main-subscriber-receive-funcs" tabindex="-1">var <code>_on_main_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-main-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_main_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 主进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="var-on-sub-subscriber-receive-funcs" tabindex="-1">var <code>_on_sub_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-sub-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_sub_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 子进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="class-keyvaluestore" tabindex="-1"><em><strong>class</strong></em> <code>KeyValueStore</code> <a class="header-anchor" href="#class-keyvaluestore" aria-label="Permalink to "***class*** \`KeyValueStore\`""></a></h3><hr><h4 id="func-init-self" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self)</code> <a class="header-anchor" href="#func-init-self" aria-label="Permalink to "***func*** \`__init__(self)\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/storage.py#L35" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.comm.storage","description":"","frontmatter":{"title":"liteyuki.comm.storage"},"headers":[],"relativePath":"dev/api/comm/storage.md","filePath":"zh/dev/api/comm/storage.md","lastUpdated":null}'),e={name:"dev/api/comm/storage.md"};function h(l,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-comm-storage" tabindex="-1"><strong>模块</strong> <code>liteyuki.comm.storage</code> <a class="header-anchor" href="#模块-liteyuki-comm-storage" aria-label="Permalink to "**模块** \`liteyuki.comm.storage\`""></a></h1><p>共享内存模块。类似于redis,但是更加轻量级并且线程安全</p><h3 id="var-on-main-subscriber-receive-funcs" tabindex="-1">var <code>_on_main_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-main-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_main_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 主进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="var-on-sub-subscriber-receive-funcs" tabindex="-1">var <code>_on_sub_subscriber_receive_funcs</code> <a class="header-anchor" href="#var-on-sub-subscriber-receive-funcs" aria-label="Permalink to "var \`_on_sub_subscriber_receive_funcs\`""></a></h3><ul><li><p><strong>说明</strong>: 子进程订阅者接收函数</p></li><li><p><strong>类型</strong>: <code>dict[str, list[ASYNC_ON_RECEIVE_FUNC]]</code></p></li><li><p><strong>默认值</strong>: <code>{}</code></p></li></ul><h3 id="class-keyvaluestore" tabindex="-1"><em><strong>class</strong></em> <code>KeyValueStore</code> <a class="header-anchor" href="#class-keyvaluestore" aria-label="Permalink to "***class*** \`KeyValueStore\`""></a></h3><hr><h4 id="func-init-self" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self)</code> <a class="header-anchor" href="#func-init-self" aria-label="Permalink to "***func*** \`__init__(self)\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/comm/storage.py#L35" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">._store </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> {}</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.active_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]]](</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'shared_memory-active'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.passive_chan </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]]](</span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">name</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'shared_memory-passive'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as a,c as n,a7 as s,j as t,o as h}from"./chunks/framework.jrU0lkHV.js";const o=JSON.parse('{"title":"liteyuki.config","description":"","frontmatter":{"title":"liteyuki.config"},"headers":[],"relativePath":"dev/api/config.md","filePath":"zh/dev/api/config.md","lastUpdated":null}'),l={name:"dev/api/config.md"};function k(p,i,e,r,d,g){return h(),n("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-config" tabindex="-1"><strong>模块</strong> <code>liteyuki.config</code> <a class="header-anchor" href="#模块-liteyuki-config" aria-label="Permalink to "**模块** `liteyuki.config`""></a></h1><p>该模块用于常用配置文件的加载 多配置文件编写原则:</p><ol><li>尽量不要冲突: 一个键不要多次出现</li><li>分工明确: 每个配置文件给一个或一类服务提供配置</li><li>扁平化编写: 配置文件尽量扁平化,不要出现过多的嵌套</li><li>注意冲突时的优先级: 项目目录下的配置文件优先级高于config目录下的配置文件</li><li>请不要将需要动态加载的内容写入配置文件,你应该使用其他储存方式</li></ol><hr><h3 id="func-flat-config-config-dict-str-any-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>flat_config(config: dict[str, Any]) -> dict[str, Any]</code> <a class="header-anchor" href="#func-flat-config-config-dict-str-any-dict-str-any" aria-label="Permalink to "***func*** `flat_config(config: dict[str, Any]) -> dict[str, Any]`""></a></h3><p><strong>说明</strong>: 扁平化配置文件</p>',6),t("p",{"a.b.c:":"",1:""},"{a:{b:{c:1}}} ->",-1),s(`<p><strong>参数</strong>:</p><blockquote><ul><li>config: 配置项目</li></ul></blockquote><p><strong>返回</strong>: 扁平化后的配置文件,但也包含原有的键值对</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/config.py#L24" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> flat_config</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(config: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]:</span></span>
|
||||
import{_ as a,o as n,c as t,a7 as s,j as h}from"./chunks/framework._avq4Ty7.js";const o=JSON.parse('{"title":"liteyuki.config","description":"","frontmatter":{"title":"liteyuki.config"},"headers":[],"relativePath":"dev/api/config.md","filePath":"zh/dev/api/config.md","lastUpdated":null}'),l={name:"dev/api/config.md"};function k(p,i,e,r,d,g){return n(),t("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-config" tabindex="-1"><strong>模块</strong> <code>liteyuki.config</code> <a class="header-anchor" href="#模块-liteyuki-config" aria-label="Permalink to "**模块** `liteyuki.config`""></a></h1><p>该模块用于常用配置文件的加载 多配置文件编写原则:</p><ol><li>尽量不要冲突: 一个键不要多次出现</li><li>分工明确: 每个配置文件给一个或一类服务提供配置</li><li>扁平化编写: 配置文件尽量扁平化,不要出现过多的嵌套</li><li>注意冲突时的优先级: 项目目录下的配置文件优先级高于config目录下的配置文件</li><li>请不要将需要动态加载的内容写入配置文件,你应该使用其他储存方式</li></ol><hr><h3 id="func-flat-config-config-dict-str-any-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>flat_config(config: dict[str, Any]) -> dict[str, Any]</code> <a class="header-anchor" href="#func-flat-config-config-dict-str-any-dict-str-any" aria-label="Permalink to "***func*** `flat_config(config: dict[str, Any]) -> dict[str, Any]`""></a></h3><p><strong>说明</strong>: 扁平化配置文件</p>',6),h("p",{"a.b.c:":"",1:""},"{a:{b:{c:1}}} ->",-1),s(`<p><strong>参数</strong>:</p><blockquote><ul><li>config: 配置项目</li></ul></blockquote><p><strong>返回</strong>: 扁平化后的配置文件,但也包含原有的键值对</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/config.py#L24" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> flat_config</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(config: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_config </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> copy.deepcopy(config)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> key, value </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> config.items():</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(value, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as a,c as n,a7 as s,j as t,o as h}from"./chunks/framework.jrU0lkHV.js";const o=JSON.parse('{"title":"liteyuki.config","description":"","frontmatter":{"title":"liteyuki.config"},"headers":[],"relativePath":"dev/api/config.md","filePath":"zh/dev/api/config.md","lastUpdated":null}'),l={name:"dev/api/config.md"};function k(p,i,e,r,d,g){return h(),n("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-config" tabindex="-1"><strong>模块</strong> <code>liteyuki.config</code> <a class="header-anchor" href="#模块-liteyuki-config" aria-label="Permalink to "**模块** `liteyuki.config`""></a></h1><p>该模块用于常用配置文件的加载 多配置文件编写原则:</p><ol><li>尽量不要冲突: 一个键不要多次出现</li><li>分工明确: 每个配置文件给一个或一类服务提供配置</li><li>扁平化编写: 配置文件尽量扁平化,不要出现过多的嵌套</li><li>注意冲突时的优先级: 项目目录下的配置文件优先级高于config目录下的配置文件</li><li>请不要将需要动态加载的内容写入配置文件,你应该使用其他储存方式</li></ol><hr><h3 id="func-flat-config-config-dict-str-any-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>flat_config(config: dict[str, Any]) -> dict[str, Any]</code> <a class="header-anchor" href="#func-flat-config-config-dict-str-any-dict-str-any" aria-label="Permalink to "***func*** `flat_config(config: dict[str, Any]) -> dict[str, Any]`""></a></h3><p><strong>说明</strong>: 扁平化配置文件</p>',6),t("p",{"a.b.c:":"",1:""},"{a:{b:{c:1}}} ->",-1),s(`<p><strong>参数</strong>:</p><blockquote><ul><li>config: 配置项目</li></ul></blockquote><p><strong>返回</strong>: 扁平化后的配置文件,但也包含原有的键值对</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/config.py#L24" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> flat_config</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(config: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]:</span></span>
|
||||
import{_ as a,o as n,c as t,a7 as s,j as h}from"./chunks/framework._avq4Ty7.js";const o=JSON.parse('{"title":"liteyuki.config","description":"","frontmatter":{"title":"liteyuki.config"},"headers":[],"relativePath":"dev/api/config.md","filePath":"zh/dev/api/config.md","lastUpdated":null}'),l={name:"dev/api/config.md"};function k(p,i,e,r,d,g){return n(),t("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-config" tabindex="-1"><strong>模块</strong> <code>liteyuki.config</code> <a class="header-anchor" href="#模块-liteyuki-config" aria-label="Permalink to "**模块** `liteyuki.config`""></a></h1><p>该模块用于常用配置文件的加载 多配置文件编写原则:</p><ol><li>尽量不要冲突: 一个键不要多次出现</li><li>分工明确: 每个配置文件给一个或一类服务提供配置</li><li>扁平化编写: 配置文件尽量扁平化,不要出现过多的嵌套</li><li>注意冲突时的优先级: 项目目录下的配置文件优先级高于config目录下的配置文件</li><li>请不要将需要动态加载的内容写入配置文件,你应该使用其他储存方式</li></ol><hr><h3 id="func-flat-config-config-dict-str-any-dict-str-any" tabindex="-1"><em><strong>func</strong></em> <code>flat_config(config: dict[str, Any]) -> dict[str, Any]</code> <a class="header-anchor" href="#func-flat-config-config-dict-str-any-dict-str-any" aria-label="Permalink to "***func*** `flat_config(config: dict[str, Any]) -> dict[str, Any]`""></a></h3><p><strong>说明</strong>: 扁平化配置文件</p>',6),h("p",{"a.b.c:":"",1:""},"{a:{b:{c:1}}} ->",-1),s(`<p><strong>参数</strong>:</p><blockquote><ul><li>config: 配置项目</li></ul></blockquote><p><strong>返回</strong>: 扁平化后的配置文件,但也包含原有的键值对</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/config.py#L24" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> flat_config</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(config: dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> new_config </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> copy.deepcopy(config)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> key, value </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> config.items():</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(value, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
@ -1 +0,0 @@
|
||||
import{_ as r,c as i,j as e,a,o}from"./chunks/framework.jrU0lkHV.js";const f=JSON.parse('{"title":"liteyuki.core","description":"","frontmatter":{"title":"liteyuki.core","collapsed":true},"headers":[],"relativePath":"dev/api/core/index.md","filePath":"zh/dev/api/core/index.md","lastUpdated":null}'),l={name:"dev/api/core/index.md"};function n(c,t,d,s,p,u){return o(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-core",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.core"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-core","aria-label":'Permalink to "**模块** `liteyuki.core`"'},"")],-1)]))}const k=r(l,[["render",n]]);export{f as __pageData,k as default};
|
@ -1 +0,0 @@
|
||||
import{_ as r,c as i,j as e,a,o}from"./chunks/framework.jrU0lkHV.js";const f=JSON.parse('{"title":"liteyuki.core","description":"","frontmatter":{"title":"liteyuki.core","collapsed":true},"headers":[],"relativePath":"dev/api/core/index.md","filePath":"zh/dev/api/core/index.md","lastUpdated":null}'),l={name:"dev/api/core/index.md"};function n(c,t,d,s,p,u){return o(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-core",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.core"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-core","aria-label":'Permalink to "**模块** `liteyuki.core`"'},"")],-1)]))}const k=r(l,[["render",n]]);export{f as __pageData,k as default};
|
1
assets/dev_api_core_index.md.C7-mYcFb.js
Normal file
1
assets/dev_api_core_index.md.C7-mYcFb.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as r,o as i,c as o,j as e,a}from"./chunks/framework._avq4Ty7.js";const f=JSON.parse('{"title":"liteyuki.core","description":"","frontmatter":{"title":"liteyuki.core","collapsed":true},"headers":[],"relativePath":"dev/api/core/index.md","filePath":"zh/dev/api/core/index.md","lastUpdated":null}'),l={name:"dev/api/core/index.md"};function n(c,t,d,s,p,u){return i(),o("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-core",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.core"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-core","aria-label":'Permalink to "**模块** `liteyuki.core`"'},"")],-1)]))}const k=r(l,[["render",n]]);export{f as __pageData,k as default};
|
1
assets/dev_api_core_index.md.C7-mYcFb.lean.js
Normal file
1
assets/dev_api_core_index.md.C7-mYcFb.lean.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as r,o as i,c as o,j as e,a}from"./chunks/framework._avq4Ty7.js";const f=JSON.parse('{"title":"liteyuki.core","description":"","frontmatter":{"title":"liteyuki.core","collapsed":true},"headers":[],"relativePath":"dev/api/core/index.md","filePath":"zh/dev/api/core/index.md","lastUpdated":null}'),l={name:"dev/api/core/index.md"};function n(c,t,d,s,p,u){return i(),o("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-core",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.core"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-core","aria-label":'Permalink to "**模块** `liteyuki.core`"'},"")],-1)]))}const k=r(l,[["render",n]]);export{f as __pageData,k as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as e}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.core.manager","description":"","frontmatter":{"title":"liteyuki.core.manager"},"headers":[],"relativePath":"dev/api/core/manager.md","filePath":"zh/dev/api/core/manager.md","lastUpdated":null}'),t={name:"dev/api/core/manager.md"};function l(h,s,k,p,r,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-core-manager" tabindex="-1"><strong>模块</strong> <code>liteyuki.core.manager</code> <a class="header-anchor" href="#模块-liteyuki-core-manager" aria-label="Permalink to "**模块** \`liteyuki.core.manager\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午11:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : manager.py @Software: PyCharm</p><h3 id="class-channeldeliver" tabindex="-1"><em><strong>class</strong></em> <code>ChannelDeliver</code> <a class="header-anchor" href="#class-channeldeliver" aria-label="Permalink to "***class*** \`ChannelDeliver\`""></a></h3><hr><h4 id="func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])</code> <a class="header-anchor" href="#func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" aria-label="Permalink to "***func*** \`__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/core/manager.py#L48" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]], publish: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as e}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.core.manager","description":"","frontmatter":{"title":"liteyuki.core.manager"},"headers":[],"relativePath":"dev/api/core/manager.md","filePath":"zh/dev/api/core/manager.md","lastUpdated":null}'),t={name:"dev/api/core/manager.md"};function l(h,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-core-manager" tabindex="-1"><strong>模块</strong> <code>liteyuki.core.manager</code> <a class="header-anchor" href="#模块-liteyuki-core-manager" aria-label="Permalink to "**模块** \`liteyuki.core.manager\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午11:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : manager.py @Software: PyCharm</p><h3 id="class-channeldeliver" tabindex="-1"><em><strong>class</strong></em> <code>ChannelDeliver</code> <a class="header-anchor" href="#class-channeldeliver" aria-label="Permalink to "***class*** \`ChannelDeliver\`""></a></h3><hr><h4 id="func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])</code> <a class="header-anchor" href="#func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" aria-label="Permalink to "***func*** \`__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/core/manager.py#L48" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]], publish: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.active </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> active</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.passive </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> passive</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.channel_deliver_active </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> channel_deliver_active</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as e}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.core.manager","description":"","frontmatter":{"title":"liteyuki.core.manager"},"headers":[],"relativePath":"dev/api/core/manager.md","filePath":"zh/dev/api/core/manager.md","lastUpdated":null}'),t={name:"dev/api/core/manager.md"};function l(h,s,k,p,r,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-core-manager" tabindex="-1"><strong>模块</strong> <code>liteyuki.core.manager</code> <a class="header-anchor" href="#模块-liteyuki-core-manager" aria-label="Permalink to "**模块** \`liteyuki.core.manager\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午11:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : manager.py @Software: PyCharm</p><h3 id="class-channeldeliver" tabindex="-1"><em><strong>class</strong></em> <code>ChannelDeliver</code> <a class="header-anchor" href="#class-channeldeliver" aria-label="Permalink to "***class*** \`ChannelDeliver\`""></a></h3><hr><h4 id="func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])</code> <a class="header-anchor" href="#func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" aria-label="Permalink to "***func*** \`__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/core/manager.py#L48" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]], publish: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]):</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as e}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.core.manager","description":"","frontmatter":{"title":"liteyuki.core.manager"},"headers":[],"relativePath":"dev/api/core/manager.md","filePath":"zh/dev/api/core/manager.md","lastUpdated":null}'),t={name:"dev/api/core/manager.md"};function l(h,s,k,p,r,d){return a(),n("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-core-manager" tabindex="-1"><strong>模块</strong> <code>liteyuki.core.manager</code> <a class="header-anchor" href="#模块-liteyuki-core-manager" aria-label="Permalink to "**模块** \`liteyuki.core.manager\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午11:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : manager.py @Software: PyCharm</p><h3 id="class-channeldeliver" tabindex="-1"><em><strong>class</strong></em> <code>ChannelDeliver</code> <a class="header-anchor" href="#class-channeldeliver" aria-label="Permalink to "***class*** \`ChannelDeliver\`""></a></h3><hr><h4 id="func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])</code> <a class="header-anchor" href="#func-init-self-active-channel-any-passive-channel-any-channel-deliver-active-channel-channel-any-channel-deliver-passive-channel-tuple-str-dict-publish-channel-tuple-str-any" aria-label="Permalink to "***func*** \`__init__(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[str, dict]], publish: Channel[tuple[str, Any]])\`""></a></h4><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/core/manager.py#L48" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, active: Channel[Any], passive: Channel[Any], channel_deliver_active: Channel[Channel[Any]], channel_deliver_passive: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">dict</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]], publish: Channel[tuple[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.active </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> active</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.passive </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> passive</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.channel_deliver_active </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> channel_deliver_active</span></span>
|
@ -1 +1 @@
|
||||
import{_ as d,c as i,j as e,a,o as l}from"./chunks/framework.jrU0lkHV.js";const m=JSON.parse('{"title":"liteyuki.dev","description":"","frontmatter":{"title":"liteyuki.dev","collapsed":true},"headers":[],"relativePath":"dev/api/dev/index.md","filePath":"zh/dev/api/dev/index.md","lastUpdated":null}'),n={name:"dev/api/dev/index.md"};function r(o,t,s,c,p,u){return l(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-dev",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.dev"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-dev","aria-label":'Permalink to "**模块** `liteyuki.dev`"'},"")],-1),e("p",null,"该模块用于存放一些开发工具",-1)]))}const f=d(n,[["render",r]]);export{m as __pageData,f as default};
|
||||
import{_ as d,o as i,c as l,j as e,a}from"./chunks/framework._avq4Ty7.js";const m=JSON.parse('{"title":"liteyuki.dev","description":"","frontmatter":{"title":"liteyuki.dev","collapsed":true},"headers":[],"relativePath":"dev/api/dev/index.md","filePath":"zh/dev/api/dev/index.md","lastUpdated":null}'),n={name:"dev/api/dev/index.md"};function r(o,t,s,c,p,u){return i(),l("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-dev",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.dev"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-dev","aria-label":'Permalink to "**模块** `liteyuki.dev`"'},"")],-1),e("p",null,"该模块用于存放一些开发工具",-1)]))}const f=d(n,[["render",r]]);export{m as __pageData,f as default};
|
@ -1 +1 @@
|
||||
import{_ as d,c as i,j as e,a,o as l}from"./chunks/framework.jrU0lkHV.js";const m=JSON.parse('{"title":"liteyuki.dev","description":"","frontmatter":{"title":"liteyuki.dev","collapsed":true},"headers":[],"relativePath":"dev/api/dev/index.md","filePath":"zh/dev/api/dev/index.md","lastUpdated":null}'),n={name:"dev/api/dev/index.md"};function r(o,t,s,c,p,u){return l(),i("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-dev",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.dev"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-dev","aria-label":'Permalink to "**模块** `liteyuki.dev`"'},"")],-1),e("p",null,"该模块用于存放一些开发工具",-1)]))}const f=d(n,[["render",r]]);export{m as __pageData,f as default};
|
||||
import{_ as d,o as i,c as l,j as e,a}from"./chunks/framework._avq4Ty7.js";const m=JSON.parse('{"title":"liteyuki.dev","description":"","frontmatter":{"title":"liteyuki.dev","collapsed":true},"headers":[],"relativePath":"dev/api/dev/index.md","filePath":"zh/dev/api/dev/index.md","lastUpdated":null}'),n={name:"dev/api/dev/index.md"};function r(o,t,s,c,p,u){return i(),l("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-dev",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.dev"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-dev","aria-label":'Permalink to "**模块** `liteyuki.dev`"'},"")],-1),e("p",null,"该模块用于存放一些开发工具",-1)]))}const f=d(n,[["render",r]]);export{m as __pageData,f as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as e,a7 as a,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.dev.observer","description":"","frontmatter":{"title":"liteyuki.dev.observer"},"headers":[],"relativePath":"dev/api/dev/observer.md","filePath":"zh/dev/api/dev/observer.md","lastUpdated":null}'),t={name:"dev/api/dev/observer.md"};function l(h,s,p,r,k,d){return n(),e("div",null,s[0]||(s[0]=[a(`<h1 id="模块-liteyuki-dev-observer" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.observer</code> <a class="header-anchor" href="#模块-liteyuki-dev-observer" aria-label="Permalink to "**模块** \`liteyuki.dev.observer\`""></a></h1><p>此模块用于注册观察者函数,使用watchdog监控文件变化并重启bot 启用该模块需要在配置文件中设置<code>dev_mode</code>为True</p><h3 id="var-callback-func" tabindex="-1">var <code>CALLBACK_FUNC</code> <a class="header-anchor" href="#var-callback-func" aria-label="Permalink to "var \`CALLBACK_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], None]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], bool]</code></p></li></ul><hr><h3 id="func-debounce-wait" tabindex="-1"><em><strong>func</strong></em> <code>debounce(wait)</code> <a class="header-anchor" href="#func-debounce-wait" aria-label="Permalink to "***func*** \`debounce(wait)\`""></a></h3><p><strong>说明</strong>: 防抖函数</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/observer.py#L20" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> debounce</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(wait):</span></span>
|
||||
import{_ as i,o as e,c as a,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.dev.observer","description":"","frontmatter":{"title":"liteyuki.dev.observer"},"headers":[],"relativePath":"dev/api/dev/observer.md","filePath":"zh/dev/api/dev/observer.md","lastUpdated":null}'),t={name:"dev/api/dev/observer.md"};function l(h,s,p,r,k,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-dev-observer" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.observer</code> <a class="header-anchor" href="#模块-liteyuki-dev-observer" aria-label="Permalink to "**模块** \`liteyuki.dev.observer\`""></a></h1><p>此模块用于注册观察者函数,使用watchdog监控文件变化并重启bot 启用该模块需要在配置文件中设置<code>dev_mode</code>为True</p><h3 id="var-callback-func" tabindex="-1">var <code>CALLBACK_FUNC</code> <a class="header-anchor" href="#var-callback-func" aria-label="Permalink to "var \`CALLBACK_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], None]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], bool]</code></p></li></ul><hr><h3 id="func-debounce-wait" tabindex="-1"><em><strong>func</strong></em> <code>debounce(wait)</code> <a class="header-anchor" href="#func-debounce-wait" aria-label="Permalink to "***func*** \`debounce(wait)\`""></a></h3><p><strong>说明</strong>: 防抖函数</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/observer.py#L20" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> debounce</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(wait):</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> decorator</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(func):</span></span>
|
||||
<span class="line"></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as e,a7 as a,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.dev.observer","description":"","frontmatter":{"title":"liteyuki.dev.observer"},"headers":[],"relativePath":"dev/api/dev/observer.md","filePath":"zh/dev/api/dev/observer.md","lastUpdated":null}'),t={name:"dev/api/dev/observer.md"};function l(h,s,p,r,k,d){return n(),e("div",null,s[0]||(s[0]=[a(`<h1 id="模块-liteyuki-dev-observer" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.observer</code> <a class="header-anchor" href="#模块-liteyuki-dev-observer" aria-label="Permalink to "**模块** \`liteyuki.dev.observer\`""></a></h1><p>此模块用于注册观察者函数,使用watchdog监控文件变化并重启bot 启用该模块需要在配置文件中设置<code>dev_mode</code>为True</p><h3 id="var-callback-func" tabindex="-1">var <code>CALLBACK_FUNC</code> <a class="header-anchor" href="#var-callback-func" aria-label="Permalink to "var \`CALLBACK_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], None]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], bool]</code></p></li></ul><hr><h3 id="func-debounce-wait" tabindex="-1"><em><strong>func</strong></em> <code>debounce(wait)</code> <a class="header-anchor" href="#func-debounce-wait" aria-label="Permalink to "***func*** \`debounce(wait)\`""></a></h3><p><strong>说明</strong>: 防抖函数</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/observer.py#L20" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> debounce</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(wait):</span></span>
|
||||
import{_ as i,o as e,c as a,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.dev.observer","description":"","frontmatter":{"title":"liteyuki.dev.observer"},"headers":[],"relativePath":"dev/api/dev/observer.md","filePath":"zh/dev/api/dev/observer.md","lastUpdated":null}'),t={name:"dev/api/dev/observer.md"};function l(h,s,p,r,k,d){return e(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-dev-observer" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.observer</code> <a class="header-anchor" href="#模块-liteyuki-dev-observer" aria-label="Permalink to "**模块** \`liteyuki.dev.observer\`""></a></h1><p>此模块用于注册观察者函数,使用watchdog监控文件变化并重启bot 启用该模块需要在配置文件中设置<code>dev_mode</code>为True</p><h3 id="var-callback-func" tabindex="-1">var <code>CALLBACK_FUNC</code> <a class="header-anchor" href="#var-callback-func" aria-label="Permalink to "var \`CALLBACK_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], None]</code></p></li></ul><h3 id="var-filter-func" tabindex="-1">var <code>FILTER_FUNC</code> <a class="header-anchor" href="#var-filter-func" aria-label="Permalink to "var \`FILTER_FUNC\`""></a></h3><ul><li><p><strong>说明</strong>: 位置1为FileSystemEvent</p></li><li><p><strong>类型</strong>: <code>TypeAlias</code></p></li><li><p><strong>默认值</strong>: <code>Callable[[FileSystemEvent], bool]</code></p></li></ul><hr><h3 id="func-debounce-wait" tabindex="-1"><em><strong>func</strong></em> <code>debounce(wait)</code> <a class="header-anchor" href="#func-debounce-wait" aria-label="Permalink to "***func*** \`debounce(wait)\`""></a></h3><p><strong>说明</strong>: 防抖函数</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/observer.py#L20" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> debounce</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(wait):</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> decorator</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(func):</span></span>
|
||||
<span class="line"></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.dev.plugin","description":"","frontmatter":{"title":"liteyuki.dev.plugin"},"headers":[],"relativePath":"dev/api/dev/plugin.md","filePath":"zh/dev/api/dev/plugin.md","lastUpdated":null}'),l={name:"dev/api/dev/plugin.md"};function e(p,i,h,k,r,d){return n(),a("div",null,i[0]||(i[0]=[t(`<h1 id="模块-liteyuki-dev-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.plugin</code> <a class="header-anchor" href="#模块-liteyuki-dev-plugin" aria-label="Permalink to "**模块** \`liteyuki.dev.plugin\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/18 上午5:04 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : plugin.py @Software: PyCharm</p><hr><h3 id="func-run-plugins-module-path-str-path" tabindex="-1"><em><strong>func</strong></em> <code>run_plugins(*module_path: str | Path)</code> <a class="header-anchor" href="#func-run-plugins-module-path-str-path" aria-label="Permalink to "***func*** \`run_plugins(*module_path: str | Path)\`""></a></h3><p><strong>说明</strong>: 运行插件,无需手动初始化bot</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件路径,参考<code>liteyuki.load_plugin</code>的函数签名</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/plugin.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> run_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path):</span></span>
|
||||
import{_ as s,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.dev.plugin","description":"","frontmatter":{"title":"liteyuki.dev.plugin"},"headers":[],"relativePath":"dev/api/dev/plugin.md","filePath":"zh/dev/api/dev/plugin.md","lastUpdated":null}'),l={name:"dev/api/dev/plugin.md"};function e(p,i,h,k,r,d){return a(),t("div",null,i[0]||(i[0]=[n(`<h1 id="模块-liteyuki-dev-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.plugin</code> <a class="header-anchor" href="#模块-liteyuki-dev-plugin" aria-label="Permalink to "**模块** \`liteyuki.dev.plugin\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/18 上午5:04 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : plugin.py @Software: PyCharm</p><hr><h3 id="func-run-plugins-module-path-str-path" tabindex="-1"><em><strong>func</strong></em> <code>run_plugins(*module_path: str | Path)</code> <a class="header-anchor" href="#func-run-plugins-module-path-str-path" aria-label="Permalink to "***func*** \`run_plugins(*module_path: str | Path)\`""></a></h3><p><strong>说明</strong>: 运行插件,无需手动初始化bot</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件路径,参考<code>liteyuki.load_plugin</code>的函数签名</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/plugin.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> run_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> cfg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_config_in_default()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> cfg.get(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [])</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins.extend(module_path)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as s,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.dev.plugin","description":"","frontmatter":{"title":"liteyuki.dev.plugin"},"headers":[],"relativePath":"dev/api/dev/plugin.md","filePath":"zh/dev/api/dev/plugin.md","lastUpdated":null}'),l={name:"dev/api/dev/plugin.md"};function e(p,i,h,k,r,d){return n(),a("div",null,i[0]||(i[0]=[t(`<h1 id="模块-liteyuki-dev-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.plugin</code> <a class="header-anchor" href="#模块-liteyuki-dev-plugin" aria-label="Permalink to "**模块** \`liteyuki.dev.plugin\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/18 上午5:04 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : plugin.py @Software: PyCharm</p><hr><h3 id="func-run-plugins-module-path-str-path" tabindex="-1"><em><strong>func</strong></em> <code>run_plugins(*module_path: str | Path)</code> <a class="header-anchor" href="#func-run-plugins-module-path-str-path" aria-label="Permalink to "***func*** \`run_plugins(*module_path: str | Path)\`""></a></h3><p><strong>说明</strong>: 运行插件,无需手动初始化bot</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件路径,参考<code>liteyuki.load_plugin</code>的函数签名</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/plugin.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> run_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path):</span></span>
|
||||
import{_ as s,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.dev.plugin","description":"","frontmatter":{"title":"liteyuki.dev.plugin"},"headers":[],"relativePath":"dev/api/dev/plugin.md","filePath":"zh/dev/api/dev/plugin.md","lastUpdated":null}'),l={name:"dev/api/dev/plugin.md"};function e(p,i,h,k,r,d){return a(),t("div",null,i[0]||(i[0]=[n(`<h1 id="模块-liteyuki-dev-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.dev.plugin</code> <a class="header-anchor" href="#模块-liteyuki-dev-plugin" aria-label="Permalink to "**模块** \`liteyuki.dev.plugin\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/18 上午5:04 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : plugin.py @Software: PyCharm</p><hr><h3 id="func-run-plugins-module-path-str-path" tabindex="-1"><em><strong>func</strong></em> <code>run_plugins(*module_path: str | Path)</code> <a class="header-anchor" href="#func-run-plugins-module-path-str-path" aria-label="Permalink to "***func*** \`run_plugins(*module_path: str | Path)\`""></a></h3><p><strong>说明</strong>: 运行插件,无需手动初始化bot</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件路径,参考<code>liteyuki.load_plugin</code>的函数签名</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/dev/plugin.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> run_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> cfg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_config_in_default()</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> cfg.get(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [])</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins.extend(module_path)</span></span>
|
1
assets/dev_api_exception.md.B1ZNvi-7.js
Normal file
1
assets/dev_api_exception.md.B1ZNvi-7.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as t,o as i,c as a,a7 as o}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.exception","description":"","frontmatter":{"title":"liteyuki.exception"},"headers":[],"relativePath":"dev/api/exception.md","filePath":"zh/dev/api/exception.md","lastUpdated":null}'),n={name:"dev/api/exception.md"};function c(s,e,p,l,r,d){return i(),a("div",null,e[0]||(e[0]=[o('<h1 id="模块-liteyuki-exception" tabindex="-1"><strong>模块</strong> <code>liteyuki.exception</code> <a class="header-anchor" href="#模块-liteyuki-exception" aria-label="Permalink to "**模块** `liteyuki.exception`""></a></h1><p>exception模块包含了liteyuki运行中的所有错误</p><h3 id="class-liteyukiexception-baseexception" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiException(BaseException)</code> <a class="header-anchor" href="#class-liteyukiexception-baseexception" aria-label="Permalink to "***class*** `LiteyukiException(BaseException)`""></a></h3>',3)]))}const k=t(n,[["render",c]]);export{u as __pageData,k as default};
|
1
assets/dev_api_exception.md.B1ZNvi-7.lean.js
Normal file
1
assets/dev_api_exception.md.B1ZNvi-7.lean.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as t,o as i,c as a,a7 as o}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.exception","description":"","frontmatter":{"title":"liteyuki.exception"},"headers":[],"relativePath":"dev/api/exception.md","filePath":"zh/dev/api/exception.md","lastUpdated":null}'),n={name:"dev/api/exception.md"};function c(s,e,p,l,r,d){return i(),a("div",null,e[0]||(e[0]=[o('<h1 id="模块-liteyuki-exception" tabindex="-1"><strong>模块</strong> <code>liteyuki.exception</code> <a class="header-anchor" href="#模块-liteyuki-exception" aria-label="Permalink to "**模块** `liteyuki.exception`""></a></h1><p>exception模块包含了liteyuki运行中的所有错误</p><h3 id="class-liteyukiexception-baseexception" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiException(BaseException)</code> <a class="header-anchor" href="#class-liteyukiexception-baseexception" aria-label="Permalink to "***class*** `LiteyukiException(BaseException)`""></a></h3>',3)]))}const k=t(n,[["render",c]]);export{u as __pageData,k as default};
|
@ -1 +0,0 @@
|
||||
import{_ as t,c as i,a7 as a,o}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.exception","description":"","frontmatter":{"title":"liteyuki.exception"},"headers":[],"relativePath":"dev/api/exception.md","filePath":"zh/dev/api/exception.md","lastUpdated":null}'),n={name:"dev/api/exception.md"};function c(s,e,p,l,r,d){return o(),i("div",null,e[0]||(e[0]=[a('<h1 id="模块-liteyuki-exception" tabindex="-1"><strong>模块</strong> <code>liteyuki.exception</code> <a class="header-anchor" href="#模块-liteyuki-exception" aria-label="Permalink to "**模块** `liteyuki.exception`""></a></h1><p>exception模块包含了liteyuki运行中的所有错误</p><h3 id="class-liteyukiexception-baseexception" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiException(BaseException)</code> <a class="header-anchor" href="#class-liteyukiexception-baseexception" aria-label="Permalink to "***class*** `LiteyukiException(BaseException)`""></a></h3>',3)]))}const k=t(n,[["render",c]]);export{u as __pageData,k as default};
|
@ -1 +0,0 @@
|
||||
import{_ as t,c as i,a7 as a,o}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.exception","description":"","frontmatter":{"title":"liteyuki.exception"},"headers":[],"relativePath":"dev/api/exception.md","filePath":"zh/dev/api/exception.md","lastUpdated":null}'),n={name:"dev/api/exception.md"};function c(s,e,p,l,r,d){return o(),i("div",null,e[0]||(e[0]=[a('<h1 id="模块-liteyuki-exception" tabindex="-1"><strong>模块</strong> <code>liteyuki.exception</code> <a class="header-anchor" href="#模块-liteyuki-exception" aria-label="Permalink to "**模块** `liteyuki.exception`""></a></h1><p>exception模块包含了liteyuki运行中的所有错误</p><h3 id="class-liteyukiexception-baseexception" tabindex="-1"><em><strong>class</strong></em> <code>LiteyukiException(BaseException)</code> <a class="header-anchor" href="#class-liteyukiexception-baseexception" aria-label="Permalink to "***class*** `LiteyukiException(BaseException)`""></a></h3>',3)]))}const k=t(n,[["render",c]]);export{u as __pageData,k as default};
|
@ -1 +1 @@
|
||||
import{_ as t,c as a,a7 as i,o as r}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki API","description":"","frontmatter":{"title":"liteyuki API","collapsed":true,"order":100},"headers":[],"relativePath":"dev/api/index.md","filePath":"zh/dev/api/index.md","lastUpdated":null}'),o={name:"dev/api/index.md"};function l(n,e,d,s,c,p){return r(),a("div",null,e[0]||(e[0]=[i('<h1 id="模块-liteyuki" tabindex="-1"><strong>模块</strong> <code>liteyuki</code> <a class="header-anchor" href="#模块-liteyuki" aria-label="Permalink to "**模块** `liteyuki`""></a></h1><p>此模块为liteyuki的框架整体</p><p>This module is the overall framework of liteyuki.</p><h3 id="var-version" tabindex="-1">var <code>__version__</code> <a class="header-anchor" href="#var-version" aria-label="Permalink to "var `__version__`""></a></h3><ul><li><p><strong>说明</strong>: 测试版本号</p></li><li><p><strong>默认值</strong>: <code>'6.3.10'</code></p></li></ul>',5)]))}const h=t(o,[["render",l]]);export{_ as __pageData,h as default};
|
||||
import{_ as t,o as a,c as i,a7 as r}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki API","description":"","frontmatter":{"title":"liteyuki API","collapsed":true,"order":100},"headers":[],"relativePath":"dev/api/index.md","filePath":"zh/dev/api/index.md","lastUpdated":null}'),o={name:"dev/api/index.md"};function l(n,e,d,s,c,p){return a(),i("div",null,e[0]||(e[0]=[r('<h1 id="模块-liteyuki" tabindex="-1"><strong>模块</strong> <code>liteyuki</code> <a class="header-anchor" href="#模块-liteyuki" aria-label="Permalink to "**模块** `liteyuki`""></a></h1><p>此模块为liteyuki的框架整体</p><p>This module is the overall framework of liteyuki.</p><h3 id="var-version" tabindex="-1">var <code>__version__</code> <a class="header-anchor" href="#var-version" aria-label="Permalink to "var `__version__`""></a></h3><ul><li><p><strong>说明</strong>: 测试版本号</p></li><li><p><strong>默认值</strong>: <code>'6.3.10'</code></p></li></ul>',5)]))}const h=t(o,[["render",l]]);export{_ as __pageData,h as default};
|
@ -1 +1 @@
|
||||
import{_ as t,c as a,a7 as i,o as r}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki API","description":"","frontmatter":{"title":"liteyuki API","collapsed":true,"order":100},"headers":[],"relativePath":"dev/api/index.md","filePath":"zh/dev/api/index.md","lastUpdated":null}'),o={name:"dev/api/index.md"};function l(n,e,d,s,c,p){return r(),a("div",null,e[0]||(e[0]=[i('<h1 id="模块-liteyuki" tabindex="-1"><strong>模块</strong> <code>liteyuki</code> <a class="header-anchor" href="#模块-liteyuki" aria-label="Permalink to "**模块** `liteyuki`""></a></h1><p>此模块为liteyuki的框架整体</p><p>This module is the overall framework of liteyuki.</p><h3 id="var-version" tabindex="-1">var <code>__version__</code> <a class="header-anchor" href="#var-version" aria-label="Permalink to "var `__version__`""></a></h3><ul><li><p><strong>说明</strong>: 测试版本号</p></li><li><p><strong>默认值</strong>: <code>'6.3.10'</code></p></li></ul>',5)]))}const h=t(o,[["render",l]]);export{_ as __pageData,h as default};
|
||||
import{_ as t,o as a,c as i,a7 as r}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki API","description":"","frontmatter":{"title":"liteyuki API","collapsed":true,"order":100},"headers":[],"relativePath":"dev/api/index.md","filePath":"zh/dev/api/index.md","lastUpdated":null}'),o={name:"dev/api/index.md"};function l(n,e,d,s,c,p){return a(),i("div",null,e[0]||(e[0]=[r('<h1 id="模块-liteyuki" tabindex="-1"><strong>模块</strong> <code>liteyuki</code> <a class="header-anchor" href="#模块-liteyuki" aria-label="Permalink to "**模块** `liteyuki`""></a></h1><p>此模块为liteyuki的框架整体</p><p>This module is the overall framework of liteyuki.</p><h3 id="var-version" tabindex="-1">var <code>__version__</code> <a class="header-anchor" href="#var-version" aria-label="Permalink to "var `__version__`""></a></h3><ul><li><p><strong>说明</strong>: 测试版本号</p></li><li><p><strong>默认值</strong>: <code>'6.3.10'</code></p></li></ul>',5)]))}const h=t(o,[["render",l]]);export{_ as __pageData,h as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as h,o as k}from"./chunks/framework.jrU0lkHV.js";const d=JSON.parse('{"title":"liteyuki.log","description":"","frontmatter":{"title":"liteyuki.log"},"headers":[],"relativePath":"dev/api/log.md","filePath":"zh/dev/api/log.md","lastUpdated":null}'),l={name:"dev/api/log.md"};function t(n,s,p,e,E,r){return k(),a("div",null,s[0]||(s[0]=[h(`<h1 id="模块-liteyuki-log" tabindex="-1"><strong>模块</strong> <code>liteyuki.log</code> <a class="header-anchor" href="#模块-liteyuki-log" aria-label="Permalink to "**模块** \`liteyuki.log\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午9:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : log.py @Software: PyCharm</p><hr><h3 id="func-get-format-level-str-str" tabindex="-1"><em><strong>func</strong></em> <code>get_format(level: str) -> str</code> <a class="header-anchor" href="#func-get-format-level-str-str" aria-label="Permalink to "***func*** \`get_format(level: str) -> str\`""></a></h3><p><strong>说明</strong>: 获取日志格式</p><p><strong>参数</strong>:</p><blockquote><ul><li>level: 日志等级</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/log.py#L32" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(level: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as h,a7 as k}from"./chunks/framework._avq4Ty7.js";const d=JSON.parse('{"title":"liteyuki.log","description":"","frontmatter":{"title":"liteyuki.log"},"headers":[],"relativePath":"dev/api/log.md","filePath":"zh/dev/api/log.md","lastUpdated":null}'),l={name:"dev/api/log.md"};function t(n,s,p,e,E,r){return a(),h("div",null,s[0]||(s[0]=[k(`<h1 id="模块-liteyuki-log" tabindex="-1"><strong>模块</strong> <code>liteyuki.log</code> <a class="header-anchor" href="#模块-liteyuki-log" aria-label="Permalink to "**模块** \`liteyuki.log\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午9:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : log.py @Software: PyCharm</p><hr><h3 id="func-get-format-level-str-str" tabindex="-1"><em><strong>func</strong></em> <code>get_format(level: str) -> str</code> <a class="header-anchor" href="#func-get-format-level-str-str" aria-label="Permalink to "***func*** \`get_format(level: str) -> str\`""></a></h3><p><strong>说明</strong>: 获取日志格式</p><p><strong>参数</strong>:</p><blockquote><ul><li>level: 日志等级</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/log.py#L32" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(level: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> level </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">==</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'DEBUG'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> debug_format</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as h,o as k}from"./chunks/framework.jrU0lkHV.js";const d=JSON.parse('{"title":"liteyuki.log","description":"","frontmatter":{"title":"liteyuki.log"},"headers":[],"relativePath":"dev/api/log.md","filePath":"zh/dev/api/log.md","lastUpdated":null}'),l={name:"dev/api/log.md"};function t(n,s,p,e,E,r){return k(),a("div",null,s[0]||(s[0]=[h(`<h1 id="模块-liteyuki-log" tabindex="-1"><strong>模块</strong> <code>liteyuki.log</code> <a class="header-anchor" href="#模块-liteyuki-log" aria-label="Permalink to "**模块** \`liteyuki.log\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午9:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : log.py @Software: PyCharm</p><hr><h3 id="func-get-format-level-str-str" tabindex="-1"><em><strong>func</strong></em> <code>get_format(level: str) -> str</code> <a class="header-anchor" href="#func-get-format-level-str-str" aria-label="Permalink to "***func*** \`get_format(level: str) -> str\`""></a></h3><p><strong>说明</strong>: 获取日志格式</p><p><strong>参数</strong>:</p><blockquote><ul><li>level: 日志等级</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/log.py#L32" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(level: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as h,a7 as k}from"./chunks/framework._avq4Ty7.js";const d=JSON.parse('{"title":"liteyuki.log","description":"","frontmatter":{"title":"liteyuki.log"},"headers":[],"relativePath":"dev/api/log.md","filePath":"zh/dev/api/log.md","lastUpdated":null}'),l={name:"dev/api/log.md"};function t(n,s,p,e,E,r){return a(),h("div",null,s[0]||(s[0]=[k(`<h1 id="模块-liteyuki-log" tabindex="-1"><strong>模块</strong> <code>liteyuki.log</code> <a class="header-anchor" href="#模块-liteyuki-log" aria-label="Permalink to "**模块** \`liteyuki.log\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/27 上午9:12 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : log.py @Software: PyCharm</p><hr><h3 id="func-get-format-level-str-str" tabindex="-1"><em><strong>func</strong></em> <code>get_format(level: str) -> str</code> <a class="header-anchor" href="#func-get-format-level-str-str" aria-label="Permalink to "***func*** \`get_format(level: str) -> str\`""></a></h3><p><strong>说明</strong>: 获取日志格式</p><p><strong>参数</strong>:</p><blockquote><ul><li>level: 日志等级</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/log.py#L32" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_format</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(level: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> level </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">==</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'DEBUG'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> debug_format</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
@ -1 +1 @@
|
||||
import{_ as t,c as e,a7 as s,o as a}from"./chunks/framework.jrU0lkHV.js";const h=JSON.parse('{"title":"liteyuki.plugin","description":"","frontmatter":{"title":"liteyuki.plugin","collapsed":true},"headers":[],"relativePath":"dev/api/plugin/index.md","filePath":"zh/dev/api/plugin/index.md","lastUpdated":null}'),n={name:"dev/api/plugin/index.md"};function l(p,i,d,r,o,u){return a(),e("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin</code> <a class="header-anchor" href="#模块-liteyuki-plugin" aria-label="Permalink to "**模块** `liteyuki.plugin`""></a></h1><hr><h3 id="func-get-loaded-plugins-dict-str-plugin" tabindex="-1"><em><strong>func</strong></em> <code>get_loaded_plugins() -> dict[str, Plugin]</code> <a class="header-anchor" href="#func-get-loaded-plugins-dict-str-plugin" aria-label="Permalink to "***func*** `get_loaded_plugins() -> dict[str, Plugin]`""></a></h3><p><strong>说明</strong>: 获取已加载的插件</p><p><strong>返回</strong>: dict[str, Plugin]: 插件字典</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/__init__.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_loaded_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">() -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Plugin]:</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins</span></span></code></pre></div></details>',6)]))}const c=t(n,[["render",l]]);export{h as __pageData,c as default};
|
||||
import{_ as t,o as e,c as s,a7 as a}from"./chunks/framework._avq4Ty7.js";const h=JSON.parse('{"title":"liteyuki.plugin","description":"","frontmatter":{"title":"liteyuki.plugin","collapsed":true},"headers":[],"relativePath":"dev/api/plugin/index.md","filePath":"zh/dev/api/plugin/index.md","lastUpdated":null}'),n={name:"dev/api/plugin/index.md"};function l(p,i,d,r,o,u){return e(),s("div",null,i[0]||(i[0]=[a('<h1 id="模块-liteyuki-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin</code> <a class="header-anchor" href="#模块-liteyuki-plugin" aria-label="Permalink to "**模块** `liteyuki.plugin`""></a></h1><hr><h3 id="func-get-loaded-plugins-dict-str-plugin" tabindex="-1"><em><strong>func</strong></em> <code>get_loaded_plugins() -> dict[str, Plugin]</code> <a class="header-anchor" href="#func-get-loaded-plugins-dict-str-plugin" aria-label="Permalink to "***func*** `get_loaded_plugins() -> dict[str, Plugin]`""></a></h3><p><strong>说明</strong>: 获取已加载的插件</p><p><strong>返回</strong>: dict[str, Plugin]: 插件字典</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/__init__.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_loaded_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">() -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Plugin]:</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins</span></span></code></pre></div></details>',6)]))}const c=t(n,[["render",l]]);export{h as __pageData,c as default};
|
@ -1 +1 @@
|
||||
import{_ as t,c as e,a7 as s,o as a}from"./chunks/framework.jrU0lkHV.js";const h=JSON.parse('{"title":"liteyuki.plugin","description":"","frontmatter":{"title":"liteyuki.plugin","collapsed":true},"headers":[],"relativePath":"dev/api/plugin/index.md","filePath":"zh/dev/api/plugin/index.md","lastUpdated":null}'),n={name:"dev/api/plugin/index.md"};function l(p,i,d,r,o,u){return a(),e("div",null,i[0]||(i[0]=[s('<h1 id="模块-liteyuki-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin</code> <a class="header-anchor" href="#模块-liteyuki-plugin" aria-label="Permalink to "**模块** `liteyuki.plugin`""></a></h1><hr><h3 id="func-get-loaded-plugins-dict-str-plugin" tabindex="-1"><em><strong>func</strong></em> <code>get_loaded_plugins() -> dict[str, Plugin]</code> <a class="header-anchor" href="#func-get-loaded-plugins-dict-str-plugin" aria-label="Permalink to "***func*** `get_loaded_plugins() -> dict[str, Plugin]`""></a></h3><p><strong>说明</strong>: 获取已加载的插件</p><p><strong>返回</strong>: dict[str, Plugin]: 插件字典</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/__init__.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_loaded_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">() -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Plugin]:</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins</span></span></code></pre></div></details>',6)]))}const c=t(n,[["render",l]]);export{h as __pageData,c as default};
|
||||
import{_ as t,o as e,c as s,a7 as a}from"./chunks/framework._avq4Ty7.js";const h=JSON.parse('{"title":"liteyuki.plugin","description":"","frontmatter":{"title":"liteyuki.plugin","collapsed":true},"headers":[],"relativePath":"dev/api/plugin/index.md","filePath":"zh/dev/api/plugin/index.md","lastUpdated":null}'),n={name:"dev/api/plugin/index.md"};function l(p,i,d,r,o,u){return e(),s("div",null,i[0]||(i[0]=[a('<h1 id="模块-liteyuki-plugin" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin</code> <a class="header-anchor" href="#模块-liteyuki-plugin" aria-label="Permalink to "**模块** `liteyuki.plugin`""></a></h1><hr><h3 id="func-get-loaded-plugins-dict-str-plugin" tabindex="-1"><em><strong>func</strong></em> <code>get_loaded_plugins() -> dict[str, Plugin]</code> <a class="header-anchor" href="#func-get-loaded-plugins-dict-str-plugin" aria-label="Permalink to "***func*** `get_loaded_plugins() -> dict[str, Plugin]`""></a></h3><p><strong>说明</strong>: 获取已加载的插件</p><p><strong>返回</strong>: dict[str, Plugin]: 插件字典</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/__init__.py#L13" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> get_loaded_plugins</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">() -> dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Plugin]:</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins</span></span></code></pre></div></details>',6)]))}const c=t(n,[["render",l]]);export{h as __pageData,c as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as l,c as k,a7 as i,j as a,a as n,G as t,w as p,B as e,o as E}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki.plugin.load","description":"","frontmatter":{"title":"liteyuki.plugin.load"},"headers":[],"relativePath":"dev/api/plugin/load.md","filePath":"zh/dev/api/plugin/load.md","lastUpdated":null}'),d={name:"dev/api/plugin/load.md"};function r(g,s,y,F,o,u){const h=e("y");return E(),k("div",null,[s[3]||(s[3]=i(`<h1 id="模块-liteyuki-plugin-load" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin.load</code> <a class="header-anchor" href="#模块-liteyuki-plugin-load" aria-label="Permalink to "**模块** \`liteyuki.plugin.load\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : load.py @Software: PyCharm</p><hr><h3 id="func-load-plugin-module-path-str-path-optional-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugin(module_path: str | Path) -> Optional[Plugin]</code> <a class="header-anchor" href="#func-load-plugin-module-path-str-path-optional-plugin" aria-label="Permalink to "***func*** \`load_plugin(module_path: str | Path) -> Optional[Plugin]\`""></a></h3><p><strong>说明</strong>: 加载单个插件,可以是本地插件或是通过 <code>pip</code> 安装的插件。</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件名称 <code>path.to.your.plugin</code></li><li>或插件路径 <code>pathlib.Path(path/to/your/plugin)</code>:</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path) -> Optional[Plugin]:</span></span>
|
||||
import{_ as l,B as k,o as t,c as p,a7 as i,j as a,a as n,G as e,w as E}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki.plugin.load","description":"","frontmatter":{"title":"liteyuki.plugin.load"},"headers":[],"relativePath":"dev/api/plugin/load.md","filePath":"zh/dev/api/plugin/load.md","lastUpdated":null}'),d={name:"dev/api/plugin/load.md"};function r(g,s,y,F,o,u){const h=k("y");return t(),p("div",null,[s[3]||(s[3]=i(`<h1 id="模块-liteyuki-plugin-load" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin.load</code> <a class="header-anchor" href="#模块-liteyuki-plugin-load" aria-label="Permalink to "**模块** \`liteyuki.plugin.load\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : load.py @Software: PyCharm</p><hr><h3 id="func-load-plugin-module-path-str-path-optional-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugin(module_path: str | Path) -> Optional[Plugin]</code> <a class="header-anchor" href="#func-load-plugin-module-path-str-path-optional-plugin" aria-label="Permalink to "***func*** \`load_plugin(module_path: str | Path) -> Optional[Plugin]\`""></a></h3><p><strong>说明</strong>: 加载单个插件,可以是本地插件或是通过 <code>pip</code> 安装的插件。</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件名称 <code>path.to.your.plugin</code></li><li>或插件路径 <code>pathlib.Path(path/to/your/plugin)</code>:</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path) -> Optional[Plugin]:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> path_to_module_name(Path(module_path)) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path, Path) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> try</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> import_module(module_path)</span></span>
|
||||
@ -48,7 +48,7 @@ import{_ as l,c as k,a7 as i,j as a,a as n,G as t,w as p,B as e,o as E}from"./ch
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(module_name)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins.get(module_name):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins.add(_plugins[module_name])</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins</span></span></code></pre></div></details><hr><h3 id="func-format-display-name-display-name-str-plugin-type-plugintype-str" tabindex="-1"><em><strong>func</strong></em> <code>format_display_name(display_name: str, plugin_type: PluginType) -> str</code> <a class="header-anchor" href="#func-format-display-name-display-name-str-plugin-type-plugintype-str" aria-label="Permalink to "***func*** \`format_display_name(display_name: str, plugin_type: PluginType) -> str\`""></a></h3><p><strong>说明</strong>: 设置插件名称颜色,根据不同类型插件设置颜色</p><p><strong>参数</strong>:</p><blockquote><ul><li>display_name: 插件名称</li><li>plugin_type: 插件类型</li></ul></blockquote>`,20)),a("p",null,[s[1]||(s[1]=a("strong",null,"返回",-1)),s[2]||(s[2]=n(": str: 设置后的插件名称 ")),t(h,null,{default:p(()=>s[0]||(s[0]=[n("name")])),_:1})]),s[4]||(s[4]=i(`<details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L131" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> format_display_name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(display_name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, plugin_type: PluginType) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins</span></span></code></pre></div></details><hr><h3 id="func-format-display-name-display-name-str-plugin-type-plugintype-str" tabindex="-1"><em><strong>func</strong></em> <code>format_display_name(display_name: str, plugin_type: PluginType) -> str</code> <a class="header-anchor" href="#func-format-display-name-display-name-str-plugin-type-plugintype-str" aria-label="Permalink to "***func*** \`format_display_name(display_name: str, plugin_type: PluginType) -> str\`""></a></h3><p><strong>说明</strong>: 设置插件名称颜色,根据不同类型插件设置颜色</p><p><strong>参数</strong>:</p><blockquote><ul><li>display_name: 插件名称</li><li>plugin_type: 插件类型</li></ul></blockquote>`,20)),a("p",null,[s[1]||(s[1]=a("strong",null,"返回",-1)),s[2]||(s[2]=n(": str: 设置后的插件名称 ")),e(h,null,{default:E(()=>s[0]||(s[0]=[n("name")])),_:1})]),s[4]||(s[4]=i(`<details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L131" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> format_display_name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(display_name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, plugin_type: PluginType) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'y'</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> match</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_type:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">APPLICATION</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as l,c as k,a7 as i,j as a,a as n,G as t,w as p,B as e,o as E}from"./chunks/framework.jrU0lkHV.js";const _=JSON.parse('{"title":"liteyuki.plugin.load","description":"","frontmatter":{"title":"liteyuki.plugin.load"},"headers":[],"relativePath":"dev/api/plugin/load.md","filePath":"zh/dev/api/plugin/load.md","lastUpdated":null}'),d={name:"dev/api/plugin/load.md"};function r(g,s,y,F,o,u){const h=e("y");return E(),k("div",null,[s[3]||(s[3]=i(`<h1 id="模块-liteyuki-plugin-load" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin.load</code> <a class="header-anchor" href="#模块-liteyuki-plugin-load" aria-label="Permalink to "**模块** \`liteyuki.plugin.load\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : load.py @Software: PyCharm</p><hr><h3 id="func-load-plugin-module-path-str-path-optional-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugin(module_path: str | Path) -> Optional[Plugin]</code> <a class="header-anchor" href="#func-load-plugin-module-path-str-path-optional-plugin" aria-label="Permalink to "***func*** \`load_plugin(module_path: str | Path) -> Optional[Plugin]\`""></a></h3><p><strong>说明</strong>: 加载单个插件,可以是本地插件或是通过 <code>pip</code> 安装的插件。</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件名称 <code>path.to.your.plugin</code></li><li>或插件路径 <code>pathlib.Path(path/to/your/plugin)</code>:</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path) -> Optional[Plugin]:</span></span>
|
||||
import{_ as l,B as k,o as t,c as p,a7 as i,j as a,a as n,G as e,w as E}from"./chunks/framework._avq4Ty7.js";const _=JSON.parse('{"title":"liteyuki.plugin.load","description":"","frontmatter":{"title":"liteyuki.plugin.load"},"headers":[],"relativePath":"dev/api/plugin/load.md","filePath":"zh/dev/api/plugin/load.md","lastUpdated":null}'),d={name:"dev/api/plugin/load.md"};function r(g,s,y,F,o,u){const h=k("y");return t(),p("div",null,[s[3]||(s[3]=i(`<h1 id="模块-liteyuki-plugin-load" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugin.load</code> <a class="header-anchor" href="#模块-liteyuki-plugin-load" aria-label="Permalink to "**模块** \`liteyuki.plugin.load\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : load.py @Software: PyCharm</p><hr><h3 id="func-load-plugin-module-path-str-path-optional-plugin" tabindex="-1"><em><strong>func</strong></em> <code>load_plugin(module_path: str | Path) -> Optional[Plugin]</code> <a class="header-anchor" href="#func-load-plugin-module-path-str-path-optional-plugin" aria-label="Permalink to "***func*** \`load_plugin(module_path: str | Path) -> Optional[Plugin]\`""></a></h3><p><strong>说明</strong>: 加载单个插件,可以是本地插件或是通过 <code>pip</code> 安装的插件。</p><p><strong>参数</strong>:</p><blockquote><ul><li>module_path: 插件名称 <code>path.to.your.plugin</code></li><li>或插件路径 <code>pathlib.Path(path/to/your/plugin)</code>:</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L30" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> load_plugin</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> |</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> Path) -> Optional[Plugin]:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> path_to_module_name(Path(module_path)) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">if</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> isinstance</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(module_path, Path) </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">else</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module_path</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> try</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> module </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> import_module(module_path)</span></span>
|
||||
@ -48,7 +48,7 @@ import{_ as l,c as k,a7 as i,j as a,a as n,G as t,w as p,B as e,o as E}from"./ch
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(module_name)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _plugins.get(module_name):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins.add(_plugins[module_name])</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins</span></span></code></pre></div></details><hr><h3 id="func-format-display-name-display-name-str-plugin-type-plugintype-str" tabindex="-1"><em><strong>func</strong></em> <code>format_display_name(display_name: str, plugin_type: PluginType) -> str</code> <a class="header-anchor" href="#func-format-display-name-display-name-str-plugin-type-plugintype-str" aria-label="Permalink to "***func*** \`format_display_name(display_name: str, plugin_type: PluginType) -> str\`""></a></h3><p><strong>说明</strong>: 设置插件名称颜色,根据不同类型插件设置颜色</p><p><strong>参数</strong>:</p><blockquote><ul><li>display_name: 插件名称</li><li>plugin_type: 插件类型</li></ul></blockquote>`,20)),a("p",null,[s[1]||(s[1]=a("strong",null,"返回",-1)),s[2]||(s[2]=n(": str: 设置后的插件名称 ")),t(h,null,{default:p(()=>s[0]||(s[0]=[n("name")])),_:1})]),s[4]||(s[4]=i(`<details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L131" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> format_display_name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(display_name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, plugin_type: PluginType) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugins</span></span></code></pre></div></details><hr><h3 id="func-format-display-name-display-name-str-plugin-type-plugintype-str" tabindex="-1"><em><strong>func</strong></em> <code>format_display_name(display_name: str, plugin_type: PluginType) -> str</code> <a class="header-anchor" href="#func-format-display-name-display-name-str-plugin-type-plugintype-str" aria-label="Permalink to "***func*** \`format_display_name(display_name: str, plugin_type: PluginType) -> str\`""></a></h3><p><strong>说明</strong>: 设置插件名称颜色,根据不同类型插件设置颜色</p><p><strong>参数</strong>:</p><blockquote><ul><li>display_name: 插件名称</li><li>plugin_type: 插件类型</li></ul></blockquote>`,20)),a("p",null,[s[1]||(s[1]=a("strong",null,"返回",-1)),s[2]||(s[2]=n(": str: 设置后的插件名称 ")),e(h,null,{default:E(()=>s[0]||(s[0]=[n("name")])),_:1})]),s[4]||(s[4]=i(`<details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugin/load.py#L131" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> format_display_name</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(display_name: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, plugin_type: PluginType) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> color </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> 'y'</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> match</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_type:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> case</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginType.</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">APPLICATION</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
@ -1 +1 @@
|
||||
import{_ as i,c as n,j as e,a,o as l}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.plugin.manager","description":"","frontmatter":{"title":"liteyuki.plugin.manager"},"headers":[],"relativePath":"dev/api/plugin/manager.md","filePath":"zh/dev/api/plugin/manager.md","lastUpdated":null}'),r={name:"dev/api/plugin/manager.md"};function o(m,t,u,p,s,g){return l(),n("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-plugin-manager",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.plugin.manager"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugin-manager","aria-label":'Permalink to "**模块** `liteyuki.plugin.manager`"'},"")],-1),e("p",null,"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved",-1),e("p",null,[a("@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : "),e("a",{href:"mailto:snowykami@outlook.com",target:"_blank",rel:"noreferrer"},"snowykami@outlook.com"),a(" @File : manager.py @Software: PyCharm")],-1)]))}const k=i(r,[["render",o]]);export{c as __pageData,k as default};
|
||||
import{_ as i,o as n,c as l,j as e,a}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.plugin.manager","description":"","frontmatter":{"title":"liteyuki.plugin.manager"},"headers":[],"relativePath":"dev/api/plugin/manager.md","filePath":"zh/dev/api/plugin/manager.md","lastUpdated":null}'),r={name:"dev/api/plugin/manager.md"};function o(m,t,u,p,s,g){return n(),l("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-plugin-manager",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.plugin.manager"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugin-manager","aria-label":'Permalink to "**模块** `liteyuki.plugin.manager`"'},"")],-1),e("p",null,"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved",-1),e("p",null,[a("@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : "),e("a",{href:"mailto:snowykami@outlook.com",target:"_blank",rel:"noreferrer"},"snowykami@outlook.com"),a(" @File : manager.py @Software: PyCharm")],-1)]))}const k=i(r,[["render",o]]);export{c as __pageData,k as default};
|
@ -1 +1 @@
|
||||
import{_ as i,c as n,j as e,a,o as l}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.plugin.manager","description":"","frontmatter":{"title":"liteyuki.plugin.manager"},"headers":[],"relativePath":"dev/api/plugin/manager.md","filePath":"zh/dev/api/plugin/manager.md","lastUpdated":null}'),r={name:"dev/api/plugin/manager.md"};function o(m,t,u,p,s,g){return l(),n("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-plugin-manager",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.plugin.manager"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugin-manager","aria-label":'Permalink to "**模块** `liteyuki.plugin.manager`"'},"")],-1),e("p",null,"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved",-1),e("p",null,[a("@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : "),e("a",{href:"mailto:snowykami@outlook.com",target:"_blank",rel:"noreferrer"},"snowykami@outlook.com"),a(" @File : manager.py @Software: PyCharm")],-1)]))}const k=i(r,[["render",o]]);export{c as __pageData,k as default};
|
||||
import{_ as i,o as n,c as l,j as e,a}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.plugin.manager","description":"","frontmatter":{"title":"liteyuki.plugin.manager"},"headers":[],"relativePath":"dev/api/plugin/manager.md","filePath":"zh/dev/api/plugin/manager.md","lastUpdated":null}'),r={name:"dev/api/plugin/manager.md"};function o(m,t,u,p,s,g){return n(),l("div",null,t[0]||(t[0]=[e("h1",{id:"模块-liteyuki-plugin-manager",tabindex:"-1"},[e("strong",null,"模块"),a(),e("code",null,"liteyuki.plugin.manager"),a(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugin-manager","aria-label":'Permalink to "**模块** `liteyuki.plugin.manager`"'},"")],-1),e("p",null,"Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved",-1),e("p",null,[a("@Time : 2024/7/23 下午11:59 @Author : snowykami @Email : "),e("a",{href:"mailto:snowykami@outlook.com",target:"_blank",rel:"noreferrer"},"snowykami@outlook.com"),a(" @File : manager.py @Software: PyCharm")],-1)]))}const k=i(r,[["render",o]]);export{c as __pageData,k as default};
|
1
assets/dev_api_plugin_model.md.B6zUTgyK.js
Normal file
1
assets/dev_api_plugin_model.md.B6zUTgyK.js
Normal file
File diff suppressed because one or more lines are too long
1
assets/dev_api_plugin_model.md.B6zUTgyK.lean.js
Normal file
1
assets/dev_api_plugin_model.md.B6zUTgyK.lean.js
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1 +1 @@
|
||||
import{_ as l,c as n,j as e,a as t,o as a}from"./chunks/framework.jrU0lkHV.js";const m=JSON.parse('{"title":"liteyuki.plugins","description":"","frontmatter":{"title":"liteyuki.plugins","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/index.md","filePath":"zh/dev/api/plugins/index.md","lastUpdated":null}'),s={name:"dev/api/plugins/index.md"};function u(d,i,r,o,p,c){return a(),n("div",null,i[0]||(i[0]=[e("h1",{id:"模块-liteyuki-plugins",tabindex:"-1"},[e("strong",null,"模块"),t(),e("code",null,"liteyuki.plugins"),t(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugins","aria-label":'Permalink to "**模块** `liteyuki.plugins`"'},"")],-1),e("p",null,"此模块为内置插件文件夹,用于存放内置插件。 This module is the built-in plugin folder, used to store built-in plugins.",-1)]))}const f=l(s,[["render",u]]);export{m as __pageData,f as default};
|
||||
import{_ as l,o as n,c as a,j as e,a as t}from"./chunks/framework._avq4Ty7.js";const m=JSON.parse('{"title":"liteyuki.plugins","description":"","frontmatter":{"title":"liteyuki.plugins","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/index.md","filePath":"zh/dev/api/plugins/index.md","lastUpdated":null}'),s={name:"dev/api/plugins/index.md"};function u(d,i,r,o,p,c){return n(),a("div",null,i[0]||(i[0]=[e("h1",{id:"模块-liteyuki-plugins",tabindex:"-1"},[e("strong",null,"模块"),t(),e("code",null,"liteyuki.plugins"),t(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugins","aria-label":'Permalink to "**模块** `liteyuki.plugins`"'},"")],-1),e("p",null,"此模块为内置插件文件夹,用于存放内置插件。 This module is the built-in plugin folder, used to store built-in plugins.",-1)]))}const f=l(s,[["render",u]]);export{m as __pageData,f as default};
|
@ -1 +1 @@
|
||||
import{_ as l,c as n,j as e,a as t,o as a}from"./chunks/framework.jrU0lkHV.js";const m=JSON.parse('{"title":"liteyuki.plugins","description":"","frontmatter":{"title":"liteyuki.plugins","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/index.md","filePath":"zh/dev/api/plugins/index.md","lastUpdated":null}'),s={name:"dev/api/plugins/index.md"};function u(d,i,r,o,p,c){return a(),n("div",null,i[0]||(i[0]=[e("h1",{id:"模块-liteyuki-plugins",tabindex:"-1"},[e("strong",null,"模块"),t(),e("code",null,"liteyuki.plugins"),t(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugins","aria-label":'Permalink to "**模块** `liteyuki.plugins`"'},"")],-1),e("p",null,"此模块为内置插件文件夹,用于存放内置插件。 This module is the built-in plugin folder, used to store built-in plugins.",-1)]))}const f=l(s,[["render",u]]);export{m as __pageData,f as default};
|
||||
import{_ as l,o as n,c as a,j as e,a as t}from"./chunks/framework._avq4Ty7.js";const m=JSON.parse('{"title":"liteyuki.plugins","description":"","frontmatter":{"title":"liteyuki.plugins","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/index.md","filePath":"zh/dev/api/plugins/index.md","lastUpdated":null}'),s={name:"dev/api/plugins/index.md"};function u(d,i,r,o,p,c){return n(),a("div",null,i[0]||(i[0]=[e("h1",{id:"模块-liteyuki-plugins",tabindex:"-1"},[e("strong",null,"模块"),t(),e("code",null,"liteyuki.plugins"),t(),e("a",{class:"header-anchor",href:"#模块-liteyuki-plugins","aria-label":'Permalink to "**模块** `liteyuki.plugins`"'},"")],-1),e("p",null,"此模块为内置插件文件夹,用于存放内置插件。 This module is the built-in plugin folder, used to store built-in plugins.",-1)]))}const f=l(s,[["render",u]]);export{m as __pageData,f as default};
|
@ -1 +1 @@
|
||||
import{_ as i,c as s,a7 as t,o as a}from"./chunks/framework.jrU0lkHV.js";const d=JSON.parse('{"title":"liteyuki.plugins.liteecho","description":"","frontmatter":{"title":"liteyuki.plugins.liteecho"},"headers":[],"relativePath":"dev/api/plugins/liteecho.md","filePath":"zh/dev/api/plugins/liteecho.md","lastUpdated":null}'),l={name:"dev/api/plugins/liteecho.md"};function n(h,e,o,p,r,k){return a(),s("div",null,e[0]||(e[0]=[t('<h1 id="模块-liteyuki-plugins-liteecho" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.liteecho</code> <a class="header-anchor" href="#模块-liteyuki-plugins-liteecho" aria-label="Permalink to "**模块** `liteyuki.plugins.liteecho`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/22 下午12:31 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : liteecho.py @Software: PyCharm</p><hr><p><code>@on_startswith(['liteecho'], rule=is_su_rule).handle()</code></p><h3 id="async-func-liteecho-event-messageevent" tabindex="-1"><em><strong>async func</strong></em> <code>liteecho(event: MessageEvent)</code> <a class="header-anchor" href="#async-func-liteecho-event-messageevent" aria-label="Permalink to "***async func*** `liteecho(event: MessageEvent)`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/liteecho.py#L18" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@on_startswith</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteecho'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">], </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">rule</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">is_su_rule)</span><span style="--shiki-light:#B31D28;--shiki-light-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic;">.handle()</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">async</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> liteecho</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(event: MessageEvent):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> event.reply(event.raw_message.strip()[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:].strip())</span></span></code></pre></div></details>',7)]))}const u=i(l,[["render",n]]);export{d as __pageData,u as default};
|
||||
import{_ as i,o as s,c as t,a7 as a}from"./chunks/framework._avq4Ty7.js";const d=JSON.parse('{"title":"liteyuki.plugins.liteecho","description":"","frontmatter":{"title":"liteyuki.plugins.liteecho"},"headers":[],"relativePath":"dev/api/plugins/liteecho.md","filePath":"zh/dev/api/plugins/liteecho.md","lastUpdated":null}'),l={name:"dev/api/plugins/liteecho.md"};function n(h,e,o,p,r,k){return s(),t("div",null,e[0]||(e[0]=[a('<h1 id="模块-liteyuki-plugins-liteecho" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.liteecho</code> <a class="header-anchor" href="#模块-liteyuki-plugins-liteecho" aria-label="Permalink to "**模块** `liteyuki.plugins.liteecho`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/22 下午12:31 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : liteecho.py @Software: PyCharm</p><hr><p><code>@on_startswith(['liteecho'], rule=is_su_rule).handle()</code></p><h3 id="async-func-liteecho-event-messageevent" tabindex="-1"><em><strong>async func</strong></em> <code>liteecho(event: MessageEvent)</code> <a class="header-anchor" href="#async-func-liteecho-event-messageevent" aria-label="Permalink to "***async func*** `liteecho(event: MessageEvent)`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/liteecho.py#L18" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@on_startswith</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteecho'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">], </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">rule</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">is_su_rule)</span><span style="--shiki-light:#B31D28;--shiki-light-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic;">.handle()</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">async</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> liteecho</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(event: MessageEvent):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> event.reply(event.raw_message.strip()[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:].strip())</span></span></code></pre></div></details>',7)]))}const u=i(l,[["render",n]]);export{d as __pageData,u as default};
|
@ -1 +1 @@
|
||||
import{_ as i,c as s,a7 as t,o as a}from"./chunks/framework.jrU0lkHV.js";const d=JSON.parse('{"title":"liteyuki.plugins.liteecho","description":"","frontmatter":{"title":"liteyuki.plugins.liteecho"},"headers":[],"relativePath":"dev/api/plugins/liteecho.md","filePath":"zh/dev/api/plugins/liteecho.md","lastUpdated":null}'),l={name:"dev/api/plugins/liteecho.md"};function n(h,e,o,p,r,k){return a(),s("div",null,e[0]||(e[0]=[t('<h1 id="模块-liteyuki-plugins-liteecho" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.liteecho</code> <a class="header-anchor" href="#模块-liteyuki-plugins-liteecho" aria-label="Permalink to "**模块** `liteyuki.plugins.liteecho`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/22 下午12:31 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : liteecho.py @Software: PyCharm</p><hr><p><code>@on_startswith(['liteecho'], rule=is_su_rule).handle()</code></p><h3 id="async-func-liteecho-event-messageevent" tabindex="-1"><em><strong>async func</strong></em> <code>liteecho(event: MessageEvent)</code> <a class="header-anchor" href="#async-func-liteecho-event-messageevent" aria-label="Permalink to "***async func*** `liteecho(event: MessageEvent)`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/liteecho.py#L18" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@on_startswith</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteecho'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">], </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">rule</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">is_su_rule)</span><span style="--shiki-light:#B31D28;--shiki-light-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic;">.handle()</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">async</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> liteecho</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(event: MessageEvent):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> event.reply(event.raw_message.strip()[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:].strip())</span></span></code></pre></div></details>',7)]))}const u=i(l,[["render",n]]);export{d as __pageData,u as default};
|
||||
import{_ as i,o as s,c as t,a7 as a}from"./chunks/framework._avq4Ty7.js";const d=JSON.parse('{"title":"liteyuki.plugins.liteecho","description":"","frontmatter":{"title":"liteyuki.plugins.liteecho"},"headers":[],"relativePath":"dev/api/plugins/liteecho.md","filePath":"zh/dev/api/plugins/liteecho.md","lastUpdated":null}'),l={name:"dev/api/plugins/liteecho.md"};function n(h,e,o,p,r,k){return s(),t("div",null,e[0]||(e[0]=[a('<h1 id="模块-liteyuki-plugins-liteecho" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.liteecho</code> <a class="header-anchor" href="#模块-liteyuki-plugins-liteecho" aria-label="Permalink to "**模块** `liteyuki.plugins.liteecho`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/22 下午12:31 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : liteecho.py @Software: PyCharm</p><hr><p><code>@on_startswith(['liteecho'], rule=is_su_rule).handle()</code></p><h3 id="async-func-liteecho-event-messageevent" tabindex="-1"><em><strong>async func</strong></em> <code>liteecho(event: MessageEvent)</code> <a class="header-anchor" href="#async-func-liteecho-event-messageevent" aria-label="Permalink to "***async func*** `liteecho(event: MessageEvent)`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/liteecho.py#L18" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">@on_startswith</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">([</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteecho'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">], </span><span style="--shiki-light:#E36209;--shiki-dark:#FFAB70;">rule</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">is_su_rule)</span><span style="--shiki-light:#B31D28;--shiki-light-font-style:italic;--shiki-dark:#FDAEB7;--shiki-dark-font-style:italic;">.handle()</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">async</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> liteecho</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(event: MessageEvent):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> event.reply(event.raw_message.strip()[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">8</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:].strip())</span></span></code></pre></div></details>',7)]))}const u=i(l,[["render",n]]);export{d as __pageData,u as default};
|
@ -1 +1 @@
|
||||
import{_ as s,c as a,a7 as l,o as n}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.plugins.plugin_loader","description":"","frontmatter":{"title":"liteyuki.plugins.plugin_loader","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/plugin_loader/index.md","filePath":"zh/dev/api/plugins/plugin_loader/index.md","lastUpdated":null}'),e={name:"dev/api/plugins/plugin_loader/index.md"};function t(p,i,r,d,o,h){return n(),a("div",null,i[0]||(i[0]=[l('<h1 id="模块-liteyuki-plugins-plugin-loader" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.plugin_loader</code> <a class="header-anchor" href="#模块-liteyuki-plugins-plugin-loader" aria-label="Permalink to "**模块** `liteyuki.plugins.plugin_loader`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/11 下午10:02 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : <strong>init</strong>.py.py @Software: PyCharm</p><hr><h3 id="func-default-plugins-loader" tabindex="-1"><em><strong>func</strong></em> <code>default_plugins_loader()</code> <a class="header-anchor" href="#func-default-plugins-loader" aria-label="Permalink to "***func*** `default_plugins_loader()`""></a></h3><p><strong>说明</strong>: 默认插件加载器,应在初始化时调用</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/plugin_loader/__init__.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> default_plugins_loader</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">():</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, []):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(plugin)</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_dir </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugin_dirs'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'src/liteyuki_plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugins(plugin_dir)</span></span></code></pre></div></details>',7)]))}const g=s(e,[["render",t]]);export{u as __pageData,g as default};
|
||||
import{_ as s,o as a,c as l,a7 as n}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.plugins.plugin_loader","description":"","frontmatter":{"title":"liteyuki.plugins.plugin_loader","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/plugin_loader/index.md","filePath":"zh/dev/api/plugins/plugin_loader/index.md","lastUpdated":null}'),e={name:"dev/api/plugins/plugin_loader/index.md"};function t(p,i,r,d,o,h){return a(),l("div",null,i[0]||(i[0]=[n('<h1 id="模块-liteyuki-plugins-plugin-loader" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.plugin_loader</code> <a class="header-anchor" href="#模块-liteyuki-plugins-plugin-loader" aria-label="Permalink to "**模块** `liteyuki.plugins.plugin_loader`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/11 下午10:02 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : <strong>init</strong>.py.py @Software: PyCharm</p><hr><h3 id="func-default-plugins-loader" tabindex="-1"><em><strong>func</strong></em> <code>default_plugins_loader()</code> <a class="header-anchor" href="#func-default-plugins-loader" aria-label="Permalink to "***func*** `default_plugins_loader()`""></a></h3><p><strong>说明</strong>: 默认插件加载器,应在初始化时调用</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/plugin_loader/__init__.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> default_plugins_loader</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">():</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, []):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(plugin)</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_dir </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugin_dirs'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'src/liteyuki_plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugins(plugin_dir)</span></span></code></pre></div></details>',7)]))}const g=s(e,[["render",t]]);export{u as __pageData,g as default};
|
@ -1 +1 @@
|
||||
import{_ as s,c as a,a7 as l,o as n}from"./chunks/framework.jrU0lkHV.js";const u=JSON.parse('{"title":"liteyuki.plugins.plugin_loader","description":"","frontmatter":{"title":"liteyuki.plugins.plugin_loader","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/plugin_loader/index.md","filePath":"zh/dev/api/plugins/plugin_loader/index.md","lastUpdated":null}'),e={name:"dev/api/plugins/plugin_loader/index.md"};function t(p,i,r,d,o,h){return n(),a("div",null,i[0]||(i[0]=[l('<h1 id="模块-liteyuki-plugins-plugin-loader" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.plugin_loader</code> <a class="header-anchor" href="#模块-liteyuki-plugins-plugin-loader" aria-label="Permalink to "**模块** `liteyuki.plugins.plugin_loader`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/11 下午10:02 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : <strong>init</strong>.py.py @Software: PyCharm</p><hr><h3 id="func-default-plugins-loader" tabindex="-1"><em><strong>func</strong></em> <code>default_plugins_loader()</code> <a class="header-anchor" href="#func-default-plugins-loader" aria-label="Permalink to "***func*** `default_plugins_loader()`""></a></h3><p><strong>说明</strong>: 默认插件加载器,应在初始化时调用</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/plugin_loader/__init__.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> default_plugins_loader</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">():</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, []):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(plugin)</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_dir </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugin_dirs'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'src/liteyuki_plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugins(plugin_dir)</span></span></code></pre></div></details>',7)]))}const g=s(e,[["render",t]]);export{u as __pageData,g as default};
|
||||
import{_ as s,o as a,c as l,a7 as n}from"./chunks/framework._avq4Ty7.js";const u=JSON.parse('{"title":"liteyuki.plugins.plugin_loader","description":"","frontmatter":{"title":"liteyuki.plugins.plugin_loader","collapsed":true},"headers":[],"relativePath":"dev/api/plugins/plugin_loader/index.md","filePath":"zh/dev/api/plugins/plugin_loader/index.md","lastUpdated":null}'),e={name:"dev/api/plugins/plugin_loader/index.md"};function t(p,i,r,d,o,h){return a(),l("div",null,i[0]||(i[0]=[n('<h1 id="模块-liteyuki-plugins-plugin-loader" tabindex="-1"><strong>模块</strong> <code>liteyuki.plugins.plugin_loader</code> <a class="header-anchor" href="#模块-liteyuki-plugins-plugin-loader" aria-label="Permalink to "**模块** `liteyuki.plugins.plugin_loader`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/11 下午10:02 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : <strong>init</strong>.py.py @Software: PyCharm</p><hr><h3 id="func-default-plugins-loader" tabindex="-1"><em><strong>func</strong></em> <code>default_plugins_loader()</code> <a class="header-anchor" href="#func-default-plugins-loader" aria-label="Permalink to "***func*** `default_plugins_loader()`""></a></h3><p><strong>说明</strong>: 默认插件加载器,应在初始化时调用</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/plugins/plugin_loader/__init__.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> default_plugins_loader</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">():</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, []):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugin(plugin)</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> plugin_dir </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_config(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'liteyuki.plugin_dirs'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, [</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'src/liteyuki_plugins'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> load_plugins(plugin_dir)</span></span></code></pre></div></details>',7)]))}const g=s(e,[["render",t]]);export{u as __pageData,g as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as e,o as t}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.session.event","description":"","frontmatter":{"title":"liteyuki.session.event"},"headers":[],"relativePath":"dev/api/session/event.md","filePath":"zh/dev/api/session/event.md","lastUpdated":null}'),n={name:"dev/api/session/event.md"};function h(l,s,k,p,r,d){return t(),a("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.event</code> <a class="header-anchor" href="#模块-liteyuki-session-event" aria-label="Permalink to "**模块** \`liteyuki.session.event\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:47 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : event.py @Software: PyCharm</p><h3 id="class-messageevent" tabindex="-1"><em><strong>class</strong></em> <code>MessageEvent</code> <a class="header-anchor" href="#class-messageevent" aria-label="Permalink to "***class*** \`MessageEvent\`""></a></h3><hr><h4 id="func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)</code> <a class="header-anchor" href="#func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" aria-label="Permalink to "***func*** \`__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)\`""></a></h4><p><strong>说明</strong>: 轻雪抽象消息事件</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/event.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, bot_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message: list[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">|</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, raw_message: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, user_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, receive_channel: Optional[Channel[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'MessageEvent'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as e,a7 as t}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.session.event","description":"","frontmatter":{"title":"liteyuki.session.event"},"headers":[],"relativePath":"dev/api/session/event.md","filePath":"zh/dev/api/session/event.md","lastUpdated":null}'),n={name:"dev/api/session/event.md"};function h(l,s,k,p,r,d){return a(),e("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-session-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.event</code> <a class="header-anchor" href="#模块-liteyuki-session-event" aria-label="Permalink to "**模块** \`liteyuki.session.event\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:47 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : event.py @Software: PyCharm</p><h3 id="class-messageevent" tabindex="-1"><em><strong>class</strong></em> <code>MessageEvent</code> <a class="header-anchor" href="#class-messageevent" aria-label="Permalink to "***class*** \`MessageEvent\`""></a></h3><hr><h4 id="func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)</code> <a class="header-anchor" href="#func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" aria-label="Permalink to "***func*** \`__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)\`""></a></h4><p><strong>说明</strong>: 轻雪抽象消息事件</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/event.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, bot_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message: list[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">|</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, raw_message: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, user_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, receive_channel: Optional[Channel[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'MessageEvent'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">is</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> {}</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.message_type </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> message_type</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as e,o as t}from"./chunks/framework.jrU0lkHV.js";const g=JSON.parse('{"title":"liteyuki.session.event","description":"","frontmatter":{"title":"liteyuki.session.event"},"headers":[],"relativePath":"dev/api/session/event.md","filePath":"zh/dev/api/session/event.md","lastUpdated":null}'),n={name:"dev/api/session/event.md"};function h(l,s,k,p,r,d){return t(),a("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.event</code> <a class="header-anchor" href="#模块-liteyuki-session-event" aria-label="Permalink to "**模块** \`liteyuki.session.event\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:47 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : event.py @Software: PyCharm</p><h3 id="class-messageevent" tabindex="-1"><em><strong>class</strong></em> <code>MessageEvent</code> <a class="header-anchor" href="#class-messageevent" aria-label="Permalink to "***class*** \`MessageEvent\`""></a></h3><hr><h4 id="func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)</code> <a class="header-anchor" href="#func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" aria-label="Permalink to "***func*** \`__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)\`""></a></h4><p><strong>说明</strong>: 轻雪抽象消息事件</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/event.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, bot_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message: list[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">|</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, raw_message: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, user_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, receive_channel: Optional[Channel[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'MessageEvent'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as e,a7 as t}from"./chunks/framework._avq4Ty7.js";const g=JSON.parse('{"title":"liteyuki.session.event","description":"","frontmatter":{"title":"liteyuki.session.event"},"headers":[],"relativePath":"dev/api/session/event.md","filePath":"zh/dev/api/session/event.md","lastUpdated":null}'),n={name:"dev/api/session/event.md"};function h(l,s,k,p,r,d){return a(),e("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-session-event" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.event</code> <a class="header-anchor" href="#模块-liteyuki-session-event" aria-label="Permalink to "**模块** \`liteyuki.session.event\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:47 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : event.py @Software: PyCharm</p><h3 id="class-messageevent" tabindex="-1"><em><strong>class</strong></em> <code>MessageEvent</code> <a class="header-anchor" href="#class-messageevent" aria-label="Permalink to "***class*** \`MessageEvent\`""></a></h3><hr><h4 id="func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)</code> <a class="header-anchor" href="#func-init-self-bot-id-str-message-list-dict-str-any-str-message-type-str-raw-message-str-session-id-str-user-id-str-session-type-str-receive-channel-optional-channel-messageevent-none-data-optional-dict-str-any-none" aria-label="Permalink to "***func*** \`__init__(self, bot_id: str, message: list[dict[str, Any]] | str, message_type: str, raw_message: str, session_id: str, user_id: str, session_type: str, receive_channel: Optional[Channel[MessageEvent]] = None, data: Optional[dict[str, Any]] = None)\`""></a></h4><p><strong>说明</strong>: 轻雪抽象消息事件</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/event.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, bot_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message: list[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]] </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">|</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, message_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, raw_message: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, user_id: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, session_type: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, receive_channel: Optional[Channel[</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'MessageEvent'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, data: Optional[dict[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">str</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]]</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">is</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> None</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> data </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> {}</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.message_type </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> message_type</span></span>
|
@ -1 +1 @@
|
||||
import{_ as i,c as a,a7 as e,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.session","description":"","frontmatter":{"title":"liteyuki.session","collapsed":true},"headers":[],"relativePath":"dev/api/session/index.md","filePath":"zh/dev/api/session/index.md","lastUpdated":null}'),t={name:"dev/api/session/index.md"};function h(l,s,k,p,r,d){return n(),a("div",null,s[0]||(s[0]=[e('<h1 id="模块-liteyuki-session" tabindex="-1"><strong>模块</strong> <code>liteyuki.session</code> <a class="header-anchor" href="#模块-liteyuki-session" aria-label="Permalink to "**模块** `liteyuki.session`""></a></h1><p>该模块参考并引用了nonebot-plugin-alconna的消息段定义</p><hr><h3 id="func-message-handler-thread-i-chans-iterable-chan-any" tabindex="-1"><em><strong>func</strong></em> <code>message_handler_thread(i_chans: Iterable[Chan[Any]])</code> <a class="header-anchor" href="#func-message-handler-thread-i-chans-iterable-chan-any" aria-label="Permalink to "***func*** `message_handler_thread(i_chans: Iterable[Chan[Any]])`""></a></h3><p><strong>参数</strong>:</p><blockquote><ul><li>i_chans: 多路输入管道组</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/__init__.py#L15" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> message_handler_thread</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(i_chans: Iterable[Chan[Any]]):</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> msg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> select(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">i_chans):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.debug(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.info(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details>',7)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default};
|
||||
import{_ as i,o as a,c as e,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.session","description":"","frontmatter":{"title":"liteyuki.session","collapsed":true},"headers":[],"relativePath":"dev/api/session/index.md","filePath":"zh/dev/api/session/index.md","lastUpdated":null}'),t={name:"dev/api/session/index.md"};function h(l,s,k,p,r,d){return a(),e("div",null,s[0]||(s[0]=[n('<h1 id="模块-liteyuki-session" tabindex="-1"><strong>模块</strong> <code>liteyuki.session</code> <a class="header-anchor" href="#模块-liteyuki-session" aria-label="Permalink to "**模块** `liteyuki.session`""></a></h1><p>该模块参考并引用了nonebot-plugin-alconna的消息段定义</p><hr><h3 id="func-message-handler-thread-i-chans-iterable-chan-any" tabindex="-1"><em><strong>func</strong></em> <code>message_handler_thread(i_chans: Iterable[Chan[Any]])</code> <a class="header-anchor" href="#func-message-handler-thread-i-chans-iterable-chan-any" aria-label="Permalink to "***func*** `message_handler_thread(i_chans: Iterable[Chan[Any]])`""></a></h3><p><strong>参数</strong>:</p><blockquote><ul><li>i_chans: 多路输入管道组</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/__init__.py#L15" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> message_handler_thread</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(i_chans: Iterable[Chan[Any]]):</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> msg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> select(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">i_chans):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.debug(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.info(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details>',7)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default};
|
@ -1 +1 @@
|
||||
import{_ as i,c as a,a7 as e,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.session","description":"","frontmatter":{"title":"liteyuki.session","collapsed":true},"headers":[],"relativePath":"dev/api/session/index.md","filePath":"zh/dev/api/session/index.md","lastUpdated":null}'),t={name:"dev/api/session/index.md"};function h(l,s,k,p,r,d){return n(),a("div",null,s[0]||(s[0]=[e('<h1 id="模块-liteyuki-session" tabindex="-1"><strong>模块</strong> <code>liteyuki.session</code> <a class="header-anchor" href="#模块-liteyuki-session" aria-label="Permalink to "**模块** `liteyuki.session`""></a></h1><p>该模块参考并引用了nonebot-plugin-alconna的消息段定义</p><hr><h3 id="func-message-handler-thread-i-chans-iterable-chan-any" tabindex="-1"><em><strong>func</strong></em> <code>message_handler_thread(i_chans: Iterable[Chan[Any]])</code> <a class="header-anchor" href="#func-message-handler-thread-i-chans-iterable-chan-any" aria-label="Permalink to "***func*** `message_handler_thread(i_chans: Iterable[Chan[Any]])`""></a></h3><p><strong>参数</strong>:</p><blockquote><ul><li>i_chans: 多路输入管道组</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/__init__.py#L15" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> message_handler_thread</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(i_chans: Iterable[Chan[Any]]):</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> msg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> select(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">i_chans):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.debug(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.info(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details>',7)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default};
|
||||
import{_ as i,o as a,c as e,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.session","description":"","frontmatter":{"title":"liteyuki.session","collapsed":true},"headers":[],"relativePath":"dev/api/session/index.md","filePath":"zh/dev/api/session/index.md","lastUpdated":null}'),t={name:"dev/api/session/index.md"};function h(l,s,k,p,r,d){return a(),e("div",null,s[0]||(s[0]=[n('<h1 id="模块-liteyuki-session" tabindex="-1"><strong>模块</strong> <code>liteyuki.session</code> <a class="header-anchor" href="#模块-liteyuki-session" aria-label="Permalink to "**模块** `liteyuki.session`""></a></h1><p>该模块参考并引用了nonebot-plugin-alconna的消息段定义</p><hr><h3 id="func-message-handler-thread-i-chans-iterable-chan-any" tabindex="-1"><em><strong>func</strong></em> <code>message_handler_thread(i_chans: Iterable[Chan[Any]])</code> <a class="header-anchor" href="#func-message-handler-thread-i-chans-iterable-chan-any" aria-label="Permalink to "***func*** `message_handler_thread(i_chans: Iterable[Chan[Any]])`""></a></h3><p><strong>参数</strong>:</p><blockquote><ul><li>i_chans: 多路输入管道组</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/__init__.py#L15" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> message_handler_thread</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(i_chans: Iterable[Chan[Any]]):</span></span>\n<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> msg </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> select(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">*</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">i_chans):</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.debug(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span>\n<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> logger.info(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">f</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Recv from anybot </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">{</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">msg</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">}</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)</span></span></code></pre></div></details>',7)]))}const g=i(t,[["render",h]]);export{c as __pageData,g as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as e,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.session.matcher","description":"","frontmatter":{"title":"liteyuki.session.matcher"},"headers":[],"relativePath":"dev/api/session/matcher.md","filePath":"zh/dev/api/session/matcher.md","lastUpdated":null}'),t={name:"dev/api/session/matcher.md"};function l(h,s,r,p,k,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-matcher" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.matcher</code> <a class="header-anchor" href="#模块-liteyuki-session-matcher" aria-label="Permalink to "**模块** \`liteyuki.session.matcher\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:51 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : matcher.py @Software: PyCharm</p><h3 id="class-matcher" tabindex="-1"><em><strong>class</strong></em> <code>Matcher</code> <a class="header-anchor" href="#class-matcher" aria-label="Permalink to "***class*** \`Matcher\`""></a></h3><hr><h4 id="func-init-self-rule-rule-priority-int-block-bool" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, rule: Rule, priority: int, block: bool)</code> <a class="header-anchor" href="#func-init-self-rule-rule-priority-int-block-bool" aria-label="Permalink to "***func*** \`__init__(self, rule: Rule, priority: int, block: bool)\`""></a></h4><p><strong>说明</strong>: 匹配器</p><p><strong>参数</strong>:</p><blockquote><ul><li>rule: 规则</li><li>priority: 优先级 >= 0</li><li>block: 是否阻断后续优先级更低的匹配器</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/matcher.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, rule: Rule, priority: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, block: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as e,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.session.matcher","description":"","frontmatter":{"title":"liteyuki.session.matcher"},"headers":[],"relativePath":"dev/api/session/matcher.md","filePath":"zh/dev/api/session/matcher.md","lastUpdated":null}'),t={name:"dev/api/session/matcher.md"};function l(h,s,r,p,k,o){return a(),e("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-session-matcher" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.matcher</code> <a class="header-anchor" href="#模块-liteyuki-session-matcher" aria-label="Permalink to "**模块** \`liteyuki.session.matcher\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:51 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : matcher.py @Software: PyCharm</p><h3 id="class-matcher" tabindex="-1"><em><strong>class</strong></em> <code>Matcher</code> <a class="header-anchor" href="#class-matcher" aria-label="Permalink to "***class*** \`Matcher\`""></a></h3><hr><h4 id="func-init-self-rule-rule-priority-int-block-bool" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, rule: Rule, priority: int, block: bool)</code> <a class="header-anchor" href="#func-init-self-rule-rule-priority-int-block-bool" aria-label="Permalink to "***func*** \`__init__(self, rule: Rule, priority: int, block: bool)\`""></a></h4><p><strong>说明</strong>: 匹配器</p><p><strong>参数</strong>:</p><blockquote><ul><li>rule: 规则</li><li>priority: 优先级 >= 0</li><li>block: 是否阻断后续优先级更低的匹配器</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/matcher.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, rule: Rule, priority: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, block: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.rule </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> rule</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.priority </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> priority</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.block </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> block</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as e,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"liteyuki.session.matcher","description":"","frontmatter":{"title":"liteyuki.session.matcher"},"headers":[],"relativePath":"dev/api/session/matcher.md","filePath":"zh/dev/api/session/matcher.md","lastUpdated":null}'),t={name:"dev/api/session/matcher.md"};function l(h,s,r,p,k,o){return n(),a("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-matcher" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.matcher</code> <a class="header-anchor" href="#模块-liteyuki-session-matcher" aria-label="Permalink to "**模块** \`liteyuki.session.matcher\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:51 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : matcher.py @Software: PyCharm</p><h3 id="class-matcher" tabindex="-1"><em><strong>class</strong></em> <code>Matcher</code> <a class="header-anchor" href="#class-matcher" aria-label="Permalink to "***class*** \`Matcher\`""></a></h3><hr><h4 id="func-init-self-rule-rule-priority-int-block-bool" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, rule: Rule, priority: int, block: bool)</code> <a class="header-anchor" href="#func-init-self-rule-rule-priority-int-block-bool" aria-label="Permalink to "***func*** \`__init__(self, rule: Rule, priority: int, block: bool)\`""></a></h4><p><strong>说明</strong>: 匹配器</p><p><strong>参数</strong>:</p><blockquote><ul><li>rule: 规则</li><li>priority: 优先级 >= 0</li><li>block: 是否阻断后续优先级更低的匹配器</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/matcher.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, rule: Rule, priority: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, block: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
import{_ as i,o as a,c as e,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"liteyuki.session.matcher","description":"","frontmatter":{"title":"liteyuki.session.matcher"},"headers":[],"relativePath":"dev/api/session/matcher.md","filePath":"zh/dev/api/session/matcher.md","lastUpdated":null}'),t={name:"dev/api/session/matcher.md"};function l(h,s,r,p,k,o){return a(),e("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-session-matcher" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.matcher</code> <a class="header-anchor" href="#模块-liteyuki-session-matcher" aria-label="Permalink to "**模块** \`liteyuki.session.matcher\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:51 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : matcher.py @Software: PyCharm</p><h3 id="class-matcher" tabindex="-1"><em><strong>class</strong></em> <code>Matcher</code> <a class="header-anchor" href="#class-matcher" aria-label="Permalink to "***class*** \`Matcher\`""></a></h3><hr><h4 id="func-init-self-rule-rule-priority-int-block-bool" tabindex="-1"><em><strong>func</strong></em> <code>__init__(self, rule: Rule, priority: int, block: bool)</code> <a class="header-anchor" href="#func-init-self-rule-rule-priority-int-block-bool" aria-label="Permalink to "***func*** \`__init__(self, rule: Rule, priority: int, block: bool)\`""></a></h4><p><strong>说明</strong>: 匹配器</p><p><strong>参数</strong>:</p><blockquote><ul><li>rule: 规则</li><li>priority: 优先级 >= 0</li><li>block: 是否阻断后续优先级更低的匹配器</li></ul></blockquote><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/matcher.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> __init__</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(self, rule: Rule, priority: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">int</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, block: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.rule </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> rule</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.priority </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> priority</span></span>
|
||||
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> self</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">.block </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">=</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> block</span></span>
|
@ -1 +1 @@
|
||||
import{_ as a,c as t,a7 as s,o as r}from"./chunks/framework.jrU0lkHV.js";const h=JSON.parse('{"title":"liteyuki.session.message.segments","description":"","frontmatter":{"title":"liteyuki.session.message.segments"},"headers":[],"relativePath":"dev/api/session/message/segments.md","filePath":"zh/dev/api/session/message/segments.md","lastUpdated":null}'),o={name:"dev/api/session/message/segments.md"};function n(l,e,d,i,c,m){return r(),t("div",null,e[0]||(e[0]=[s('<h1 id="模块-liteyuki-session-message-segments" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.message.segments</code> <a class="header-anchor" href="#模块-liteyuki-session-message-segments" aria-label="Permalink to "**模块** `liteyuki.session.message.segments`""></a></h1><h3 id="class-baseseg-basemodel" tabindex="-1"><em><strong>class</strong></em> <code>BaseSeg(BaseModel)</code> <a class="header-anchor" href="#class-baseseg-basemodel" aria-label="Permalink to "***class*** `BaseSeg(BaseModel)`""></a></h3><h4 id="attr-type-str-segment" tabindex="-1"><em><strong>attr</strong></em> <code>type: str = 'Segment'</code> <a class="header-anchor" href="#attr-type-str-segment" aria-label="Permalink to "***attr*** `type: str = 'Segment'`""></a></h4><h4 id="attr-data-dict-str-any-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>data: dict[str, Any] = NO_DEFAULT</code> <a class="header-anchor" href="#attr-data-dict-str-any-no-default" aria-label="Permalink to "***attr*** `data: dict[str, Any] = NO_DEFAULT`""></a></h4><h3 id="class-text-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Text(BaseSeg)</code> <a class="header-anchor" href="#class-text-baseseg" aria-label="Permalink to "***class*** `Text(BaseSeg)`""></a></h3><h4 id="attr-content-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>content: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-content-str-no-default" aria-label="Permalink to "***attr*** `content: str = NO_DEFAULT`""></a></h4><h3 id="class-image-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Image(BaseSeg)</code> <a class="header-anchor" href="#class-image-baseseg" aria-label="Permalink to "***class*** `Image(BaseSeg)`""></a></h3><h4 id="attr-url-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>url: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-url-str-no-default" aria-label="Permalink to "***attr*** `url: str = NO_DEFAULT`""></a></h4>',8)]))}const u=a(o,[["render",n]]);export{h as __pageData,u as default};
|
||||
import{_ as a,o as t,c as s,a7 as r}from"./chunks/framework._avq4Ty7.js";const h=JSON.parse('{"title":"liteyuki.session.message.segments","description":"","frontmatter":{"title":"liteyuki.session.message.segments"},"headers":[],"relativePath":"dev/api/session/message/segments.md","filePath":"zh/dev/api/session/message/segments.md","lastUpdated":null}'),o={name:"dev/api/session/message/segments.md"};function n(l,e,d,i,c,m){return t(),s("div",null,e[0]||(e[0]=[r('<h1 id="模块-liteyuki-session-message-segments" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.message.segments</code> <a class="header-anchor" href="#模块-liteyuki-session-message-segments" aria-label="Permalink to "**模块** `liteyuki.session.message.segments`""></a></h1><h3 id="class-baseseg-basemodel" tabindex="-1"><em><strong>class</strong></em> <code>BaseSeg(BaseModel)</code> <a class="header-anchor" href="#class-baseseg-basemodel" aria-label="Permalink to "***class*** `BaseSeg(BaseModel)`""></a></h3><h4 id="attr-type-str-segment" tabindex="-1"><em><strong>attr</strong></em> <code>type: str = 'Segment'</code> <a class="header-anchor" href="#attr-type-str-segment" aria-label="Permalink to "***attr*** `type: str = 'Segment'`""></a></h4><h4 id="attr-data-dict-str-any-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>data: dict[str, Any] = NO_DEFAULT</code> <a class="header-anchor" href="#attr-data-dict-str-any-no-default" aria-label="Permalink to "***attr*** `data: dict[str, Any] = NO_DEFAULT`""></a></h4><h3 id="class-text-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Text(BaseSeg)</code> <a class="header-anchor" href="#class-text-baseseg" aria-label="Permalink to "***class*** `Text(BaseSeg)`""></a></h3><h4 id="attr-content-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>content: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-content-str-no-default" aria-label="Permalink to "***attr*** `content: str = NO_DEFAULT`""></a></h4><h3 id="class-image-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Image(BaseSeg)</code> <a class="header-anchor" href="#class-image-baseseg" aria-label="Permalink to "***class*** `Image(BaseSeg)`""></a></h3><h4 id="attr-url-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>url: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-url-str-no-default" aria-label="Permalink to "***attr*** `url: str = NO_DEFAULT`""></a></h4>',8)]))}const u=a(o,[["render",n]]);export{h as __pageData,u as default};
|
@ -1 +1 @@
|
||||
import{_ as a,c as t,a7 as s,o as r}from"./chunks/framework.jrU0lkHV.js";const h=JSON.parse('{"title":"liteyuki.session.message.segments","description":"","frontmatter":{"title":"liteyuki.session.message.segments"},"headers":[],"relativePath":"dev/api/session/message/segments.md","filePath":"zh/dev/api/session/message/segments.md","lastUpdated":null}'),o={name:"dev/api/session/message/segments.md"};function n(l,e,d,i,c,m){return r(),t("div",null,e[0]||(e[0]=[s('<h1 id="模块-liteyuki-session-message-segments" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.message.segments</code> <a class="header-anchor" href="#模块-liteyuki-session-message-segments" aria-label="Permalink to "**模块** `liteyuki.session.message.segments`""></a></h1><h3 id="class-baseseg-basemodel" tabindex="-1"><em><strong>class</strong></em> <code>BaseSeg(BaseModel)</code> <a class="header-anchor" href="#class-baseseg-basemodel" aria-label="Permalink to "***class*** `BaseSeg(BaseModel)`""></a></h3><h4 id="attr-type-str-segment" tabindex="-1"><em><strong>attr</strong></em> <code>type: str = 'Segment'</code> <a class="header-anchor" href="#attr-type-str-segment" aria-label="Permalink to "***attr*** `type: str = 'Segment'`""></a></h4><h4 id="attr-data-dict-str-any-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>data: dict[str, Any] = NO_DEFAULT</code> <a class="header-anchor" href="#attr-data-dict-str-any-no-default" aria-label="Permalink to "***attr*** `data: dict[str, Any] = NO_DEFAULT`""></a></h4><h3 id="class-text-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Text(BaseSeg)</code> <a class="header-anchor" href="#class-text-baseseg" aria-label="Permalink to "***class*** `Text(BaseSeg)`""></a></h3><h4 id="attr-content-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>content: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-content-str-no-default" aria-label="Permalink to "***attr*** `content: str = NO_DEFAULT`""></a></h4><h3 id="class-image-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Image(BaseSeg)</code> <a class="header-anchor" href="#class-image-baseseg" aria-label="Permalink to "***class*** `Image(BaseSeg)`""></a></h3><h4 id="attr-url-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>url: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-url-str-no-default" aria-label="Permalink to "***attr*** `url: str = NO_DEFAULT`""></a></h4>',8)]))}const u=a(o,[["render",n]]);export{h as __pageData,u as default};
|
||||
import{_ as a,o as t,c as s,a7 as r}from"./chunks/framework._avq4Ty7.js";const h=JSON.parse('{"title":"liteyuki.session.message.segments","description":"","frontmatter":{"title":"liteyuki.session.message.segments"},"headers":[],"relativePath":"dev/api/session/message/segments.md","filePath":"zh/dev/api/session/message/segments.md","lastUpdated":null}'),o={name:"dev/api/session/message/segments.md"};function n(l,e,d,i,c,m){return t(),s("div",null,e[0]||(e[0]=[r('<h1 id="模块-liteyuki-session-message-segments" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.message.segments</code> <a class="header-anchor" href="#模块-liteyuki-session-message-segments" aria-label="Permalink to "**模块** `liteyuki.session.message.segments`""></a></h1><h3 id="class-baseseg-basemodel" tabindex="-1"><em><strong>class</strong></em> <code>BaseSeg(BaseModel)</code> <a class="header-anchor" href="#class-baseseg-basemodel" aria-label="Permalink to "***class*** `BaseSeg(BaseModel)`""></a></h3><h4 id="attr-type-str-segment" tabindex="-1"><em><strong>attr</strong></em> <code>type: str = 'Segment'</code> <a class="header-anchor" href="#attr-type-str-segment" aria-label="Permalink to "***attr*** `type: str = 'Segment'`""></a></h4><h4 id="attr-data-dict-str-any-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>data: dict[str, Any] = NO_DEFAULT</code> <a class="header-anchor" href="#attr-data-dict-str-any-no-default" aria-label="Permalink to "***attr*** `data: dict[str, Any] = NO_DEFAULT`""></a></h4><h3 id="class-text-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Text(BaseSeg)</code> <a class="header-anchor" href="#class-text-baseseg" aria-label="Permalink to "***class*** `Text(BaseSeg)`""></a></h3><h4 id="attr-content-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>content: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-content-str-no-default" aria-label="Permalink to "***attr*** `content: str = NO_DEFAULT`""></a></h4><h3 id="class-image-baseseg" tabindex="-1"><em><strong>class</strong></em> <code>Image(BaseSeg)</code> <a class="header-anchor" href="#class-image-baseseg" aria-label="Permalink to "***class*** `Image(BaseSeg)`""></a></h3><h4 id="attr-url-str-no-default" tabindex="-1"><em><strong>attr</strong></em> <code>url: str = NO_DEFAULT</code> <a class="header-anchor" href="#attr-url-str-no-default" aria-label="Permalink to "***attr*** `url: str = NO_DEFAULT`""></a></h4>',8)]))}const u=a(o,[["render",n]]);export{h as __pageData,u as default};
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const y=JSON.parse('{"title":"liteyuki.session.on","description":"","frontmatter":{"title":"liteyuki.session.on"},"headers":[],"relativePath":"dev/api/session/on.md","filePath":"zh/dev/api/session/on.md","lastUpdated":null}'),n={name:"dev/api/session/on.md"};function l(h,s,r,k,p,o){return e(),a("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-session-on" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.on</code> <a class="header-anchor" href="#模块-liteyuki-session-on" aria-label="Permalink to "**模块** \`liteyuki.session.on\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:52 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : on.py @Software: PyCharm</p><hr><h3 id="func-add-matcher-matcher-matcher" tabindex="-1"><em><strong>func</strong></em> <code>add_matcher(matcher: Matcher)</code> <a class="header-anchor" href="#func-add-matcher-matcher-matcher" aria-label="Permalink to "***func*** \`add_matcher(matcher: Matcher)\`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/on.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> add_matcher</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(matcher: Matcher):</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as e}from"./chunks/framework._avq4Ty7.js";const y=JSON.parse('{"title":"liteyuki.session.on","description":"","frontmatter":{"title":"liteyuki.session.on"},"headers":[],"relativePath":"dev/api/session/on.md","filePath":"zh/dev/api/session/on.md","lastUpdated":null}'),n={name:"dev/api/session/on.md"};function l(h,s,r,k,p,o){return a(),t("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-on" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.on</code> <a class="header-anchor" href="#模块-liteyuki-session-on" aria-label="Permalink to "**模块** \`liteyuki.session.on\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:52 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : on.py @Software: PyCharm</p><hr><h3 id="func-add-matcher-matcher-matcher" tabindex="-1"><em><strong>func</strong></em> <code>add_matcher(matcher: Matcher)</code> <a class="header-anchor" href="#func-add-matcher-matcher-matcher" aria-label="Permalink to "***func*** \`add_matcher(matcher: Matcher)\`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/on.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> add_matcher</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(matcher: Matcher):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> i, m </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> enumerate</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(_matcher_list):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> m.priority </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> matcher.priority:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _matcher_list.insert(i, matcher)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as e}from"./chunks/framework.jrU0lkHV.js";const y=JSON.parse('{"title":"liteyuki.session.on","description":"","frontmatter":{"title":"liteyuki.session.on"},"headers":[],"relativePath":"dev/api/session/on.md","filePath":"zh/dev/api/session/on.md","lastUpdated":null}'),n={name:"dev/api/session/on.md"};function l(h,s,r,k,p,o){return e(),a("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-session-on" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.on</code> <a class="header-anchor" href="#模块-liteyuki-session-on" aria-label="Permalink to "**模块** \`liteyuki.session.on\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:52 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : on.py @Software: PyCharm</p><hr><h3 id="func-add-matcher-matcher-matcher" tabindex="-1"><em><strong>func</strong></em> <code>add_matcher(matcher: Matcher)</code> <a class="header-anchor" href="#func-add-matcher-matcher-matcher" aria-label="Permalink to "***func*** \`add_matcher(matcher: Matcher)\`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/on.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> add_matcher</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(matcher: Matcher):</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as e}from"./chunks/framework._avq4Ty7.js";const y=JSON.parse('{"title":"liteyuki.session.on","description":"","frontmatter":{"title":"liteyuki.session.on"},"headers":[],"relativePath":"dev/api/session/on.md","filePath":"zh/dev/api/session/on.md","lastUpdated":null}'),n={name:"dev/api/session/on.md"};function l(h,s,r,k,p,o){return a(),t("div",null,s[0]||(s[0]=[e(`<h1 id="模块-liteyuki-session-on" tabindex="-1"><strong>模块</strong> <code>liteyuki.session.on</code> <a class="header-anchor" href="#模块-liteyuki-session-on" aria-label="Permalink to "**模块** \`liteyuki.session.on\`""></a></h1><p>Copyright (C) 2020-2024 LiteyukiStudio. All Rights Reserved</p><p>@Time : 2024/8/19 下午10:52 @Author : snowykami @Email : <a href="mailto:snowykami@outlook.com" target="_blank" rel="noreferrer">snowykami@outlook.com</a> @File : on.py @Software: PyCharm</p><hr><h3 id="func-add-matcher-matcher-matcher" tabindex="-1"><em><strong>func</strong></em> <code>add_matcher(matcher: Matcher)</code> <a class="header-anchor" href="#func-add-matcher-matcher-matcher" aria-label="Permalink to "***func*** \`add_matcher(matcher: Matcher)\`""></a></h3><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/session/on.py#L21" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> add_matcher</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(matcher: Matcher):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> for</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> i, m </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">in</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> enumerate</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(_matcher_list):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> m.priority </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"><</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> matcher.priority:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> _matcher_list.insert(i, matcher)</span></span>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.utils","description":"","frontmatter":{"title":"liteyuki.utils"},"headers":[],"relativePath":"dev/api/utils.md","filePath":"zh/dev/api/utils.md","lastUpdated":null}'),l={name:"dev/api/utils.md"};function h(e,s,p,k,r,o){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-utils" tabindex="-1"><strong>模块</strong> <code>liteyuki.utils</code> <a class="header-anchor" href="#模块-liteyuki-utils" aria-label="Permalink to "**模块** \`liteyuki.utils\`""></a></h1><p>一些常用的工具类,部分来源于 nonebot 并遵循其许可进行修改</p><hr><h3 id="func-is-coroutine-callable-call-callable-any-bool" tabindex="-1"><em><strong>func</strong></em> <code>is_coroutine_callable(call: Callable[..., Any]) -> bool</code> <a class="header-anchor" href="#func-is-coroutine-callable-call-callable-any-bool" aria-label="Permalink to "***func*** \`is_coroutine_callable(call: Callable[..., Any]) -> bool\`""></a></h3><p><strong>说明</strong>: 判断是否为协程可调用对象</p><p><strong>参数</strong>:</p><blockquote><ul><li>call: 可调用对象</li></ul></blockquote><p><strong>返回</strong>: bool: 是否为协程可调用对象</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/utils.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_coroutine_callable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(call: Callable[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.utils","description":"","frontmatter":{"title":"liteyuki.utils"},"headers":[],"relativePath":"dev/api/utils.md","filePath":"zh/dev/api/utils.md","lastUpdated":null}'),l={name:"dev/api/utils.md"};function h(e,s,p,k,r,o){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-utils" tabindex="-1"><strong>模块</strong> <code>liteyuki.utils</code> <a class="header-anchor" href="#模块-liteyuki-utils" aria-label="Permalink to "**模块** \`liteyuki.utils\`""></a></h1><p>一些常用的工具类,部分来源于 nonebot 并遵循其许可进行修改</p><hr><h3 id="func-is-coroutine-callable-call-callable-any-bool" tabindex="-1"><em><strong>func</strong></em> <code>is_coroutine_callable(call: Callable[..., Any]) -> bool</code> <a class="header-anchor" href="#func-is-coroutine-callable-call-callable-any-bool" aria-label="Permalink to "***func*** \`is_coroutine_callable(call: Callable[..., Any]) -> bool\`""></a></h3><p><strong>说明</strong>: 判断是否为协程可调用对象</p><p><strong>参数</strong>:</p><blockquote><ul><li>call: 可调用对象</li></ul></blockquote><p><strong>返回</strong>: bool: 是否为协程可调用对象</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/utils.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_coroutine_callable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(call: Callable[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.isroutine(call):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.iscoroutinefunction(call)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.isclass(call):</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"liteyuki.utils","description":"","frontmatter":{"title":"liteyuki.utils"},"headers":[],"relativePath":"dev/api/utils.md","filePath":"zh/dev/api/utils.md","lastUpdated":null}'),l={name:"dev/api/utils.md"};function h(e,s,p,k,r,o){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="模块-liteyuki-utils" tabindex="-1"><strong>模块</strong> <code>liteyuki.utils</code> <a class="header-anchor" href="#模块-liteyuki-utils" aria-label="Permalink to "**模块** \`liteyuki.utils\`""></a></h1><p>一些常用的工具类,部分来源于 nonebot 并遵循其许可进行修改</p><hr><h3 id="func-is-coroutine-callable-call-callable-any-bool" tabindex="-1"><em><strong>func</strong></em> <code>is_coroutine_callable(call: Callable[..., Any]) -> bool</code> <a class="header-anchor" href="#func-is-coroutine-callable-call-callable-any-bool" aria-label="Permalink to "***func*** \`is_coroutine_callable(call: Callable[..., Any]) -> bool\`""></a></h3><p><strong>说明</strong>: 判断是否为协程可调用对象</p><p><strong>参数</strong>:</p><blockquote><ul><li>call: 可调用对象</li></ul></blockquote><p><strong>返回</strong>: bool: 是否为协程可调用对象</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/utils.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_coroutine_callable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(call: Callable[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"liteyuki.utils","description":"","frontmatter":{"title":"liteyuki.utils"},"headers":[],"relativePath":"dev/api/utils.md","filePath":"zh/dev/api/utils.md","lastUpdated":null}'),l={name:"dev/api/utils.md"};function h(e,s,p,k,r,o){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="模块-liteyuki-utils" tabindex="-1"><strong>模块</strong> <code>liteyuki.utils</code> <a class="header-anchor" href="#模块-liteyuki-utils" aria-label="Permalink to "**模块** \`liteyuki.utils\`""></a></h1><p>一些常用的工具类,部分来源于 nonebot 并遵循其许可进行修改</p><hr><h3 id="func-is-coroutine-callable-call-callable-any-bool" tabindex="-1"><em><strong>func</strong></em> <code>is_coroutine_callable(call: Callable[..., Any]) -> bool</code> <a class="header-anchor" href="#func-is-coroutine-callable-call-callable-any-bool" aria-label="Permalink to "***func*** \`is_coroutine_callable(call: Callable[..., Any]) -> bool\`""></a></h3><p><strong>说明</strong>: 判断是否为协程可调用对象</p><p><strong>参数</strong>:</p><blockquote><ul><li>call: 可调用对象</li></ul></blockquote><p><strong>返回</strong>: bool: 是否为协程可调用对象</p><details><summary><b>源代码</b> 或 <a href="https://github.com/LiteyukiStudio/LiteyukiBot/tree/main/liteyuki/utils.py#L17" target="_blank">在GitHub上查看</a></summary><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">def</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> is_coroutine_callable</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(call: Callable[</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">...</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, Any]) -> </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">bool</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.isroutine(call):</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> return</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.iscoroutinefunction(call)</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> if</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> inspect.isclass(call):</span></span>
|
@ -1 +1 @@
|
||||
import{_ as e,c as i,a7 as a,o as r}from"./chunks/framework.jrU0lkHV.js";const b=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726860160000}'),o={name:"dev/best_practices.md"};function l(n,t,u,h,s,c){return r(),i("div",null,t[0]||(t[0]=[a('<h1 id="最佳实践" tabindex="-1">最佳实践 <a class="header-anchor" href="#最佳实践" aria-label="Permalink to "最佳实践""></a></h1><h2 id="机器人应用" tabindex="-1">机器人应用 <a class="header-anchor" href="#机器人应用" aria-label="Permalink to "机器人应用""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>:轻雪官方机器人</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>:TriM 官方定制轻雪机器人</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>:基于 轻雪 和 github model 的可爱猫娘机器人</li></ul><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to "插件""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>:轻雪机器人 NoneBot 插件,让轻雪支持 NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>:NoneBot 插件,让 NoneBot 支持轻雪</li></ul><h2 id="其他" tabindex="-1">其他 <a class="header-anchor" href="#其他" aria-label="Permalink to "其他""></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>:轻雪官方星图,展示轻雪的所有实例及其位置分布</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>:TRSS LiteyukiBot 管理脚本</li><li><a href="https://github.com/LiteyukiStudio/litedoc" target="_blank" rel="noreferrer">litedoc</a>:轻雪API文档生成器</li><li>liteyukibot-api (闭源):轻雪机器人统计接口</li></ul>',7)]))}const k=e(o,[["render",l]]);export{b as __pageData,k as default};
|
||||
import{_ as e,o as i,c as a,a7 as r}from"./chunks/framework._avq4Ty7.js";const b=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726860160000}'),o={name:"dev/best_practices.md"};function l(n,t,u,h,s,c){return i(),a("div",null,t[0]||(t[0]=[r('<h1 id="最佳实践" tabindex="-1">最佳实践 <a class="header-anchor" href="#最佳实践" aria-label="Permalink to "最佳实践""></a></h1><h2 id="机器人应用" tabindex="-1">机器人应用 <a class="header-anchor" href="#机器人应用" aria-label="Permalink to "机器人应用""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>:轻雪官方机器人</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>:TriM 官方定制轻雪机器人</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>:基于 轻雪 和 github model 的可爱猫娘机器人</li></ul><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to "插件""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>:轻雪机器人 NoneBot 插件,让轻雪支持 NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>:NoneBot 插件,让 NoneBot 支持轻雪</li></ul><h2 id="其他" tabindex="-1">其他 <a class="header-anchor" href="#其他" aria-label="Permalink to "其他""></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>:轻雪官方星图,展示轻雪的所有实例及其位置分布</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>:TRSS LiteyukiBot 管理脚本</li><li><a href="https://github.com/LiteyukiStudio/litedoc" target="_blank" rel="noreferrer">litedoc</a>:轻雪API文档生成器</li><li>liteyukibot-api (闭源):轻雪机器人统计接口</li></ul>',7)]))}const k=e(o,[["render",l]]);export{b as __pageData,k as default};
|
@ -1 +1 @@
|
||||
import{_ as e,c as i,a7 as a,o as r}from"./chunks/framework.jrU0lkHV.js";const b=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726860160000}'),o={name:"dev/best_practices.md"};function l(n,t,u,h,s,c){return r(),i("div",null,t[0]||(t[0]=[a('<h1 id="最佳实践" tabindex="-1">最佳实践 <a class="header-anchor" href="#最佳实践" aria-label="Permalink to "最佳实践""></a></h1><h2 id="机器人应用" tabindex="-1">机器人应用 <a class="header-anchor" href="#机器人应用" aria-label="Permalink to "机器人应用""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>:轻雪官方机器人</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>:TriM 官方定制轻雪机器人</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>:基于 轻雪 和 github model 的可爱猫娘机器人</li></ul><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to "插件""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>:轻雪机器人 NoneBot 插件,让轻雪支持 NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>:NoneBot 插件,让 NoneBot 支持轻雪</li></ul><h2 id="其他" tabindex="-1">其他 <a class="header-anchor" href="#其他" aria-label="Permalink to "其他""></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>:轻雪官方星图,展示轻雪的所有实例及其位置分布</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>:TRSS LiteyukiBot 管理脚本</li><li><a href="https://github.com/LiteyukiStudio/litedoc" target="_blank" rel="noreferrer">litedoc</a>:轻雪API文档生成器</li><li>liteyukibot-api (闭源):轻雪机器人统计接口</li></ul>',7)]))}const k=e(o,[["render",l]]);export{b as __pageData,k as default};
|
||||
import{_ as e,o as i,c as a,a7 as r}from"./chunks/framework._avq4Ty7.js";const b=JSON.parse('{"title":"最佳实践","description":"","frontmatter":{"title":"最佳实践","order":10},"headers":[],"relativePath":"dev/best_practices.md","filePath":"zh/dev/best_practices.md","lastUpdated":1726860160000}'),o={name:"dev/best_practices.md"};function l(n,t,u,h,s,c){return i(),a("div",null,t[0]||(t[0]=[r('<h1 id="最佳实践" tabindex="-1">最佳实践 <a class="header-anchor" href="#最佳实践" aria-label="Permalink to "最佳实践""></a></h1><h2 id="机器人应用" tabindex="-1">机器人应用 <a class="header-anchor" href="#机器人应用" aria-label="Permalink to "机器人应用""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/LiteyukiBot" target="_blank" rel="noreferrer">LiteyukiBot</a>:轻雪官方机器人</li><li><a href="https://github.com/TriM-Organization/LiteyukiBot-TriM" target="_blank" rel="noreferrer">LiteyukiBot-TriM</a>:TriM 官方定制轻雪机器人</li><li><a href="https://git.liteyuki.icu/LiteyukiStudio/marsho-alpha" target="_blank" rel="noreferrer">Liteyuki Marsho</a>:基于 轻雪 和 github model 的可爱猫娘机器人</li></ul><h2 id="插件" tabindex="-1">插件 <a class="header-anchor" href="#插件" aria-label="Permalink to "插件""></a></h2><ul><li><a href="https://github.com/LiteyukiStudio/liteyukibot-plugin-nonebot" target="_blank" rel="noreferrer">liteyukibot-plugin-nonebot</a>:轻雪机器人 NoneBot 插件,让轻雪支持 NoneBot</li><li><a href="https://github.com/LiteyukiStudio/nonebot-plugin-liteyukibot" target="_blank" rel="noreferrer">nonebot-plugin-liteyukibot</a>:NoneBot 插件,让 NoneBot 支持轻雪</li></ul><h2 id="其他" tabindex="-1">其他 <a class="header-anchor" href="#其他" aria-label="Permalink to "其他""></a></h2><ul><li><a href="https://starmap.liteyuki.icu" target="_blank" rel="noreferrer">liteyuki starmap</a>:轻雪官方星图,展示轻雪的所有实例及其位置分布</li><li><a href="https://timerainstarsky.github.io/TRSS_Liteyuki/" target="_blank" rel="noreferrer">TRSS_Liteyuki</a>:TRSS LiteyukiBot 管理脚本</li><li><a href="https://github.com/LiteyukiStudio/litedoc" target="_blank" rel="noreferrer">litedoc</a>:轻雪API文档生成器</li><li>liteyukibot-api (闭源):轻雪机器人统计接口</li></ul>',7)]))}const k=e(o,[["render",l]]);export{b as __pageData,k as default};
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const o=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"dev/comm.md","filePath":"zh/dev/comm.md","lastUpdated":1729881298000}'),l={name:"dev/comm.md"};function e(h,s,p,k,r,d){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="通道通信" tabindex="-1"><strong>通道通信</strong> <a class="header-anchor" href="#通道通信" aria-label="Permalink to "**通道通信**""></a></h1><h3 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h3><p>轻雪运行在主进程 MainProcess 里,有部分实现插件为了一些功能在子进程中运行,这样两个进程上下文是不会互相干扰的,因此无法通过共享内存和直接对象传递进行通信。</p><p>例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。</p><h3 id="示例" tabindex="-1">示例 <a class="header-anchor" href="#示例" aria-label="Permalink to "示例""></a></h3><p>通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由<code>chan.on_receive()</code>装饰回调函数实现,主动模式需调用<code>chan.receive()</code>实现</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code>,</li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const o=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"dev/comm.md","filePath":"zh/dev/comm.md","lastUpdated":1729881298000}'),l={name:"dev/comm.md"};function e(h,s,p,k,r,d){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="通道通信" tabindex="-1"><strong>通道通信</strong> <a class="header-anchor" href="#通道通信" aria-label="Permalink to "**通道通信**""></a></h1><h3 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h3><p>轻雪运行在主进程 MainProcess 里,有部分实现插件为了一些功能在子进程中运行,这样两个进程上下文是不会互相干扰的,因此无法通过共享内存和直接对象传递进行通信。</p><p>例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。</p><h3 id="示例" tabindex="-1">示例 <a class="header-anchor" href="#示例" aria-label="Permalink to "示例""></a></h3><p>通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由<code>chan.on_receive()</code>装饰回调函数实现,主动模式需调用<code>chan.receive()</code>实现</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code>,</li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.comm </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_channel, Channel</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_bot</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const o=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"dev/comm.md","filePath":"zh/dev/comm.md","lastUpdated":1729881298000}'),l={name:"dev/comm.md"};function e(h,s,p,k,r,d){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="通道通信" tabindex="-1"><strong>通道通信</strong> <a class="header-anchor" href="#通道通信" aria-label="Permalink to "**通道通信**""></a></h1><h3 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h3><p>轻雪运行在主进程 MainProcess 里,有部分实现插件为了一些功能在子进程中运行,这样两个进程上下文是不会互相干扰的,因此无法通过共享内存和直接对象传递进行通信。</p><p>例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。</p><h3 id="示例" tabindex="-1">示例 <a class="header-anchor" href="#示例" aria-label="Permalink to "示例""></a></h3><p>通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由<code>chan.on_receive()</code>装饰回调函数实现,主动模式需调用<code>chan.receive()</code>实现</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code>,</li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const o=JSON.parse('{"title":"进程通信","description":"","frontmatter":{"title":"进程通信","order":4},"headers":[],"relativePath":"dev/comm.md","filePath":"zh/dev/comm.md","lastUpdated":1729881298000}'),l={name:"dev/comm.md"};function e(h,s,p,k,r,d){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="通道通信" tabindex="-1"><strong>通道通信</strong> <a class="header-anchor" href="#通道通信" aria-label="Permalink to "**通道通信**""></a></h1><h3 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h3><p>轻雪运行在主进程 MainProcess 里,有部分实现插件为了一些功能在子进程中运行,这样两个进程上下文是不会互相干扰的,因此无法通过共享内存和直接对象传递进行通信。</p><p>例如子进程接收到用户信息需要重启机器人,这时可以通过通道对主进程发送消息,主进程接收到消息后重启对应子进程。</p><h3 id="示例" tabindex="-1">示例 <a class="header-anchor" href="#示例" aria-label="Permalink to "示例""></a></h3><p>通道是全双工的,有两种接收模式,但一个通道只能使用一种,即被动模式和主动模式,被动模式由<code>chan.on_receive()</code>装饰回调函数实现,主动模式需调用<code>chan.receive()</code>实现</p><ul><li>创建子进程的同时会初始化一个被动通道和一个主动通道,且通道标识为<code>{process_name}-active</code>和<code>{process_name}-passive</code>,</li><li>主进程中通过<code>get_channel</code>函数获取通道对象</li><li>子进程中导入单例<code>active_channel</code>及<code>passive_channel</code>即可</li></ul><blockquote><p>在轻雪插件中(主进程中)</p></blockquote><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> asyncio</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.comm </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_channel, Channel</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> get_bot</span></span>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"dev/lyfunc.md","filePath":"zh/dev/lyfunc.md","lastUpdated":1725101868000}'),l={name:"dev/lyfunc.md"};function e(h,s,p,k,d,r){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to "**轻雪函数**""></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to "**函数文件**""></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出"hello world"</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"dev/lyfunc.md","filePath":"zh/dev/lyfunc.md","lastUpdated":1725101868000}'),l={name:"dev/lyfunc.md"};function e(h,s,p,k,d,r){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to "**轻雪函数**""></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to "**函数文件**""></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出"hello world"</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cmd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> world</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 如果你想同时输出多行内容可以尝试换行符(Python格式)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"dev/lyfunc.md","filePath":"zh/dev/lyfunc.md","lastUpdated":1725101868000}'),l={name:"dev/lyfunc.md"};function e(h,s,p,k,d,r){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to "**轻雪函数**""></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to "**函数文件**""></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出"hello world"</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"轻雪函数","description":"","frontmatter":{"title":"轻雪函数","order":2},"headers":[],"relativePath":"dev/lyfunc.md","filePath":"zh/dev/lyfunc.md","lastUpdated":1725101868000}'),l={name:"dev/lyfunc.md"};function e(h,s,p,k,d,r){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="轻雪函数" tabindex="-1"><strong>轻雪函数</strong> <a class="header-anchor" href="#轻雪函数" aria-label="Permalink to "**轻雪函数**""></a></h1><p>轻雪函数 Liteyuki Function 是轻雪的一个功能,它允许你在轻雪中运行一些自定义的由数据驱动的命令,类似于Minecraft的mcfunction,属于资源包的一部分,但需单独起篇幅.</p><h3 id="函数文件" tabindex="-1"><strong>函数文件</strong> <a class="header-anchor" href="#函数文件" aria-label="Permalink to "**函数文件**""></a></h3><p>函数文件放在资源包的<code>functions</code>目录下,文件名以<code>.mcfunction</code> <code>.lyfunction</code> <code>.lyf</code>结尾,例如<code>test.mcfunction</code>,文件内容为一系列的命令,每行一个命令,支持单行注释<code>#</code>(编辑时的语法高亮可采取<code>shell</code>格式),例如:</p><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 在发信器输出"hello world"</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">cmd</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> echo</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> hello</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> world</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 如果你想同时输出多行内容可以尝试换行符(Python格式)</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"插件开发","description":"","frontmatter":{"title":"插件开发","order":3},"headers":[],"relativePath":"dev/plugin.md","filePath":"zh/dev/plugin.md","lastUpdated":1729881298000}'),h={name:"dev/plugin.md"};function p(l,s,e,k,d,r){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><p>插件大致可分为应用(Application)、实现(Implementation)及服务(Service)等几种类型,大部分情况下一个插件通常承担着多个责任,可按需调整</p><p>应用:从总线通道接收到消息后进行处理,响应,以实现某些功能,例如<code>echo</code></p><p>实现:对接特定平台,把平台的消息转换为轻雪消息格式传入总线通道</p><p>服务:提供一系列对外的ipc/rpc/http等服务,供其他插件调用</p><p>我们鼓励使用<code>magicoca</code>进行对象传递来进行插件间通信而不是依赖关系,这样可以避免很多潜在的问题。</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to "开始""></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to "创建插件""></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"插件开发","description":"","frontmatter":{"title":"插件开发","order":3},"headers":[],"relativePath":"dev/plugin.md","filePath":"zh/dev/plugin.md","lastUpdated":1729881298000}'),h={name:"dev/plugin.md"};function p(l,s,e,k,d,r){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><p>插件大致可分为应用(Application)、实现(Implementation)及服务(Service)等几种类型,大部分情况下一个插件通常承担着多个责任,可按需调整</p><p>应用:从总线通道接收到消息后进行处理,响应,以实现某些功能,例如<code>echo</code></p><p>实现:对接特定平台,把平台的消息转换为轻雪消息格式传入总线通道</p><p>服务:提供一系列对外的ipc/rpc/http等服务,供其他插件调用</p><p>我们鼓励使用<code>magicoca</code>进行对象传递来进行插件间通信而不是依赖关系,这样可以避免很多潜在的问题。</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to "开始""></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to "创建插件""></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> .watch_dog </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 导入逻辑部分</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 定义插件元数据</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as n,o as t}from"./chunks/framework.jrU0lkHV.js";const E=JSON.parse('{"title":"插件开发","description":"","frontmatter":{"title":"插件开发","order":3},"headers":[],"relativePath":"dev/plugin.md","filePath":"zh/dev/plugin.md","lastUpdated":1729881298000}'),h={name:"dev/plugin.md"};function p(l,s,e,k,d,r){return t(),a("div",null,s[0]||(s[0]=[n(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><p>插件大致可分为应用(Application)、实现(Implementation)及服务(Service)等几种类型,大部分情况下一个插件通常承担着多个责任,可按需调整</p><p>应用:从总线通道接收到消息后进行处理,响应,以实现某些功能,例如<code>echo</code></p><p>实现:对接特定平台,把平台的消息转换为轻雪消息格式传入总线通道</p><p>服务:提供一系列对外的ipc/rpc/http等服务,供其他插件调用</p><p>我们鼓励使用<code>magicoca</code>进行对象传递来进行插件间通信而不是依赖关系,这样可以避免很多潜在的问题。</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to "开始""></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to "创建插件""></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
|
||||
import{_ as i,o as a,c as n,a7 as t}from"./chunks/framework._avq4Ty7.js";const E=JSON.parse('{"title":"插件开发","description":"","frontmatter":{"title":"插件开发","order":3},"headers":[],"relativePath":"dev/plugin.md","filePath":"zh/dev/plugin.md","lastUpdated":1729881298000}'),h={name:"dev/plugin.md"};function p(l,s,e,k,d,r){return a(),n("div",null,s[0]||(s[0]=[t(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>轻雪插件是轻雪内置的一部分功能,运行在主进程中,可以很高程度地扩展轻雪的功能</p><p>插件大致可分为应用(Application)、实现(Implementation)及服务(Service)等几种类型,大部分情况下一个插件通常承担着多个责任,可按需调整</p><p>应用:从总线通道接收到消息后进行处理,响应,以实现某些功能,例如<code>echo</code></p><p>实现:对接特定平台,把平台的消息转换为轻雪消息格式传入总线通道</p><p>服务:提供一系列对外的ipc/rpc/http等服务,供其他插件调用</p><p>我们鼓励使用<code>magicoca</code>进行对象传递来进行插件间通信而不是依赖关系,这样可以避免很多潜在的问题。</p><h2 id="开始" tabindex="-1">开始 <a class="header-anchor" href="#开始" aria-label="Permalink to "开始""></a></h2><h3 id="创建插件" tabindex="-1">创建插件 <a class="header-anchor" href="#创建插件" aria-label="Permalink to "创建插件""></a></h3><p>一个<code>.py</code>文件或一个包含<code>__init__.py</code>的文件夹即可被识别为插件</p><p>首先创建一个文件夹,例如<code>watchdog_plugin</code>,并在其中创建一个<code>__init__.py</code>文件,即可创建一个插件</p><p><code>__init__.py</code></p><div class="language-python vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">python</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> liteyuki.plugin </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> PluginMetadata, PluginType</span></span>
|
||||
<span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">from</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> .watch_dog </span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">import</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> *</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # 导入逻辑部分</span></span>
|
||||
<span class="line"></span>
|
||||
<span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># 定义插件元数据</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as a,c as i,a7 as e,o as l}from"./chunks/framework.jrU0lkHV.js";const k=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"dev/resource.md","filePath":"zh/dev/resource.md","lastUpdated":1725102337000}'),t={name:"dev/resource.md"};function n(p,s,d,h,c,o){return l(),i("div",null,s[0]||(s[0]=[e(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code>,<code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to "加载资源包""></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
|
||||
import{_ as a,o as i,c as e,a7 as l}from"./chunks/framework._avq4Ty7.js";const k=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"dev/resource.md","filePath":"zh/dev/resource.md","lastUpdated":1725102337000}'),t={name:"dev/resource.md"};function n(p,s,d,h,c,o){return i(),e("div",null,s[0]||(s[0]=[l(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code>,<code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to "加载资源包""></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">resources</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">└─resource_pack_1</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> ├─metadata.yml</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as a,c as i,a7 as e,o as l}from"./chunks/framework.jrU0lkHV.js";const k=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"dev/resource.md","filePath":"zh/dev/resource.md","lastUpdated":1725102337000}'),t={name:"dev/resource.md"};function n(p,s,d,h,c,o){return l(),i("div",null,s[0]||(s[0]=[e(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code>,<code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to "加载资源包""></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
|
||||
import{_ as a,o as i,c as e,a7 as l}from"./chunks/framework._avq4Ty7.js";const k=JSON.parse('{"title":"资源包开发","description":"","frontmatter":{"title":"资源包开发","order":1},"headers":[],"relativePath":"dev/resource.md","filePath":"zh/dev/resource.md","lastUpdated":1725102337000}'),t={name:"dev/resource.md"};function n(p,s,d,h,c,o){return i(),e("div",null,s[0]||(s[0]=[l(`<h1 id="简介" tabindex="-1">简介 <a class="header-anchor" href="#简介" aria-label="Permalink to "简介""></a></h1><p>资源包,亦可根据用途称为主题包、字体包、语言包等,它允许你一定程度上自定义轻雪的外观,并且不用修改源代码</p><ul><li><a href="./../store/resource.html">资源/主题商店</a>提供了一些资源包供你选择,你也可以自己制作资源包</li><li>资源包的制作很简单,如果你接触过<code>Minecraft</code>的资源包,那么你能够很快就上手,仅需按照原有路径进行文件替换即可,讲起打包成一个新的资源包。</li><li>部分内容制作需要一点点前端基础,例如<code>html</code>,<code>css</code></li><li>轻雪原版资源包请查看<code>LiteyukiBot/liteyuki/resources</code>,可以在此基础上进行修改</li><li>欢迎各位投稿资源包到轻雪资源商店</li></ul><p>请注意,主题包中的html渲染使用Js来规定数据的渲染位置,请确保您所编写的html代码能被Bot解析,否则会导致渲染失败或渲染结果不理想/异常/错位等无法预料的事情发生。推荐在编写html时同时更改对应Js代码,以避免出现无法预料的问题。</p><hr><h2 id="加载资源包" tabindex="-1">加载资源包 <a class="header-anchor" href="#加载资源包" aria-label="Permalink to "加载资源包""></a></h2><ul><li>资源包通常是以<code>.zip</code>格式压缩的,只需要将其解压到根目录<code>resources</code>目录下即可,注意不要嵌套文件夹,正常的路径应该是这样的</li></ul><div class="language-shell vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">main.py</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">resources</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">└─resource_pack_1</span></span>
|
||||
<span class="line"><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> ├─metadata.yml</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"Configurations","description":"","frontmatter":{"title":"Configurations","order":2},"headers":[],"relativePath":"en/deploy/config.md","filePath":"en/deploy/config.md","lastUpdated":1725101868000}'),e={name:"en/deploy/config.md"};function l(o,s,h,p,k,r){return n(),a("div",null,s[0]||(s[0]=[t(`<h1 id="configurations" tabindex="-1">Configurations <a class="header-anchor" href="#configurations" aria-label="Permalink to "Configurations""></a></h1><p>LiteyukiBot supports <code>yaml</code>, <code>json</code>, and <code>toml</code> as configuration files, depending on your personal preference.</p><p>When you first run LiteyukiBot, it will generate <code>config.yml</code> and the <code>config</code> directory. You can modify the configuration items and restart LiteyukiBot. In most cases, you only need to modify the <code>superusers</code> and <code>nickname</code> fields.</p><p>When starting, LiteyukiBot will load all configuration files in the project directory <code>config.yml/yaml/json/toml</code> and the <code>config</code> directory. You can create multiple configuration files in the <code>config</code> directory, and LiteyukiBot will automatically merge these configuration files.</p><h2 id="basic-configuration" tabindex="-1"><strong>Basic Configuration</strong> <a class="header-anchor" href="#basic-configuration" aria-label="Permalink to "**Basic Configuration**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># NoneBot configuration</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"Configurations","description":"","frontmatter":{"title":"Configurations","order":2},"headers":[],"relativePath":"en/deploy/config.md","filePath":"en/deploy/config.md","lastUpdated":1725101868000}'),e={name:"en/deploy/config.md"};function l(o,s,h,p,k,r){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="configurations" tabindex="-1">Configurations <a class="header-anchor" href="#configurations" aria-label="Permalink to "Configurations""></a></h1><p>LiteyukiBot supports <code>yaml</code>, <code>json</code>, and <code>toml</code> as configuration files, depending on your personal preference.</p><p>When you first run LiteyukiBot, it will generate <code>config.yml</code> and the <code>config</code> directory. You can modify the configuration items and restart LiteyukiBot. In most cases, you only need to modify the <code>superusers</code> and <code>nickname</code> fields.</p><p>When starting, LiteyukiBot will load all configuration files in the project directory <code>config.yml/yaml/json/toml</code> and the <code>config</code> directory. You can create multiple configuration files in the <code>config</code> directory, and LiteyukiBot will automatically merge these configuration files.</p><h2 id="basic-configuration" tabindex="-1"><strong>Basic Configuration</strong> <a class="header-anchor" href="#basic-configuration" aria-label="Permalink to "**Basic Configuration**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># NoneBot configuration</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> command_start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: [ </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"/"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">""</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Command prefix, if there is no "" empty command header, please enable alconna_use_command_start to ensure alconna parsing is normal</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> host</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">127.0.0.1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # Listening address, default is local, if you want to receive external requests, please fill in</span></span>
|
@ -1,4 +1,4 @@
|
||||
import{_ as i,c as a,a7 as t,o as n}from"./chunks/framework.jrU0lkHV.js";const c=JSON.parse('{"title":"Configurations","description":"","frontmatter":{"title":"Configurations","order":2},"headers":[],"relativePath":"en/deploy/config.md","filePath":"en/deploy/config.md","lastUpdated":1725101868000}'),e={name:"en/deploy/config.md"};function l(o,s,h,p,k,r){return n(),a("div",null,s[0]||(s[0]=[t(`<h1 id="configurations" tabindex="-1">Configurations <a class="header-anchor" href="#configurations" aria-label="Permalink to "Configurations""></a></h1><p>LiteyukiBot supports <code>yaml</code>, <code>json</code>, and <code>toml</code> as configuration files, depending on your personal preference.</p><p>When you first run LiteyukiBot, it will generate <code>config.yml</code> and the <code>config</code> directory. You can modify the configuration items and restart LiteyukiBot. In most cases, you only need to modify the <code>superusers</code> and <code>nickname</code> fields.</p><p>When starting, LiteyukiBot will load all configuration files in the project directory <code>config.yml/yaml/json/toml</code> and the <code>config</code> directory. You can create multiple configuration files in the <code>config</code> directory, and LiteyukiBot will automatically merge these configuration files.</p><h2 id="basic-configuration" tabindex="-1"><strong>Basic Configuration</strong> <a class="header-anchor" href="#basic-configuration" aria-label="Permalink to "**Basic Configuration**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># NoneBot configuration</span></span>
|
||||
import{_ as i,o as a,c as t,a7 as n}from"./chunks/framework._avq4Ty7.js";const c=JSON.parse('{"title":"Configurations","description":"","frontmatter":{"title":"Configurations","order":2},"headers":[],"relativePath":"en/deploy/config.md","filePath":"en/deploy/config.md","lastUpdated":1725101868000}'),e={name:"en/deploy/config.md"};function l(o,s,h,p,k,r){return a(),t("div",null,s[0]||(s[0]=[n(`<h1 id="configurations" tabindex="-1">Configurations <a class="header-anchor" href="#configurations" aria-label="Permalink to "Configurations""></a></h1><p>LiteyukiBot supports <code>yaml</code>, <code>json</code>, and <code>toml</code> as configuration files, depending on your personal preference.</p><p>When you first run LiteyukiBot, it will generate <code>config.yml</code> and the <code>config</code> directory. You can modify the configuration items and restart LiteyukiBot. In most cases, you only need to modify the <code>superusers</code> and <code>nickname</code> fields.</p><p>When starting, LiteyukiBot will load all configuration files in the project directory <code>config.yml/yaml/json/toml</code> and the <code>config</code> directory. You can create multiple configuration files in the <code>config</code> directory, and LiteyukiBot will automatically merge these configuration files.</p><h2 id="basic-configuration" tabindex="-1"><strong>Basic Configuration</strong> <a class="header-anchor" href="#basic-configuration" aria-label="Permalink to "**Basic Configuration**""></a></h2><div class="language-yaml vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">yaml</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># NoneBot configuration</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;">nonebot</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">:</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> command_start</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: [ </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">"/"</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">""</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ] </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"># Command prefix, if there is no "" empty command header, please enable alconna_use_command_start to ensure alconna parsing is normal</span></span>
|
||||
<span class="line"><span style="--shiki-light:#22863A;--shiki-dark:#85E89D;"> host</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">127.0.0.1</span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;"> # Listening address, default is local, if you want to receive external requests, please fill in</span></span>
|
1
assets/en_deploy_fandq.md.BrjsxnAp.js
Normal file
1
assets/en_deploy_fandq.md.BrjsxnAp.js
Normal file
@ -0,0 +1 @@
|
||||
import{_ as t,o,c as a,a7 as i}from"./chunks/framework._avq4Ty7.js";const h=JSON.parse('{"title":"FAQ","description":"","frontmatter":{"title":"FAQ","order":3},"headers":[],"relativePath":"en/deploy/fandq.md","filePath":"en/deploy/fandq.md","lastUpdated":1729881298000}'),n={name:"en/deploy/fandq.md"};function l(r,e,s,u,p,d){return o(),a("div",null,e[0]||(e[0]=[i('<h1 id="faq" tabindex="-1">FAQ <a class="header-anchor" href="#faq" aria-label="Permalink to "FAQ""></a></h1><h2 id="frequently-asked-questions" tabindex="-1"><strong>Frequently Asked Questions</strong> <a class="header-anchor" href="#frequently-asked-questions" aria-label="Permalink to "**Frequently Asked Questions**""></a></h2><ul><li><p>There are too many python interpreters on my computer, how do I know which one to use?</p><ul><li>You can specify which python interpreter to use by using the full path to the python executable, for example, <code>/path/to/python main.py</code></li><li>Use virtual environments to avoid conflicts between different python interpreters</li></ul></li><li><p>Update Liteyuki failed, error <code>InvalidGitRepositoryError</code></p><ul><li>Please install <code>Git</code> correctly and deploy Liteyuki using cloning instead of direct download</li></ul></li><li><p>How to log in to chat platforms?</p><ul><li>Some plugins provide the ability to log in to specific platforms, for example, using the NoneBot plugin to log in to supported adapter platforms</li></ul></li><li><p><code>Playwright</code> installation failed</p><ul><li>Enter <code>playwright install</code> to install the browser</li></ul></li><li><p>Some plugins report errors after installation and cannot be started</p><ul><li>Please refer to the plugin documentation first, confirm that the necessary configuration items of the plugin are intact, and if the problem persists, please contact the plugin author or start Liteyuki in safe mode <code>safe_mode: true</code>. In safe mode, you can use <code>npm uninstall</code> to uninstall problematic plugins</li></ul></li></ul><h2 id="other-questions" tabindex="-1">Other questions <a class="header-anchor" href="#other-questions" aria-label="Permalink to "Other questions""></a></h2><ul><li>Join chat group<a href="http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=SzmDYbfR6jY94o9KFNon7AwelRyI6M_u&authKey=ygeBdEmdFNyCWuNR4w0M1M8%2B5oDg7k%2FDfN0tzBkYcnbB%2FGHNnlVEnCIGbdftsnn7&noverify=0&group_code=775840726" target="_blank" rel="noreferrer">775840726</a></li><li>If you don't have a QQ account, you can <a href="https://github.com/LiteyukiStudio/LiteyukiBot/issues/new?assignees=&labels=&projects=&template=%E9%97%AE%E9%A2%98%E5%8F%8D%E9%A6%88.md&title=" target="_blank" rel="noreferrer">submit an issue on GitHub</a></li></ul>',5)]))}const f=t(n,[["render",l]]);export{h as __pageData,f as default};
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user