santaspeen 8fbd2cc330 [~] Update versions in req.txt
[~] Rename register_event > register
2024-07-15 11:39:31 +03:00
..
2024-07-15 11:39:31 +03:00
2023-07-24 05:11:58 +03:00
2024-07-15 11:39:31 +03:00
2024-06-28 17:59:29 +03:00
2024-07-15 11:39:31 +03:00

插件系统

事件:这里

类:这里

使用带有“Dummy”的库

这意味着它没有服务器无法工作但IDE将指导API
(库还在开发中)
  • 使用pip
    $ pip install KuiToi
  • 从源代码安装:
    git clone https://github.com/KuiToi/KuiToi-PyLib

示例

try:
    import KuiToi
except ImportError:
    pass

kt = KuiToi("ExamplePlugin")
log = kt.log

def my_event_handler(event_data):
    log.info(f"{event_data}")

def load():
    # 初始化插件
    ev.register("my_event", my_event_handler)
    log.info("插件已成功加载。")

    
def start():
    # 启动插件进程
    ev.call_event("my_event")
    ev.call_event("my_event", "一些数据", data="一些数据也是")
    log.info("插件已成功启动。")


def unload():
    # 结束所有进程的代码
    log.info("插件已成功卸载。")

您还可以在example.py中找到更广泛的示例。

  • 建议在load()后使用open(),否则应使用kt.load()-在plugin/<plugin_name>/<filename>文件夹中创建一个文件
  • 创建自己的事件:kt.register("my_event", my_event_function)-
  • 调用事件:kt.call_event("my_event")
  • 使用数据调用事件:kt.call_event("my_event", data, data2=data2)
  • 基本事件:稍后会写

异步函数

支持async

try:
    import KuiToi
except ImportError:
    pass

kt = KuiToi("Example")
log = kt.log


async def my_event_handler(event_data):
    log.info(f"{event_data}")

    
async def load():
    # 初始化插件
    ev.register("my_event", my_event_handler)
    log.info("插件已成功加载。")


async def start():
    # 启动插件进程
    await ev.call_async_event("my_event")
    await ev.call_async_event("my_event", "一些数据", data="一些数据也是")
    log.info("插件已成功启动。")


async def unload():
    # 结束所有进程的代码
    log.info("插件已成功卸载。")

您还可以在async_example.py中找到更广泛的示例。

  • 创建自己的事件:kt.register("my_event", my_event_function)在register中检查函数
  • 调用async事件kt.call_async_event("my_event")
  • 使用数据调用async事件kt.call_async_event("my_event", data, data2=data2)
  • 基本的async事件稍后会写