76 lines
2.2 KiB
Python
76 lines
2.2 KiB
Python
"""随机 JM 码 —— 配置注册(按《插件配置文件标准》)。
|
|
|
|
把原本硬编码在 __init__.py 里的文案模板 / 屏蔽码 / 白名单群号
|
|
注册为 Web 可读可改的配置项(来源无关,store=本模块)。运行期插件读本模块常量,
|
|
Web 保存后经 apply 热更新本模块属性,重启也不丢。
|
|
"""
|
|
|
|
from __future__ import annotations
|
|
|
|
import sys as _sys
|
|
|
|
from hexi.web_hub.config_standard import register_config_items
|
|
|
|
# plugin_id = NoneBot 插件模块名
|
|
_PLUGIN_ID = __package__
|
|
|
|
# —— 可配置常量(来源为本模块) ——
|
|
TEXT_TEMPLATES = [
|
|
"给你{code},拿去吧",
|
|
"给你{code},记得谢谢我",
|
|
"给你{code},注意保养弹簧",
|
|
]
|
|
BLOCK_CODE = ["350235", "350234"]
|
|
WHITE_LIST = ["1019165018"]
|
|
|
|
|
|
def _jm_codes_getter() -> list[str]:
|
|
from .services.store import sync_get_jm_codes
|
|
return sync_get_jm_codes()
|
|
|
|
|
|
def _jm_codes_setter(codes) -> None:
|
|
from .services.store import sync_set_jm_codes
|
|
sync_set_jm_codes(codes)
|
|
|
|
|
|
def register_config() -> None:
|
|
register_config_items(
|
|
_PLUGIN_ID,
|
|
[
|
|
{
|
|
"key": "TEXT_TEMPLATES",
|
|
"label": "随机文案模板",
|
|
"type": "array",
|
|
"item_type": "str",
|
|
"default": TEXT_TEMPLATES,
|
|
},
|
|
{
|
|
"key": "BLOCK_CODE",
|
|
"label": "屏蔽码",
|
|
"type": "array",
|
|
"item_type": "str",
|
|
"default": BLOCK_CODE,
|
|
},
|
|
{
|
|
"key": "WHITE_LIST",
|
|
"label": "白名单群号",
|
|
"type": "array",
|
|
"item_type": "str",
|
|
"default": WHITE_LIST,
|
|
},
|
|
{
|
|
"key": "JM_CODES",
|
|
"label": "JM 码列表",
|
|
"type": "array",
|
|
"item_type": "str",
|
|
"default": [],
|
|
"description": "一行一个(或逗号分隔)。保存会写回 hexi/data/random_jm_code/jm_code.json,机器人随改随用。",
|
|
"getter": _jm_codes_getter,
|
|
"setter": _jm_codes_setter,
|
|
"nosave": True,
|
|
},
|
|
],
|
|
store=_sys.modules[__name__],
|
|
)
|