MiLog 发布一年多了,昨天才第一次真正有动力实现插件系统——总觉得用一个异步的外部脚本做 anti-spam,不怎么得劲,还是写一个插件系统比较靠谱,本来插件系统也是 MiLog 的规划功能之一,更重要的是:
- 简单的非核心功能并不想用 Go 写进 MiLog 里,最好只保持一个轻量级的 Core;
- 最好可以用 Python 写插件,没别的原因,我喜欢 Python 就足够了;
于是乎,MiLog Plugins System 诞生了,目前只支持用 Python 编写插件,最简单的插件只需要两个函数(参考 speak-chinese-please):
register()
用于 MiLog 加载插件时注册事件;<事件名>()
用于处理事件回调;
将编写好的插件放在任意目录下,并在 conf/app.conf
中增加一行,指向该目录就行:
plugindir = <path_to_plugin_directory>
哦对了,做完以上步骤后 MiLog 需要重启,注意通过日志观察插件是否注册成功。
Now, enjoy!