feat: remove simadmin restart and add confirmations

This commit is contained in:
2026-05-16 14:51:56 +08:00
parent f4d9a04578
commit 34a976c460
2 changed files with 2 additions and 60 deletions
+1 -30
View File
@@ -12,7 +12,7 @@
#[priority: 999]
#[platform: qq,qb,wx,wb,tg,tb,fs,we,web,wxmp]
#[open_source: true]
#[version: 1.3.1]
#[version: 1.3.2]
#[public: false]
#[price: 0]
#[description: 管理员专用:兼容多个 SimAdmin 实例,支持多级菜单配置管理、状态查询和短信发送。配置桶 otto/simadmin_instances。]
@@ -539,17 +539,6 @@ def choose_restart_targets(sender, action_spec):
return [item], False
def confirm_restart(sender, selected, action_spec, is_all=False):
names = "".join(x["name"] for x in selected)
warning = "确认对【%s】执行【%s】?\n" % (names, action_spec["label"])
if is_all:
warning += "这是批量操作,会影响全部启用设备。"
if action_spec["path"].endswith("/system/reboot"):
warning += "系统重启会导致设备离线。"
warning += "输入 yes 确认"
return confirm(sender, warning)
def handle_restart(sender, message):
text = str(message or "").strip()
direct = re.match(r"^sim重启(基带|服务|系统)$", text)
@@ -564,9 +553,6 @@ def handle_restart(sender, message):
is_all = target.lower() in ("all", "*", "全部")
else:
raise SimAdminError("格式错误:请发送 sim重启基带 / sim重启服务 / sim重启系统")
if not confirm_restart(sender, selected, action_spec, is_all):
reply(sender, "已取消重启操作")
return
restart_instances(sender, selected, action_spec)
@@ -583,9 +569,6 @@ def menu_restart(sender, idx=None, action_name=None):
action_name = listen_text(sender, "请选择重启类型:\n1. 基带\n2. 服务\n3. 系统\n输入 1/2/3 或 基带/服务/系统")
action_name = {"1": "基带", "2": "服务", "3": "系统"}.get(action_name, action_name)
action_spec = normalize_restart_action(action_name)
if not confirm(sender, "确认对【%s】执行【%s】?输入 yes 确认" % (item["name"], action_spec["label"])):
reply(sender, "已取消重启操作")
return
restart_instances(sender, [item], action_spec)
@@ -597,14 +580,6 @@ def menu_restart_all(sender, action_name=None):
action_name = listen_text(sender, "请选择一键重启全部设备类型:\n1. 基带\n2. 服务\n3. 系统\n输入 1/2/3 或 基带/服务/系统")
action_name = {"1": "基带", "2": "服务", "3": "系统"}.get(action_name, action_name)
action_spec = normalize_restart_action(action_name)
names = "".join(x["name"] for x in instances)
prompt = "确认对全部启用设备【%s】执行【%s】?\n这是批量操作" % (names, action_spec["label"])
if action_spec["path"].endswith("/system/reboot"):
prompt += ",系统重启会导致设备离线"
prompt += "。输入 yes 确认"
if not confirm(sender, prompt):
reply(sender, "已取消一键重启")
return
restart_instances(sender, instances, action_spec)
@@ -740,10 +715,6 @@ def menu_add(sender):
"token": token,
"enabled": parse_bool(enabled_text, True),
}, len(instances))
reply(sender, "即将添加:\n" + instance_brief(item) + "\n输入 yes 确认")
if not confirm(sender, "确认添加?"):
reply(sender, "已取消添加")
return
instances.append(item)
save_instances(instances)
reply(sender, "已添加 SimAdmin 实例:" + item["name"])
+1 -30
View File
@@ -12,7 +12,7 @@
#[priority: 999]
#[platform: qq,qb,wx,wb,tg,tb,fs,we,web,wxmp]
#[open_source: true]
#[version: 1.3.1]
#[version: 1.3.2]
#[public: false]
#[price: 0]
#[description: 管理员专用:兼容多个 SimAdmin 实例,支持多级菜单配置管理、状态查询和短信发送。配置桶 otto/simadmin_instances。]
@@ -539,17 +539,6 @@ def choose_restart_targets(sender, action_spec):
return [item], False
def confirm_restart(sender, selected, action_spec, is_all=False):
names = "".join(x["name"] for x in selected)
warning = "确认对【%s】执行【%s】?\n" % (names, action_spec["label"])
if is_all:
warning += "这是批量操作,会影响全部启用设备。"
if action_spec["path"].endswith("/system/reboot"):
warning += "系统重启会导致设备离线。"
warning += "输入 yes 确认"
return confirm(sender, warning)
def handle_restart(sender, message):
text = str(message or "").strip()
direct = re.match(r"^sim重启(基带|服务|系统)$", text)
@@ -564,9 +553,6 @@ def handle_restart(sender, message):
is_all = target.lower() in ("all", "*", "全部")
else:
raise SimAdminError("格式错误:请发送 sim重启基带 / sim重启服务 / sim重启系统")
if not confirm_restart(sender, selected, action_spec, is_all):
reply(sender, "已取消重启操作")
return
restart_instances(sender, selected, action_spec)
@@ -583,9 +569,6 @@ def menu_restart(sender, idx=None, action_name=None):
action_name = listen_text(sender, "请选择重启类型:\n1. 基带\n2. 服务\n3. 系统\n输入 1/2/3 或 基带/服务/系统")
action_name = {"1": "基带", "2": "服务", "3": "系统"}.get(action_name, action_name)
action_spec = normalize_restart_action(action_name)
if not confirm(sender, "确认对【%s】执行【%s】?输入 yes 确认" % (item["name"], action_spec["label"])):
reply(sender, "已取消重启操作")
return
restart_instances(sender, [item], action_spec)
@@ -597,14 +580,6 @@ def menu_restart_all(sender, action_name=None):
action_name = listen_text(sender, "请选择一键重启全部设备类型:\n1. 基带\n2. 服务\n3. 系统\n输入 1/2/3 或 基带/服务/系统")
action_name = {"1": "基带", "2": "服务", "3": "系统"}.get(action_name, action_name)
action_spec = normalize_restart_action(action_name)
names = "".join(x["name"] for x in instances)
prompt = "确认对全部启用设备【%s】执行【%s】?\n这是批量操作" % (names, action_spec["label"])
if action_spec["path"].endswith("/system/reboot"):
prompt += ",系统重启会导致设备离线"
prompt += "。输入 yes 确认"
if not confirm(sender, prompt):
reply(sender, "已取消一键重启")
return
restart_instances(sender, instances, action_spec)
@@ -740,10 +715,6 @@ def menu_add(sender):
"token": token,
"enabled": parse_bool(enabled_text, True),
}, len(instances))
reply(sender, "即将添加:\n" + instance_brief(item) + "\n输入 yes 确认")
if not confirm(sender, "确认添加?"):
reply(sender, "已取消添加")
return
instances.append(item)
save_instances(instances)
reply(sender, "已添加 SimAdmin 实例:" + item["name"])