from __future__ import annotations from dataclasses import dataclass, field @dataclass class ArkKv: key: str value: str @dataclass class ArkMessage: template_id: int = 23 kv: list[ArkKv] = field(default_factory=list) def to_dict(self) -> dict: return { "template_id": self.template_id, "kv": [{"key": k.key, "value": k.value} for k in self.kv], } def build_notice_ark(title: str, content: str, jump_url: str = "") -> ArkMessage: kv = [ArkKv("#DESC#", title), ArkKv("#PROMPT#", content)] if jump_url: kv.append(ArkKv("#JUMP_LIST#", jump_url)) return ArkMessage(template_id=23, kv=kv) def build_image_text_ark(title: str, desc: str, img_url: str, jump_url: str = "") -> ArkMessage: kv = [ArkKv("#TITLE#", title), ArkKv("#DESC#", desc), ArkKv("#IMG#", img_url)] if jump_url: kv.append(ArkKv("#JUMP_LIST#", jump_url)) return ArkMessage(template_id=24, kv=kv) def build_big_image_ark(title: str, desc: str, img_url: str, jump_url: str = "") -> ArkMessage: kv = [ArkKv("#TITLE#", title), ArkKv("#DESC#", desc), ArkKv("#IMG#", img_url)] if jump_url: kv.append(ArkKv("#JUMP_LIST#", jump_url)) return ArkMessage(template_id=37, kv=kv)