fix(maa): 适配前端对话框ws反馈格式

This commit is contained in:
DLmaster361
2025-10-02 14:39:47 +08:00
parent 196aa9873b
commit c1f7ea6922

View File

@@ -849,8 +849,8 @@ class MaaManager:
},
).model_dump()
)
result = await self.get_message(uid)
if result.get("choice", False):
result = await self.get_message(uid, "Response")
if result.get("data", {}).get("choice", False):
break
# 登录成功, 录入人工排查情况
@@ -869,8 +869,8 @@ class MaaManager:
},
).model_dump()
)
result = await self.get_message(uid)
if result.get("choice", False):
result = await self.get_message(uid, "Response")
if result.get("data", {}).get("choice", False):
self.run_book["PassCheck"] = True
await self.result_record()
@@ -1144,14 +1144,14 @@ class MaaManager:
self.agree_bilibili(False)
return result_text
async def get_message(self, message_id: str):
async def get_message(self, message_id: str, message_type: str):
"""获取客户端回应消息"""
logger.info(f"等待客户端回应消息: {message_id}")
while True:
message = await self.message_queue.get()
if message.get("message_id") == message_id:
if message.get("id") == message_id and message.get("type") == message_type:
self.message_queue.task_done()
logger.success(f"收到客户端回应消息: {message_id}")
return message
@@ -1226,9 +1226,9 @@ class MaaManager:
await System.kill_process(self.maa_exe_path)
with self.maa_set_path.open(mode="r", encoding="utf-8") as f:
data = json.load(f)
data["Configurations"]["Default"]["Connect.Address"] = (
self.ADB_address
)
data["Configurations"]["Default"][
"Connect.Address"
] = self.ADB_address
data["Configurations"]["Default"]["Start.EmulatorWaitSeconds"] = "0"
with self.maa_set_path.open(mode="w", encoding="utf-8") as f:
json.dump(data, f, ensure_ascii=False, indent=4)
@@ -1433,30 +1433,30 @@ class MaaManager:
].get("Info", "Mode")
== "详细"
):
data["Configurations"]["Default"]["MainFunction.PostActions"] = (
"12" # 完成后退出MAA和模拟器
)
data["Configurations"]["Default"][
"MainFunction.PostActions"
] = "12" # 完成后退出MAA和模拟器
else:
data["Configurations"]["Default"]["MainFunction.PostActions"] = (
METHOD_BOOK[self.script_config.get("Run", "TaskTransitionMethod")]
) # 完成后行为
data["Configurations"]["Default"]["Start.RunDirectly"] = (
"True" # 启动MAA后直接运行
)
data["Configurations"]["Default"][
"Start.RunDirectly"
] = "True" # 启动MAA后直接运行
data["Configurations"]["Default"]["Start.OpenEmulatorAfterLaunch"] = str(
self.if_open_emulator
) # 启动MAA后自动开启模拟器
data["Global"]["VersionUpdate.ScheduledUpdateCheck"] = (
"False" # 定时检查更新
)
data["Global"]["VersionUpdate.AutoDownloadUpdatePackage"] = (
"True" # 自动下载更新包
)
data["Global"]["VersionUpdate.AutoInstallUpdatePackage"] = (
"False" # 自动安装更新包
)
data["Global"][
"VersionUpdate.ScheduledUpdateCheck"
] = "False" # 定时检查更新
data["Global"][
"VersionUpdate.AutoDownloadUpdatePackage"
] = "True" # 自动下载更新包
data["Global"][
"VersionUpdate.AutoInstallUpdatePackage"
] = "False" # 自动安装更新包
if Config.get("Function", "IfSilence"):
data["Global"]["Start.MinimizeDirectly"] = "True" # 启动MAA后直接最小化
@@ -1481,9 +1481,9 @@ class MaaManager:
)
# 按预设设定任务
data["Configurations"]["Default"]["TaskQueue.WakeUp.IsChecked"] = (
"True" # 开始唤醒
)
data["Configurations"]["Default"][
"TaskQueue.WakeUp.IsChecked"
] = "True" # 开始唤醒
data["Configurations"]["Default"]["TaskQueue.Recruiting.IsChecked"] = (
self.task_dict["Recruiting"]
) # 自动公招
@@ -1555,45 +1555,45 @@ class MaaManager:
) # 连战次数
if mode == "Annihilation":
data["Configurations"]["Default"]["MainFunction.Stage1"] = (
"Annihilation" # 主关卡
)
data["Configurations"]["Default"]["MainFunction.Stage2"] = (
"" # 备选关卡1
)
data["Configurations"]["Default"]["MainFunction.Stage3"] = (
"" # 备选关卡2
)
data["Configurations"]["Default"]["Fight.RemainingSanityStage"] = (
"" # 剩余理智关卡
)
data["Configurations"]["Default"]["MainFunction.Series.Quantity"] = (
"1" # 连战次数
)
data["Configurations"]["Default"][
"MainFunction.Stage1"
] = "Annihilation" # 主关卡
data["Configurations"]["Default"][
"MainFunction.Stage2"
] = "" # 备选关卡1
data["Configurations"]["Default"][
"MainFunction.Stage3"
] = "" # 备选关卡2
data["Configurations"]["Default"][
"Fight.RemainingSanityStage"
] = "" # 剩余理智关卡
data["Configurations"]["Default"][
"MainFunction.Series.Quantity"
] = "1" # 连战次数
data["Configurations"]["Default"][
"MainFunction.Annihilation.UseCustom"
] = "True" # 自定义剿灭关卡
data["Configurations"]["Default"]["MainFunction.Annihilation.Stage"] = (
self.cur_user_data.get("Info", "Annihilation")
) # 自定义剿灭关卡号
data["Configurations"]["Default"]["Penguin.IsDrGrandet"] = (
"False" # 博朗台模式
)
data["Configurations"]["Default"]["GUI.CustomStageCode"] = (
"True" # 手动输入关卡名
)
data["Configurations"]["Default"]["GUI.UseAlternateStage"] = (
"False" # 使用备选关卡
)
data["Configurations"]["Default"]["Fight.UseRemainingSanityStage"] = (
"False" # 使用剩余理智
)
data["Configurations"]["Default"]["Fight.UseExpiringMedicine"] = (
"True" # 无限吃48小时内过期的理智药
)
data["Configurations"]["Default"]["GUI.HideSeries"] = (
"False" # 隐藏连战次数
)
data["Configurations"]["Default"][
"Penguin.IsDrGrandet"
] = "False" # 博朗台模式
data["Configurations"]["Default"][
"GUI.CustomStageCode"
] = "True" # 手动输入关卡名
data["Configurations"]["Default"][
"GUI.UseAlternateStage"
] = "False" # 使用备选关卡
data["Configurations"]["Default"][
"Fight.UseRemainingSanityStage"
] = "False" # 使用剩余理智
data["Configurations"]["Default"][
"Fight.UseExpiringMedicine"
] = "True" # 无限吃48小时内过期的理智药
data["Configurations"]["Default"][
"GUI.HideSeries"
] = "False" # 隐藏连战次数
elif mode == "Routine":
data["Configurations"]["Default"]["MainFunction.Stage1"] = (
@@ -1619,32 +1619,32 @@ class MaaManager:
if plan_data.get("Stage_Remain", "-") != "-"
else ""
) # 剩余理智关卡
data["Configurations"]["Default"]["GUI.UseAlternateStage"] = (
"True" # 备选关卡
)
data["Configurations"]["Default"][
"GUI.UseAlternateStage"
] = "True" # 备选关卡
data["Configurations"]["Default"]["Fight.UseRemainingSanityStage"] = (
"True" if plan_data.get("Stage_Remain", "-") != "-" else "False"
) # 使用剩余理智
if self.cur_user_data.get("Info", "Mode") == "简洁":
data["Configurations"]["Default"]["Penguin.IsDrGrandet"] = (
"False" # 博朗台模式
)
data["Configurations"]["Default"]["GUI.CustomStageCode"] = (
"True" # 手动输入关卡名
)
data["Configurations"]["Default"]["Fight.UseExpiringMedicine"] = (
"True" # 无限吃48小时内过期的理智药
)
data["Configurations"]["Default"][
"Penguin.IsDrGrandet"
] = "False" # 博朗台模式
data["Configurations"]["Default"][
"GUI.CustomStageCode"
] = "True" # 手动输入关卡名
data["Configurations"]["Default"][
"Fight.UseExpiringMedicine"
] = "True" # 无限吃48小时内过期的理智药
# 自定义基建配置
if self.cur_user_data.get("Info", "InfrastMode") == "Custom":
if (
Path.cwd()
/ f"data/{self.script_id}/{self.user_list[self.index]['user_id']}/Infrastructure/infrastructure.json"
).exists():
data["Configurations"]["Default"]["Infrast.InfrastMode"] = (
"Custom" # 基建模式
)
data["Configurations"]["Default"][
"Infrast.InfrastMode"
] = "Custom" # 基建模式
data["Configurations"]["Default"][
"Infrast.CustomInfrastPlanIndex"
] = self.cur_user_data.get(
@@ -1697,27 +1697,27 @@ class MaaManager:
# 人工排查配置
elif self.mode == "人工排查" and self.cur_user_data is not None:
data["Configurations"]["Default"]["MainFunction.PostActions"] = (
"8" # 完成后退出MAA
)
data["Configurations"]["Default"]["Start.RunDirectly"] = (
"True" # 启动MAA后直接运行
)
data["Configurations"]["Default"][
"MainFunction.PostActions"
] = "8" # 完成后退出MAA
data["Configurations"]["Default"][
"Start.RunDirectly"
] = "True" # 启动MAA后直接运行
data["Global"]["Start.MinimizeDirectly"] = "True" # 启动MAA后直接最小化
data["Global"]["GUI.UseTray"] = "True" # 显示托盘图标
data["Global"]["GUI.MinimizeToTray"] = "True" # 最小化时隐藏至托盘
data["Configurations"]["Default"]["Start.OpenEmulatorAfterLaunch"] = str(
self.if_open_emulator
) # 启动MAA后自动开启模拟器
data["Global"]["VersionUpdate.ScheduledUpdateCheck"] = (
"False" # 定时检查更新
)
data["Global"]["VersionUpdate.AutoDownloadUpdatePackage"] = (
"False" # 自动下载更新包
)
data["Global"]["VersionUpdate.AutoInstallUpdatePackage"] = (
"False" # 自动安装更新包
)
data["Global"][
"VersionUpdate.ScheduledUpdateCheck"
] = "False" # 定时检查更新
data["Global"][
"VersionUpdate.AutoDownloadUpdatePackage"
] = "False" # 自动下载更新包
data["Global"][
"VersionUpdate.AutoInstallUpdatePackage"
] = "False" # 自动安装更新包
# 客户端类型
data["Configurations"]["Default"]["Start.ClientType"] = (
@@ -1736,132 +1736,132 @@ class MaaManager:
self.cur_user_data.get("Info", "Id")
)
data["Configurations"]["Default"]["TaskQueue.WakeUp.IsChecked"] = (
"True" # 开始唤醒
)
data["Configurations"]["Default"]["TaskQueue.Recruiting.IsChecked"] = (
"False" # 自动公招
)
data["Configurations"]["Default"]["TaskQueue.Base.IsChecked"] = (
"False" # 基建换班
)
data["Configurations"]["Default"]["TaskQueue.Combat.IsChecked"] = (
"False" # 刷理智
)
data["Configurations"]["Default"]["TaskQueue.Mission.IsChecked"] = (
"False" # 领取奖励
)
data["Configurations"]["Default"]["TaskQueue.Mall.IsChecked"] = (
"False" # 获取信用及购物
)
data["Configurations"]["Default"]["TaskQueue.AutoRoguelike.IsChecked"] = (
"False" # 自动肉鸽
)
data["Configurations"]["Default"]["TaskQueue.Reclamation.IsChecked"] = (
"False" # 生息演算
)
data["Configurations"]["Default"][
"TaskQueue.WakeUp.IsChecked"
] = "True" # 开始唤醒
data["Configurations"]["Default"][
"TaskQueue.Recruiting.IsChecked"
] = "False" # 自动公招
data["Configurations"]["Default"][
"TaskQueue.Base.IsChecked"
] = "False" # 基建换班
data["Configurations"]["Default"][
"TaskQueue.Combat.IsChecked"
] = "False" # 刷理智
data["Configurations"]["Default"][
"TaskQueue.Mission.IsChecked"
] = "False" # 领取奖励
data["Configurations"]["Default"][
"TaskQueue.Mall.IsChecked"
] = "False" # 获取信用及购物
data["Configurations"]["Default"][
"TaskQueue.AutoRoguelike.IsChecked"
] = "False" # 自动肉鸽
data["Configurations"]["Default"][
"TaskQueue.Reclamation.IsChecked"
] = "False" # 生息演算
# 设置脚本配置
elif self.mode == "设置脚本":
data["Configurations"]["Default"]["MainFunction.PostActions"] = (
"0" # 完成后无动作
)
data["Configurations"]["Default"]["Start.RunDirectly"] = (
"False" # 启动MAA后直接运行
)
data["Configurations"]["Default"]["Start.OpenEmulatorAfterLaunch"] = (
"False" # 启动MAA后自动开启模拟器
)
data["Global"]["VersionUpdate.ScheduledUpdateCheck"] = (
"False" # 定时检查更新
)
data["Global"]["VersionUpdate.AutoDownloadUpdatePackage"] = (
"False" # 自动下载更新包
)
data["Global"]["VersionUpdate.AutoInstallUpdatePackage"] = (
"False" # 自动安装更新包
)
data["Configurations"]["Default"][
"MainFunction.PostActions"
] = "0" # 完成后无动作
data["Configurations"]["Default"][
"Start.RunDirectly"
] = "False" # 启动MAA后直接运行
data["Configurations"]["Default"][
"Start.OpenEmulatorAfterLaunch"
] = "False" # 启动MAA后自动开启模拟器
data["Global"][
"VersionUpdate.ScheduledUpdateCheck"
] = "False" # 定时检查更新
data["Global"][
"VersionUpdate.AutoDownloadUpdatePackage"
] = "False" # 自动下载更新包
data["Global"][
"VersionUpdate.AutoInstallUpdatePackage"
] = "False" # 自动安装更新包
if Config.get("Function", "IfSilence"):
data["Global"]["Start.MinimizeDirectly"] = (
"False" # 启动MAA后直接最小化
)
data["Global"][
"Start.MinimizeDirectly"
] = "False" # 启动MAA后直接最小化
data["Configurations"]["Default"]["TaskQueue.WakeUp.IsChecked"] = (
"False" # 开始唤醒
)
data["Configurations"]["Default"]["TaskQueue.Recruiting.IsChecked"] = (
"False" # 自动公招
)
data["Configurations"]["Default"]["TaskQueue.Base.IsChecked"] = (
"False" # 基建换班
)
data["Configurations"]["Default"]["TaskQueue.Combat.IsChecked"] = (
"False" # 刷理智
)
data["Configurations"]["Default"]["TaskQueue.Mission.IsChecked"] = (
"False" # 领取奖励
)
data["Configurations"]["Default"]["TaskQueue.Mall.IsChecked"] = (
"False" # 获取信用及购物
)
data["Configurations"]["Default"]["TaskQueue.AutoRoguelike.IsChecked"] = (
"False" # 自动肉鸽
)
data["Configurations"]["Default"]["TaskQueue.Reclamation.IsChecked"] = (
"False" # 生息演算
)
data["Configurations"]["Default"][
"TaskQueue.WakeUp.IsChecked"
] = "False" # 开始唤醒
data["Configurations"]["Default"][
"TaskQueue.Recruiting.IsChecked"
] = "False" # 自动公招
data["Configurations"]["Default"][
"TaskQueue.Base.IsChecked"
] = "False" # 基建换班
data["Configurations"]["Default"][
"TaskQueue.Combat.IsChecked"
] = "False" # 刷理智
data["Configurations"]["Default"][
"TaskQueue.Mission.IsChecked"
] = "False" # 领取奖励
data["Configurations"]["Default"][
"TaskQueue.Mall.IsChecked"
] = "False" # 获取信用及购物
data["Configurations"]["Default"][
"TaskQueue.AutoRoguelike.IsChecked"
] = "False" # 自动肉鸽
data["Configurations"]["Default"][
"TaskQueue.Reclamation.IsChecked"
] = "False" # 生息演算
elif mode == "Update":
data["Configurations"]["Default"]["MainFunction.PostActions"] = (
"0" # 完成后无动作
)
data["Configurations"]["Default"]["Start.RunDirectly"] = (
"False" # 启动MAA后直接运行
)
data["Configurations"]["Default"]["Start.OpenEmulatorAfterLaunch"] = (
"False" # 启动MAA后自动开启模拟器
)
data["Configurations"]["Default"][
"MainFunction.PostActions"
] = "0" # 完成后无动作
data["Configurations"]["Default"][
"Start.RunDirectly"
] = "False" # 启动MAA后直接运行
data["Configurations"]["Default"][
"Start.OpenEmulatorAfterLaunch"
] = "False" # 启动MAA后自动开启模拟器
data["Global"]["Start.MinimizeDirectly"] = "True" # 启动MAA后直接最小化
data["Global"]["GUI.UseTray"] = "True" # 显示托盘图标
data["Global"]["GUI.MinimizeToTray"] = "True" # 最小化时隐藏至托盘
data["Global"]["VersionUpdate.package"] = (
self.maa_update_package
) # 更新包路径
data["Global"][
"VersionUpdate.package"
] = self.maa_update_package # 更新包路径
data["Global"]["VersionUpdate.ScheduledUpdateCheck"] = (
"False" # 定时检查更新
)
data["Global"]["VersionUpdate.AutoDownloadUpdatePackage"] = (
"False" # 自动下载更新包
)
data["Global"]["VersionUpdate.AutoInstallUpdatePackage"] = (
"True" # 自动安装更新包
)
data["Configurations"]["Default"]["TaskQueue.WakeUp.IsChecked"] = (
"False" # 开始唤醒
)
data["Configurations"]["Default"]["TaskQueue.Recruiting.IsChecked"] = (
"False" # 自动公招
)
data["Configurations"]["Default"]["TaskQueue.Base.IsChecked"] = (
"False" # 基建换班
)
data["Configurations"]["Default"]["TaskQueue.Combat.IsChecked"] = (
"False" # 刷理智
)
data["Configurations"]["Default"]["TaskQueue.Mission.IsChecked"] = (
"False" # 领取奖励
)
data["Configurations"]["Default"]["TaskQueue.Mall.IsChecked"] = (
"False" # 获取信用及购物
)
data["Configurations"]["Default"]["TaskQueue.AutoRoguelike.IsChecked"] = (
"False" # 自动肉鸽
)
data["Configurations"]["Default"]["TaskQueue.Reclamation.IsChecked"] = (
"False" # 生息演算
)
data["Global"][
"VersionUpdate.ScheduledUpdateCheck"
] = "False" # 定时检查更新
data["Global"][
"VersionUpdate.AutoDownloadUpdatePackage"
] = "False" # 自动下载更新包
data["Global"][
"VersionUpdate.AutoInstallUpdatePackage"
] = "True" # 自动安装更新包
data["Configurations"]["Default"][
"TaskQueue.WakeUp.IsChecked"
] = "False" # 开始唤醒
data["Configurations"]["Default"][
"TaskQueue.Recruiting.IsChecked"
] = "False" # 自动公招
data["Configurations"]["Default"][
"TaskQueue.Base.IsChecked"
] = "False" # 基建换班
data["Configurations"]["Default"][
"TaskQueue.Combat.IsChecked"
] = "False" # 刷理智
data["Configurations"]["Default"][
"TaskQueue.Mission.IsChecked"
] = "False" # 领取奖励
data["Configurations"]["Default"][
"TaskQueue.Mall.IsChecked"
] = "False" # 获取信用及购物
data["Configurations"]["Default"][
"TaskQueue.AutoRoguelike.IsChecked"
] = "False" # 自动肉鸽
data["Configurations"]["Default"][
"TaskQueue.Reclamation.IsChecked"
] = "False" # 生息演算
# 启动模拟器仅生效一次
if self.mode != "设置脚本" and mode != "Update" and self.if_open_emulator: