尝试修复越界
parent
e5603972fa
commit
ea8b7a978b
|
|
@ -77,7 +77,10 @@ class RecvHandler:
|
||||||
message_time: float = time.time() # 应可乐要求,现在是float了
|
message_time: float = time.time() # 应可乐要求,现在是float了
|
||||||
|
|
||||||
template_info: TemplateInfo = None # 模板信息,暂时为空,等待启用
|
template_info: TemplateInfo = None # 模板信息,暂时为空,等待启用
|
||||||
format_info: FormatInfo = None # 格式化信息,暂时为空,等待启用
|
format_info: FormatInfo = FormatInfo(
|
||||||
|
content_format=["text", "image", "emoji"],
|
||||||
|
accept_format=["text", "image", "emoji", "reply"],
|
||||||
|
) # 格式化信息,暂时为空,等待启用
|
||||||
if message_type == MessageType.private:
|
if message_type == MessageType.private:
|
||||||
sub_type = raw_message.get("sub_type")
|
sub_type = raw_message.get("sub_type")
|
||||||
if sub_type == MessageType.Private.friend:
|
if sub_type == MessageType.Private.friend:
|
||||||
|
|
@ -436,6 +439,8 @@ class RecvHandler:
|
||||||
match sub_type:
|
match sub_type:
|
||||||
case NoticeType.Notify.poke:
|
case NoticeType.Notify.poke:
|
||||||
handled_message: Seg = await self.handle_poke_notify(raw_message)
|
handled_message: Seg = await self.handle_poke_notify(raw_message)
|
||||||
|
case _:
|
||||||
|
logger.warning("不支持的notify类型")
|
||||||
if not handled_message:
|
if not handled_message:
|
||||||
logger.warning("notice处理失败或不支持")
|
logger.warning("notice处理失败或不支持")
|
||||||
return None
|
return None
|
||||||
|
|
|
||||||
|
|
@ -31,10 +31,10 @@ class SendHandler:
|
||||||
target_id: int = None
|
target_id: int = None
|
||||||
action: str = None
|
action: str = None
|
||||||
id_name: str = None
|
id_name: str = None
|
||||||
|
processed_message: list = []
|
||||||
logger.info("接收到来自MaiBot的消息,处理中")
|
logger.info("接收到来自MaiBot的消息,处理中")
|
||||||
try:
|
try:
|
||||||
processed_message: list = await self.handle_seg_recursive(message_segment)
|
processed_message = await self.handle_seg_recursive(message_segment)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"处理消息时发生错误: {e}")
|
logger.error(f"处理消息时发生错误: {e}")
|
||||||
return
|
return
|
||||||
|
|
@ -77,6 +77,8 @@ class SendHandler:
|
||||||
payload: list = []
|
payload: list = []
|
||||||
if seg_data.type == "seglist":
|
if seg_data.type == "seglist":
|
||||||
# level = self.get_level(seg_data) # 给以后可能的多层嵌套做准备,此处不使用
|
# level = self.get_level(seg_data) # 给以后可能的多层嵌套做准备,此处不使用
|
||||||
|
if not seg_data.data:
|
||||||
|
return []
|
||||||
for seg in seg_data.data:
|
for seg in seg_data.data:
|
||||||
payload = self.process_message_by_type(seg, payload)
|
payload = self.process_message_by_type(seg, payload)
|
||||||
else:
|
else:
|
||||||
|
|
@ -92,6 +94,8 @@ class SendHandler:
|
||||||
new_payload = self.build_payload(payload, self.handle_reply_message(target_id), True)
|
new_payload = self.build_payload(payload, self.handle_reply_message(target_id), True)
|
||||||
elif seg.type == "text":
|
elif seg.type == "text":
|
||||||
text = seg.data
|
text = seg.data
|
||||||
|
if not text:
|
||||||
|
return []
|
||||||
new_payload = self.build_payload(payload, self.handle_text_message(text), False)
|
new_payload = self.build_payload(payload, self.handle_text_message(text), False)
|
||||||
elif seg.type == "face":
|
elif seg.type == "face":
|
||||||
pass
|
pass
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue