From 565e4bb3d6fbec006bab8d834315a59bd9a165df Mon Sep 17 00:00:00 2001 From: tian <11429339@qq.com> Date: Sun, 2 Aug 2026 13:10:59 +0800 Subject: [PATCH] =?UTF-8?q?feat(control):=20=E7=9C=8B=E6=9D=BF=E9=A1=B5?= =?UTF-8?q?=E8=A7=86=E9=A2=91=E6=BA=90=E5=8E=9F=E5=9B=A0=E7=AE=80=E5=8C=96?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 看板窗口小,原因改为类型级摘要(去掉 URL/细节): '视频源异常:RTSP 打开失败' (由 last_error 提取错误类型前缀) hlsError 兜底也显示具体原因(有数据时),不再模糊提示 '请检查视频源'。监控页保留完整原因。 --- control/internal/web/ui/templates/console.html | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/control/internal/web/ui/templates/console.html b/control/internal/web/ui/templates/console.html index a3f5033..13611e7 100644 --- a/control/internal/web/ui/templates/console.html +++ b/control/internal/web/ui/templates/console.html @@ -183,6 +183,13 @@ function esc(s) { return (s||"").replace(/&/g,"&").replace(//g,">").replace(/"/g,"""); } + // 简化错误原因:只保留类型(如 'RTSP 打开失败'),去掉 URL/细节(看板窗口小) + function briefError(e) { + if (!e) return '视频源异常'; + var m = e.match(/^([^::((]+)/); + return '视频源异常:' + (m ? m[1].trim() : '请检查视频源'); + } + // 视频源状态覆盖层:离线红字/连接中/状态未知 function applySourceStatus(tile, status, hlsError) { var overlay = tile.querySelector('.video-status-overlay'); @@ -192,7 +199,8 @@ tile.appendChild(overlay); } if (hlsError) { - overlay.innerHTML = '
无视频输出
HLS 流不可用,请检查视频源
'; + var why = (status && status.last_error) ? briefError(status.last_error) : '视频源异常:请检查视频源'; + overlay.innerHTML = '
无视频输出
' + why + '
'; overlay.style.display = 'flex'; return; } @@ -211,7 +219,7 @@ return; } overlay.innerHTML = '
离线
' + - (status.last_error ? '
' + esc(status.last_error) + '
' : ''); + '
' + briefError(status.last_error) + '
'; overlay.style.display = 'flex'; }