echo消息处理
parent
ca27153fe6
commit
df5a874a60
|
|
@ -1,3 +1,4 @@
|
|||
from typing import Dict
|
||||
from src.logger import logger
|
||||
from maim_message import MessageBase, Router
|
||||
|
||||
|
|
@ -26,6 +27,18 @@ class MessageSending:
|
|||
except Exception as e:
|
||||
logger.error(f"发送消息失败: {str(e)}")
|
||||
logger.error("请检查与MaiBot之间的连接")
|
||||
|
||||
async def send_custom_message(self, custom_message: Dict, platform: str, message_type: str) -> bool:
|
||||
"""
|
||||
发送自定义消息
|
||||
"""
|
||||
try:
|
||||
await self.maibot_router.send_custom_message(platform=platform, message_type_name=message_type, message=custom_message)
|
||||
return True
|
||||
except Exception as e:
|
||||
logger.error(f"发送自定义消息失败: {str(e)}")
|
||||
logger.error("请检查与MaiBot之间的连接")
|
||||
return False
|
||||
|
||||
|
||||
message_send_instance = MessageSending()
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import json
|
||||
import uuid
|
||||
import websockets as Server
|
||||
from maim_message import MessageBase, Seg
|
||||
from maim_message import MessageBase
|
||||
|
||||
from src.response_pool import get_response
|
||||
from src.logger import logger
|
||||
|
|
@ -29,21 +29,33 @@ class NCMessageSender:
|
|||
return response
|
||||
|
||||
async def message_sent_back(self, message_base: MessageBase, qq_message_id: str) -> None:
|
||||
# 修改 additional_config,添加 echo 字段
|
||||
if message_base.message_info.additional_config is None:
|
||||
message_base.message_info.additional_config = {}
|
||||
# # 修改 additional_config,添加 echo 字段
|
||||
# if message_base.message_info.additional_config is None:
|
||||
# message_base.message_info.additional_config = {}
|
||||
|
||||
message_base.message_info.additional_config["echo"] = True
|
||||
# message_base.message_info.additional_config["echo"] = True
|
||||
|
||||
# 获取原始的 mmc_message_id
|
||||
# # 获取原始的 mmc_message_id
|
||||
# mmc_message_id = message_base.message_info.message_id
|
||||
|
||||
# # 修改 message_segment 为 notify 类型
|
||||
# message_base.message_segment = Seg(
|
||||
# type="notify", data={"sub_type": "echo", "echo": mmc_message_id, "actual_id": qq_message_id}
|
||||
# )
|
||||
# await message_send_instance.message_send(message_base)
|
||||
# logger.debug("已回送消息ID")
|
||||
# return
|
||||
platform = message_base.message_info.platform
|
||||
mmc_message_id = message_base.message_info.message_id
|
||||
|
||||
# 修改 message_segment 为 notify 类型
|
||||
message_base.message_segment = Seg(
|
||||
type="notify", data={"sub_type": "echo", "echo": mmc_message_id, "actual_id": qq_message_id}
|
||||
)
|
||||
await message_send_instance.message_send(message_base)
|
||||
logger.debug("已回送消息ID")
|
||||
return
|
||||
echo_data = {
|
||||
"type": "echo",
|
||||
"echo": mmc_message_id,
|
||||
"actual_id": qq_message_id,
|
||||
}
|
||||
success = await message_send_instance.send_custom_message(echo_data, platform, "message_id_echo")
|
||||
if success:
|
||||
logger.debug("已回送消息ID")
|
||||
else:
|
||||
logger.error("回送消息ID失败")
|
||||
|
||||
nc_message_sender = NCMessageSender()
|
||||
Loading…
Reference in New Issue