优化代码
parent
bfb9170236
commit
e757196fe1
|
|
@ -97,6 +97,8 @@ class SendHandler:
|
||||||
command, args_dict = self.handle_whole_ban_command(seg_data.get("args"), group_info)
|
command, args_dict = self.handle_whole_ban_command(seg_data.get("args"), group_info)
|
||||||
case CommandType.GROUP_KICK.name:
|
case CommandType.GROUP_KICK.name:
|
||||||
command, args_dict = self.handle_kick_command(seg_data.get("args"), group_info)
|
command, args_dict = self.handle_kick_command(seg_data.get("args"), group_info)
|
||||||
|
case CommandType.SEND_POKE.name:
|
||||||
|
command, args_dict = self.handle_poke_command(seg_data.get("args"), group_info)
|
||||||
case _:
|
case _:
|
||||||
logger.error(f"未知命令: {command_name}")
|
logger.error(f"未知命令: {command_name}")
|
||||||
return
|
return
|
||||||
|
|
@ -215,7 +217,7 @@ class SendHandler:
|
||||||
|
|
||||||
def handle_voice_message(self, encoded_voice: str) -> dict:
|
def handle_voice_message(self, encoded_voice: str) -> dict:
|
||||||
"""处理语音消息"""
|
"""处理语音消息"""
|
||||||
if not global_config.use_tts:
|
if not global_config.voice.use_tts:
|
||||||
logger.warning("未启用语音消息处理")
|
logger.warning("未启用语音消息处理")
|
||||||
return {}
|
return {}
|
||||||
if not encoded_voice:
|
if not encoded_voice:
|
||||||
|
|
@ -236,10 +238,7 @@ class SendHandler:
|
||||||
"""处理音乐消息"""
|
"""处理音乐消息"""
|
||||||
return {
|
return {
|
||||||
"type": "music",
|
"type": "music",
|
||||||
"data": {
|
"data": {"type": "163", "id": song_id},
|
||||||
"type": "163",
|
|
||||||
"id": song_id
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
def handle_ban_command(self, args: Dict[str, Any], group_info: GroupInfo) -> Tuple[str, Dict[str, Any]]:
|
def handle_ban_command(self, args: Dict[str, Any], group_info: GroupInfo) -> Tuple[str, Dict[str, Any]]:
|
||||||
|
|
@ -318,6 +317,33 @@ class SendHandler:
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def handle_poke_command(self, args: Dict[str, Any], group_info: GroupInfo) -> Tuple[str, Dict[str, Any]]:
|
||||||
|
"""处理戳一戳命令
|
||||||
|
|
||||||
|
Args:
|
||||||
|
args (Dict[str, Any]): 参数字典
|
||||||
|
group_info (GroupInfo): 群聊信息(对应目标群聊)
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
Tuple[CommandType, Dict[str, Any]]
|
||||||
|
"""
|
||||||
|
user_id: int = int(args["qq_id"])
|
||||||
|
if group_info is None:
|
||||||
|
group_id = None
|
||||||
|
else:
|
||||||
|
group_id: int = int(group_info.group_id)
|
||||||
|
if group_id <= 0:
|
||||||
|
raise ValueError("群组ID无效")
|
||||||
|
if user_id <= 0:
|
||||||
|
raise ValueError("用户ID无效")
|
||||||
|
return (
|
||||||
|
CommandType.SEND_POKE.value,
|
||||||
|
{
|
||||||
|
"group_id": group_id,
|
||||||
|
"user_id": user_id,
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
async def send_message_to_napcat(self, action: str, params: dict) -> dict:
|
async def send_message_to_napcat(self, action: str, params: dict) -> dict:
|
||||||
request_uuid = str(uuid.uuid4())
|
request_uuid = str(uuid.uuid4())
|
||||||
payload = json.dumps({"action": action, "params": params, "echo": request_uuid})
|
payload = json.dumps({"action": action, "params": params, "echo": request_uuid})
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue