mirror of
https://github.com/zhenxun-org/zhenxun_bot.git
synced 2025-12-14 21:52:56 +08:00
72 lines
1.8 KiB
Python
72 lines
1.8 KiB
Python
import json
|
|
from pathlib import Path
|
|
|
|
from nonebot.adapters.onebot.v11 import GroupMessageEvent, Message, MessageSegment
|
|
from nonebot.adapters.onebot.v11.event import Sender
|
|
|
|
|
|
def get_reply_cq(uid: int | str) -> str:
|
|
return f"[CQ:reply,id={uid}]"
|
|
|
|
|
|
def get_response_json(base_path: Path, file: str) -> dict:
|
|
try:
|
|
return json.loads(
|
|
(Path(__file__).parent / "response" / base_path / file).read_text(
|
|
encoding="utf8"
|
|
)
|
|
)
|
|
except (FileNotFoundError, json.JSONDecodeError) as e:
|
|
raise ValueError(f"Error reading or parsing JSON file: {e}") from e
|
|
|
|
|
|
def get_content_bytes(base_path: Path, path: str) -> bytes:
|
|
try:
|
|
return (Path(__file__).parent / "content" / base_path / path).read_bytes()
|
|
except FileNotFoundError as e:
|
|
raise ValueError(f"Error reading file: {e}") from e
|
|
|
|
|
|
def _v11_group_message_event(
|
|
message: str,
|
|
self_id: int,
|
|
user_id: int,
|
|
group_id: int,
|
|
message_id: int,
|
|
to_me: bool = True,
|
|
) -> GroupMessageEvent:
|
|
return GroupMessageEvent(
|
|
time=1122,
|
|
self_id=self_id,
|
|
post_type="message",
|
|
sub_type="",
|
|
user_id=user_id,
|
|
message_id=message_id,
|
|
message=Message(message),
|
|
original_message=Message(message),
|
|
message_type="group",
|
|
raw_message=message,
|
|
font=1,
|
|
sender=Sender(user_id=user_id),
|
|
to_me=to_me,
|
|
group_id=group_id,
|
|
)
|
|
|
|
|
|
def _v11_private_message_send(
|
|
message: str,
|
|
user_id: int,
|
|
):
|
|
return {
|
|
"message_type": "private",
|
|
"user_id": user_id,
|
|
"message": [
|
|
MessageSegment(
|
|
type="text",
|
|
data={
|
|
"text": message,
|
|
},
|
|
)
|
|
],
|
|
}
|