From 220e4fab27b7f419b3e89e2f2d28ae789aac09d7 Mon Sep 17 00:00:00 2001
From: wangzhibo <wangzhibo@shsening.com>
Date: 星期四, 08 十月 2026 16:29:55 +0800
Subject: [PATCH] 5种场景模式家长端ok
---
xiaozhi-esp32-server/main/manager-mobile/src/i18n/en.ts | 123 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 123 insertions(+), 0 deletions(-)
diff --git a/xiaozhi-esp32-server/main/manager-mobile/src/i18n/en.ts b/xiaozhi-esp32-server/main/manager-mobile/src/i18n/en.ts
index 14fbe86..6d86583 100644
--- a/xiaozhi-esp32-server/main/manager-mobile/src/i18n/en.ts
+++ b/xiaozhi-esp32-server/main/manager-mobile/src/i18n/en.ts
@@ -84,6 +84,8 @@
'home.daysAgo': 'days ago',
'home.languageModel': 'LLM',
'home.voiceModel': 'TTS',
+ 'home.noBoundDevice': 'No device bound',
+ 'home.onlineCount': '{online}/{total} online',
// Agent page
'agent.pageTitle': 'Agent',
@@ -91,6 +93,7 @@
'agent.deviceManagement': 'Device Management',
'agent.chatHistory': 'Chat History',
'agent.voiceprintManagement': 'Voiceprint Management',
+ 'agent.parentTasks': 'Learning Tasks',
'agent.editTitle': 'Edit Agent',
'agent.toolsTitle': 'Edit Features',
'agent.voiceActivityDetection': 'Voice Activity Detection',
@@ -305,6 +308,11 @@
'device.deviceType': 'Device Type',
'device.loading': 'Loading...',
'device.neverConnected': 'Never connected',
+ 'device.checkingOnline': 'Checking device status鈥�',
+ 'device.online': 'Device online',
+ 'device.offline': 'Device offline',
+ 'device.onlineHint': 'You can send immediate and scheduled tasks.',
+ 'device.offlineHint': 'Tasks cannot be sent. Chat history and other views still work.',
'device.justNow': 'Just now',
'device.minutesAgo': '{minutes} minutes ago',
'device.hoursAgo': '{hours} hours ago',
@@ -594,4 +602,119 @@
'voiceprint.audioNotExist': 'Audio does not exist',
'voiceprint.getAudioFailed': 'Failed to get audio',
'voiceprint.audioPlayFailed': 'Audio playback failed',
+
+ 'parentTask.pageTitle': 'Learning Tasks',
+ 'parentTask.createTitle': 'Create Learning Task',
+ 'parentTask.editTitle': 'Edit Learning Task',
+ 'parentTask.device': 'Device',
+ 'parentTask.selectDevice': 'Select a device',
+ 'parentTask.bindDeviceFirst': 'Bind a device first',
+ 'parentTask.runningSection': 'Running now',
+ 'parentTask.scheduledSection': 'Scheduled tasks',
+ 'parentTask.running': 'Running',
+ 'parentTask.emptySchedule': 'No schedules yet. Tap + to create extensive listening, shadowing, or chat.',
+ 'parentTask.startNow': 'Start now',
+ 'parentTask.saveSchedule': 'Save schedule',
+ 'parentTask.started': 'Sent to the device',
+ 'parentTask.saved': 'Schedule synced to the device',
+ 'parentTask.saveFailed': 'Save failed',
+ 'parentTask.deviceOffline': 'Device is offline, so nothing was saved. Turn it on and connect it to the network, then try again.',
+ 'parentTask.online': 'Device online',
+ 'parentTask.offline': 'Device offline',
+ 'parentTask.checkingOnline': 'Checking device status鈥�',
+ 'parentTask.onlineHint': 'You can send immediate and scheduled tasks.',
+ 'parentTask.offlineHint': 'Cannot send immediate or scheduled tasks. Turn the device on and connect it to the network.',
+ 'parentTask.startFailed': 'Dispatch failed. Check that the device is online.',
+ 'parentTask.stop': 'Stop',
+ 'parentTask.stopTitle': 'Stop current task',
+ 'parentTask.stopConfirm': 'The device will return to chat immediately.',
+ 'parentTask.stopped': 'Sent stop to the device',
+ 'parentTask.stopFailed': 'Stop failed. Check that the device is online.',
+ 'parentTask.deleteTitle': 'Delete task',
+ 'parentTask.deleteConfirm': 'This schedule will also be removed from the device.',
+ 'parentTask.deleted': 'Deleted',
+ 'parentTask.deleteFailed': 'Delete failed',
+ 'parentTask.scene': 'Scene',
+ 'parentTask.dispatchHint': 'Start now switches the device immediately. A schedule starts that mode at the set time, no voice command needed.',
+ 'parentTask.lesson': 'Lesson',
+ 'parentTask.pickScene': 'Choose a scene',
+ 'parentTask.pickLesson': 'Choose a lesson',
+ 'parentTask.repeat': 'Repeats',
+ 'parentTask.level': 'Level',
+ 'parentTask.system': 'Category',
+ 'parentTask.story': 'Idiom story',
+ 'parentTask.pickStory': 'Choose one story',
+ 'parentTask.noStories': 'No stories in this category yet. Add them in the lesson catalog.',
+ 'parentTask.sentenceCount': 'Shadowing has {n} sentences',
+ 'parentTask.enPassesTitle': 'How to listen in English',
+ 'parentTask.cnFixed': 'Chinese plays once at 1.0脳, then English uses the passes below.',
+ 'parentTask.enPassIndex': 'English pass {n}',
+ 'parentTask.addEnPass': 'Add an English pass',
+ 'parentTask.removePass': 'Remove',
+ 'parentTask.shadowingSettings': 'Shadowing',
+ 'parentTask.shadowingLang': 'Language',
+ 'parentTask.shadowingLang.cn': 'Chinese',
+ 'parentTask.shadowingLang.en': 'English',
+ 'parentTask.shadowingSpeed': 'Playback speed',
+ 'parentTask.shadowingHint': 'Listen window = actual play time 脳 1.2. Current speed {speed}脳; slower playback makes a longer window.',
+ 'parentTask.languagePair': 'Language pair',
+ 'parentTask.pickPair': 'Choose a language pair',
+ 'parentTask.pairSoon': 'coming soon',
+ 'parentTask.pairFallbackHint': 'Full phrase packs are still in progress. The device will practice in Chinese-English first.',
+ 'parentTask.duration': 'Duration (minutes, 0 = unlimited)',
+ 'parentTask.noDuration': 'No time limit',
+ 'parentTask.minutesValue': '{n} min',
+ 'parentTask.onComplete': 'When finished',
+ 'parentTask.completeChat': 'Return to chat',
+ 'parentTask.completePowerOff': 'Soft power off',
+ 'parentTask.howToRun': 'How to run',
+ 'parentTask.immediate': 'Run now',
+ 'parentTask.schedule': 'Schedule',
+ 'parentTask.schedule.daily': 'Daily',
+ 'parentTask.schedule.hourly': 'Hourly',
+ 'parentTask.schedule.interval': 'Interval',
+ 'parentTask.time': 'Time',
+ 'parentTask.pickTime': 'Pick a time',
+ 'parentTask.timeHint': 'Any hour and minute of the day',
+ 'parentTask.repeatDays': 'Repeat',
+ 'parentTask.everyDay': 'Every day',
+ 'parentTask.weekdays': 'Weekdays',
+ 'parentTask.hourlyMinute': 'Minute of each hour',
+ 'parentTask.hourlyOnTheHour': 'Every hour on the hour',
+ 'parentTask.hourlyAt': 'Every hour at :{minute}',
+ 'parentTask.everyMinutes': 'Every {minutes} minutes',
+ 'parentTask.intervalMinutes': 'Interval (minutes)',
+ 'parentTask.weekday.mon': 'Mon',
+ 'parentTask.weekday.tue': 'Tue',
+ 'parentTask.weekday.wed': 'Wed',
+ 'parentTask.weekday.thu': 'Thu',
+ 'parentTask.weekday.fri': 'Fri',
+ 'parentTask.weekday.sat': 'Sat',
+ 'parentTask.weekday.sun': 'Sun',
+
+ 'parentHistory.pageTitle': 'History',
+ 'parentHistory.detailTitle': 'Record',
+ 'parentHistory.entry': 'History',
+ 'parentHistory.empty': 'No records yet. They appear after the child finishes a task.',
+ 'parentHistory.loadFailed': 'Failed to load',
+ 'parentHistory.status.running': 'In progress',
+ 'parentHistory.status.completed': 'Completed',
+ 'parentHistory.status.cancelled': 'Stopped',
+ 'parentHistory.status.preempted': 'Interrupted',
+ 'parentHistory.status.other': 'Incomplete',
+ 'parentHistory.source.immediate': 'Started now',
+ 'parentHistory.source.schedule': 'Scheduled',
+ 'parentHistory.source.voice': 'Voice command',
+ 'parentHistory.durationSec': '{s}s',
+ 'parentHistory.durationMin': '{m}m {s}s',
+ 'parentHistory.turns': '{n} lines',
+ 'parentHistory.sentence': 'Line {n}',
+ 'parentHistory.expected': 'Original',
+ 'parentHistory.asr': 'Follow-read',
+ 'parentHistory.noExpected': 'No original text',
+ 'parentHistory.noAsr': 'No follow-read recognized',
+ 'parentHistory.noAudio': 'No playable recording',
+ 'parentHistory.emptyTurns': 'No sentence records for this shadowing session.',
+ 'parentHistory.extensiveHint': 'Extensive listening has no per-sentence recordings. This page shows completion and duration.',
+ 'parentHistory.noChat': 'No chat was saved for this window.',
}
--
Gitblit v1.9.1