diff --git a/frontend/src/views/SettingsView.vue b/frontend/src/views/SettingsView.vue index 84d2317..3fecf98 100644 --- a/frontend/src/views/SettingsView.vue +++ b/frontend/src/views/SettingsView.vue @@ -377,7 +377,7 @@ const eventScriptEnvironmentExamples = [ ]; const eventScriptModeOptions = [ - { label: "璺緞", value: "path" }, + { label: "路径", value: "path" }, { label: "脚本文本", value: "inline" } ]; @@ -461,12 +461,12 @@ const canSendTestWebhook = computed(() => Boolean(form.webhookUrl.trim())); const segmentedExamplePath = computed(() => { const extension = form.defaultOutputFormat === 1 ? "ts" : "mp4"; - return `Douyin/2026/04/15/主播名?221530_origin_主播名峗直播标题_123456789_00001.${extension}`; + return `Douyin/2026/04/15/主播名_221530_origin_主播名_直播标题_123456789_00001.${extension}`; }); const nestedSegmentedExamplePath = computed(() => { const extension = form.defaultOutputFormat === 1 ? "ts" : "mp4"; - return `Douyin/origin/2026/04/15/主播名?221530_origin_主播名峗直播标题_123456789/221530_origin_主播名峗直播标题_123456789_00001.${extension}`; + return `Douyin/origin/2026/04/15/主播名_221530_origin_主播名_直播标题_123456789/221530_origin_主播名_直播标题_123456789_00001.${extension}`; }); async function loadSettings() { @@ -571,7 +571,7 @@ async function sendTestEmail() { emailExceptionBodyTemplateHtml: form.emailExceptionBodyTemplateHtml }); - ElMessage.success("娴嬭瘯閭欢宸插彂閫侊紝璇锋鏌ユ敹浠剁"); + ElMessage.success("测试邮件已发送,请检查收件箱"); } catch (error) { ElMessage.error(getApiErrorMessage(error, "Failed to send test email.")); } finally { @@ -630,7 +630,7 @@ async function runRetentionCleanup() { await startRetentionCleanupTracking(data); ElMessage.success("Retention cleanup background task created."); } catch (error) { - ElMessage.error(getApiErrorMessage(error, "淇濈暀娓呯悊鎵ц澶辫触")); + ElMessage.error(getApiErrorMessage(error, "保留清理执行失败")); } finally { runningRetentionCleanup.value = false; } @@ -962,15 +962,15 @@ watch(
- + -

褰曞埗鍩虹

+

录制基础

默认画质、输出格式、分段策略、ffmpeg 模板和网络容错等录制基础参数在此集中管理。

- + @@ -1183,13 +1183,13 @@ watch(
-

寮瑰箷褰曞埗

+

弹幕录制

Control parallel danmaku XML recording, non-chat event capture, and retry / polling pacing.

- + @@ -1223,11 +1223,11 @@ watch(
-

璺緞妯℃澘

+

路径模板

Both directory and filename templates support variables. Segmented layouts are fully controlled by the templates themselves.

- +
示例输出
-
榛樿鍒嗘锛歿{ segmentedExamplePath }}
-
鐩綍妯℃澘鍚?{fileStem}锛歿{ nestedSegmentedExamplePath }}
+
默认分段:{{ segmentedExamplePath }}
+
目录模板含 {fileStem}:{{ nestedSegmentedExamplePath }}
@@ -1304,7 +1304,7 @@ watch( - + @@ -1319,12 +1319,12 @@ watch( - + - +
-

WebDAV 鐩爣

+

WebDAV 目标

Create remote directories from recording-relative paths and upload the video plus danmaku files.

@@ -1354,7 +1354,7 @@ watch(
- + @@ -1375,7 +1375,7 @@ watch(
-

S3 鐩爣

+

S3 目标

Supports custom endpoint, bucket, region, and prefix settings for object-storage compatible services.

@@ -1422,7 +1422,8 @@ watch(
- 鑷姩涓婁紶鍥哄畾澶勭悊鈥滆棰戞枃浠?+ 瀵瑰簲寮瑰箷 XML鈥濄€傚彧鏈変袱鑰呴兘涓婁紶鎴愬姛骞朵笖浣犳墦寮€鈥滀笂浼犲悗鍒犳湰鍦扳€濇椂锛岀郴缁熸墠浼氭竻鐞嗘湰鍦版枃浠躲€?
+ 自动上传固定处理“视频文件 + 对应弹幕 XML”。只有两者都上传成功并且你打开“上传后删本地”时,系统才会清理本地文件。 +
@@ -1534,7 +1535,7 @@ watch( - + @@ -1588,7 +1589,7 @@ watch( - + @@ -1609,7 +1610,7 @@ watch( {{ scriptTestResults.live_ended?.detail }}
- 鑷畾涔夋棩蹇楄緭鍑猴細{{ scriptTestResults.live_ended?.customLogOutput }} + 自定义日志输出:{{ scriptTestResults.live_ended?.customLogOutput }}
@@ -1663,7 +1664,7 @@ watch( {{ scriptTestResults.segment_completed?.detail }}
- 鑷畾涔夋棩蹇楄緭鍑猴細{{ scriptTestResults.segment_completed?.customLogOutput }} + 自定义日志输出:{{ scriptTestResults.segment_completed?.customLogOutput }}
@@ -1711,22 +1712,21 @@ watch(
- + -

Webhook 閫氱煡

Webhook 通知

Send fixed JSON POST payloads with custom headers. Exception notifications also cover low-storage stop events and event-script failures after retries are exhausted.

- + - + @@ -1748,7 +1748,7 @@ watch( - + - + -

閭欢閫氱煡

邮件通知

Configure SMTP plus HTML templates for live-started and exception alerts. Exception notifications also cover low-storage stop events and event-script failures after retries are exhausted.

- + - + @@ -1853,7 +1852,7 @@ watch( v-model="form.emailToAddresses" type="textarea" :rows="3" - placeholder="澶氫釜鍦板潃鍙敤閫楀彿銆佸垎鍙锋垨鎹㈣鍒嗛殧" + placeholder="多个地址可用逗号、分号或换行分隔" />
@@ -1867,11 +1866,11 @@ watch( - + - + @@ -1881,16 +1880,16 @@ watch(
-

异常提醒妯℃澘

+

异常提醒模板

Exception emails inject source, summary, detail, task context values, and optional event script output into the HTML body.

- + - +
@@ -1906,11 +1905,12 @@ watch(
- 閭欢妯℃澘閲岀殑 {{detectedAtUtc}} 鍜?{{occurredAtUtc}} 瀛楁鍚嶄繚鎸佷笉鍙橈紝浣嗗疄闄呮覆鏌撳€煎凡缁忕粺涓€鏀规垚鍖椾含鏃堕棿锛圲TC+8锛夈€? {{eventScriptOutput}} 鍒欏搴旇剼鏈€氳繃鑷畾涔夋棩蹇楁枃浠惰緭鍑虹殑鏂囨湰鍐呭銆?
+ 邮件模板里的 {{detectedAtUtc}}{{occurredAtUtc}} 字段名保持不变,但实际渲染值已经统一改成北京时间(UTC+8)。{{eventScriptOutput}} 则对应脚本通过自定义日志文件输出的文本内容。 +
Sending a test email does not save settings. The email renders both the live-started and exception template examples.
- 娴嬭瘯閭欢 + 测试邮件
@@ -2012,7 +2012,7 @@ watch( v-model="form.douyinCookie" type="textarea" :rows="4" - placeholder="鍙矘璐?ttwid銆乵sToken 绛?Cookie" + placeholder="可粘贴 ttwid、msToken 等 Cookie" />