From 99e7b1557fc8ab5e77feff8dd9d3605ce307f8b5 Mon Sep 17 00:00:00 2001 From: oliver Date: Mon, 22 Jun 2026 11:22:38 +0800 Subject: [PATCH] fix(oclaw-bridge): share alarm WSS auth with analyze token Co-authored-by: Cursor --- .env.example | 3 +-- netx_api/config.py | 1 - netx_api/oclaw_alarm_forwarder.py | 2 +- web/src/i18n/en.ts | 2 +- web/src/i18n/zh.ts | 2 +- 5 files changed, 4 insertions(+), 6 deletions(-) diff --git a/.env.example b/.env.example index 0b5df0d..0153b53 100644 --- a/.env.example +++ b/.env.example @@ -13,8 +13,7 @@ NETX_OCLAW_ANALYZE_TOKEN= NETX_OCLAW_HEALTH_URL=http://127.0.0.1:8787/admin/api/ops-ai/health NETX_OCLAW_ALARM_WS_ENABLED=false NETX_OCLAW_ALARM_WS_URL=ws://127.0.0.1:8787/ws/netx-bridge -# 告警 WSS 独立 token(对应 OClaw 的 OCLAW_NETX_BRIDGE_TOKEN,与 ANALYZE_TOKEN 分开) -NETX_OCLAW_ALARM_WS_TOKEN= +# 告警 WSS 鉴权与 NETX_OCLAW_ANALYZE_TOKEN 共用(OClaw 侧 OCLAW_OPS_AI_SHARED_TOKEN) NETX_UME_BASE_URL=https://10.227.157.143:18014 NETX_UME_USERNAME= NETX_UME_PASSWORD= diff --git a/netx_api/config.py b/netx_api/config.py index e119623..425137d 100644 --- a/netx_api/config.py +++ b/netx_api/config.py @@ -22,7 +22,6 @@ class Settings(BaseSettings): oclaw_health_timeout_sec: float = 8.0 oclaw_alarm_ws_enabled: bool = False oclaw_alarm_ws_url: str = "ws://127.0.0.1:8787/ws/netx-bridge" - oclaw_alarm_ws_token: str = "" # UME RESTCONF integration ume_base_url: str = "" ume_username: str = "" diff --git a/netx_api/oclaw_alarm_forwarder.py b/netx_api/oclaw_alarm_forwarder.py index 04f5bd4..fdbe15b 100644 --- a/netx_api/oclaw_alarm_forwarder.py +++ b/netx_api/oclaw_alarm_forwarder.py @@ -33,7 +33,7 @@ def _utc_now_iso() -> str: def _bridge_token() -> str: - return str(getattr(settings, "oclaw_alarm_ws_token", "") or "").strip() + return str(getattr(settings, "oclaw_analyze_token", "") or "").strip() def _bridge_url() -> str: diff --git a/web/src/i18n/en.ts b/web/src/i18n/en.ts index fdfa0b5..fecc1d2 100644 --- a/web/src/i18n/en.ts +++ b/web/src/i18n/en.ts @@ -337,7 +337,7 @@ const en = { }, keyAlert: { title: "AI alarm monitor (OClaw WhatsApp)", - help: "Match UME key alarms by notificationId and push via OClaw WebSocket. Uses NETX_OCLAW_ALARM_WS_URL + NETX_OCLAW_ALARM_WS_TOKEN (OClaw OCLAW_NETX_BRIDGE_TOKEN), separate from analyze token.", + help: "Match UME key alarms by notificationId and push via OClaw WebSocket. Auth shares NETX_OCLAW_ANALYZE_TOKEN / OCLAW_OPS_AI_SHARED_TOKEN; set NETX_OCLAW_ALARM_WS_URL separately.", ws: "OClaw WSS", wsConnected: "connected", wsDisconnected: "disconnected", diff --git a/web/src/i18n/zh.ts b/web/src/i18n/zh.ts index 3b416fa..1dd61fb 100644 --- a/web/src/i18n/zh.ts +++ b/web/src/i18n/zh.ts @@ -335,7 +335,7 @@ const zh = { }, keyAlert: { title: "AI 告警监控(OClaw WhatsApp)", - help: "按 notificationId 匹配 UME 关键告警,经 OClaw WebSocket 推送到 WhatsApp 群。使用独立配置:NETX_OCLAW_ALARM_WS_URL + NETX_OCLAW_ALARM_WS_TOKEN(对应 OClaw OCLAW_NETX_BRIDGE_TOKEN)。", + help: "按 notificationId 匹配 UME 关键告警,经 OClaw WebSocket 推送到 WhatsApp 群。鉴权与 NETX_OCLAW_ANALYZE_TOKEN / OCLAW_OPS_AI_SHARED_TOKEN 共用;另需配置 NETX_OCLAW_ALARM_WS_URL。", ws: "OClaw WSS", wsConnected: "已连接", wsDisconnected: "未连接",