From 0f0ba469893ae5a2c487eb070263f6967a295aa9 Mon Sep 17 00:00:00 2001 From: hotyue <52734432+hotyue@users.noreply.github.com> Date: Sat, 25 Apr 2026 06:18:22 +0000 Subject: [PATCH] =?UTF-8?q?feat(core):=20=E4=BC=98=E5=8C=96=E9=83=A8?= =?UTF-8?q?=E7=BD=B2=E4=B8=8E=E5=8D=87=E7=BA=A7=E9=93=BE=E8=B7=AF=EF=BC=8C?= =?UTF-8?q?=E6=96=B0=E8=8A=82=E7=82=B9=E5=85=A5=E5=88=97=E5=8F=8A=20OTA=20?= =?UTF-8?q?=E6=8D=B7=E6=8A=A5=E5=BA=95=E9=83=A8=E8=BF=BD=E5=8A=A0=20[?= =?UTF-8?q?=E4=B8=80=E9=94=AE=E5=94=A4=E9=86=92=E6=8E=A7=E5=88=B6=E5=8F=B0?= =?UTF-8?q?]=20=E6=8C=89=E9=92=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- core/install.sh | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/core/install.sh b/core/install.sh index 660a396..0e39ed6 100755 --- a/core/install.sh +++ b/core/install.sh @@ -797,31 +797,34 @@ if [[ -n "$TG_TOKEN" ]] && [[ -n "$CHAT_ID" ]]; then [ -z "$OLD_VERSION" ] && OLD_VERSION="3.3.1" # [路由表 1]: 跨代兼容 (老版本 < v3.3.2) - # 必须强制下发带有 #REGISTER# 的警告,引导长官重新同步哈希身份 if version_lt "$OLD_VERSION" "3.3.2"; then echo -e "\n📡 [路由枢纽] 正在执行跨代架构重组 (v${OLD_VERSION} -> v${TARGET_VERSION})..." - curl -s -X POST "${TG_API_URL}" \ - -d "chat_id=${CHAT_ID}" \ - -d "parse_mode=Markdown" \ - -d "text=✨ *IP-Sentinel 引擎热更新完成!* + TEXT_MSG="✨ *IP-Sentinel 引擎热更新完成!* 📍 节点:\`${NODE_ALIAS}\` 🌐 IP:\`${SAFE_PUBLIC_IP}\` 🚀 状态:v${TARGET_VERSION} OTA 动态活体引擎已部署 ⚠️ *战区架构已重组,请务必点击下方指令并发送,以同步新的防撞档案:* -\`${REG_MSG}\`" >/dev/null 2>&1 +\`${REG_MSG}\`" + + # [v4.0.3 体验升级] 注入交互式控制台按钮 + JSON_PAYLOAD=$(jq -n --arg cid "$CHAT_ID" --arg txt "$TEXT_MSG" --arg cb "manage:${NODE_NAME}" '{chat_id: $cid, text: $txt, parse_mode: "Markdown", reply_markup: {inline_keyboard: [[{text: "⚙️ 调出该节点控制台", callback_data: $cb}]]}}') + curl -s -X POST "${TG_API_URL}" -H "Content-Type: application/json" -d "$JSON_PAYLOAD" >/dev/null 2>&1 + echo -e "\033[32m✅ 升级通知已推送!请前往 TG 点击注册指令完成身份同步!\033[0m" # [路由表 2]: 现代静默升级 (老版本 >= v3.3.2) else echo -e "\n📡 [路由枢纽] 正在执行静默平滑升级 (v${OLD_VERSION} -> v${TARGET_VERSION})..." - curl -s -X POST "${TG_API_URL}" \ - -d "chat_id=${CHAT_ID}" \ - -d "parse_mode=Markdown" \ - -d "text=✨ *IP-Sentinel 引擎热更新完成!* + TEXT_MSG="✨ *IP-Sentinel 引擎热更新完成!* 📍 节点:\`${NODE_ALIAS}\` 🌐 IP:\`${SAFE_PUBLIC_IP}\` -🚀 状态:v${TARGET_VERSION} OTA 动态活体引擎已部署" >/dev/null 2>&1 +🚀 状态:v${TARGET_VERSION} OTA 动态活体引擎已部署" + + # [v4.0.3 体验升级] 注入交互式控制台按钮 + JSON_PAYLOAD=$(jq -n --arg cid "$CHAT_ID" --arg txt "$TEXT_MSG" --arg cb "manage:${NODE_NAME}" '{chat_id: $cid, text: $txt, parse_mode: "Markdown", reply_markup: {inline_keyboard: [[{text: "⚙️ 调出该节点控制台", callback_data: $cb}]]}}') + curl -s -X POST "${TG_API_URL}" -H "Content-Type: application/json" -d "$JSON_PAYLOAD" >/dev/null 2>&1 + echo -e "\033[32m✅ 升级成功通知已推送到您的 Telegram!\033[0m" fi @@ -836,16 +839,17 @@ if [[ -n "$TG_TOKEN" ]] && [[ -n "$CHAT_ID" ]]; then else # [全新安装路由] echo -e "\n📡 正在向指挥部发送注册暗号..." - PUSH_RESULT=$(curl -s -X POST "${TG_API_URL}" \ - -d "chat_id=${CHAT_ID}" \ - -d "parse_mode=Markdown" \ - -d "text=✨ *IP-Sentinel 部署成功!* + TEXT_MSG="✨ *IP-Sentinel 部署成功!* 📍 区域:${REGION_NAME} 🌐 IP:${SAFE_PUBLIC_IP} 🔌 端口:${AGENT_PORT} 🔑 *请点击下方指令复制并回复给机器人:* -\`${REG_MSG}\`") +\`${REG_MSG}\`" + + # [v4.0.3 体验升级] 注入交互式控制台按钮 + JSON_PAYLOAD=$(jq -n --arg cid "$CHAT_ID" --arg txt "$TEXT_MSG" --arg cb "manage:${NODE_NAME}" '{chat_id: $cid, text: $txt, parse_mode: "Markdown", reply_markup: {inline_keyboard: [[{text: "⚙️ 调出该节点控制台", callback_data: $cb}]]}}') + PUSH_RESULT=$(curl -s -X POST "${TG_API_URL}" -H "Content-Type: application/json" -d "$JSON_PAYLOAD") if echo "$PUSH_RESULT" | grep -q '"ok":true'; then echo -e "\033[32m✅ 注册信息已推送到您的 Telegram,请按指令完成最终激活!\033[0m"