wangzhibo
2026-10-08 220e4fab27b7f419b3e89e2f2d28ae789aac09d7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
// 简体中文语言包
export default {
  // TabBar
  'tabBar.home': '首页',
  'tabBar.deviceConfig': '配网',
  'tabBar.settings': '系统',
  // 设置页面标题
  'settings.title': '设置',
  // 登录页面
  'login.pageTitle': '登录',
  'login.navigationTitle': '登录',
  'login.fetchConfigError': '获取配置失败:',
  'login.selectLanguage': '选择语言',
  'login.selectLanguageTip': '中文',
  'login.welcomeBack': '欢迎回来',
  'login.pleaseLogin': '请登录您的账户',
  'login.enterUsername': '请输入用户名',
  'login.enterPassword': '请输入密码',
  'login.enterCaptcha': '请输入验证码',
  'login.loginButton': '登录',
  'login.loggingIn': '登录中...',
  'login.noAccount': '新用户注册',
  'login.enterPhone': '请输入手机号码',
  'login.selectCountry': '选择国家/地区',
  'login.confirm': '确认',
  'login.serverSetting': '服务端设置',
  'login.requiredUsername': '用户名不能为空',
  'login.requiredPassword': '密码不能为空',
  'login.requiredCaptcha': '验证码不能为空',
  'login.requiredMobile': '请输入正确的手机号码',
  'login.captchaError': '图形验证码错误',
  'login.forgotPassword': '忘记密码',
  'login.userAgreement': '用户协议',
  'login.privacyPolicy': '隐私政策',
 
  // 注册页面
  'register.pageTitle': '注册',
  'register.createAccount': '创建账户',
  'register.enterUsername': '请输入用户名',
  'register.enterPassword': '请输入密码',
  'register.confirmPassword': '请确认密码',
  'register.enterPhone': '请输入手机号码',
  'register.enterCode': '请输入验证码',
  'register.getCode': '获取验证码',
  'register.agreeTerms': '我已阅读并同意',
  'register.terms': '《用户协议》',
  'register.privacy': '《隐私政策》',
  'register.registerButton': '注册',
  'register.registering': '注册中...',
  'register.haveAccount': '已有账户?',
  'register.loginNow': '立即登录',
  'register.selectCountry': '选择国家/地区',
  'register.confirm': '确认',
  'register.captchaSendSuccess': '验证码发送成功',
 
  // 首页
  'home.pageTitle': '首页',
  'home.createAgent': '创建智能体',
  'home.agentName': '智能体',
  'home.modelInfo': '模型信息',
  'home.lastActive': '最近活跃',
  'home.greeting': '你好,小智',
  'home.subtitle': '让我们度过',
  'home.wonderfulDay': '美好的一天!',
  'home.emptyState': '暂无智能体',
  'home.deviceManagement': '设备管理',
  'home.lastConversation': '最近对话:',
  'home.delete': '删除',
  'home.createFirstAgent': '点击右下角 + 号创建您的第一个智能体',
  'home.dialogTitle': '创建智能体',
  'home.inputPlaceholder': '例如:客服助手、语音助理、知识问答',
  'home.createError': '名称长度必须在 1 到 64 个字符之间',
  'home.createNow': '立即创建',
  'home.deleteConfirmTitle': '删除智能体',
  'home.confirmDeleteAgent': '删除后无法恢复。请输入智能体名称“{agentName}”确认删除。',
  'home.deleteAgentNamePlaceholder': '请输入智能体名称',
  'home.deleteAgentNameMismatch': '输入的智能体名称不匹配',
  'home.deleteAgentPasteForbidden': '请手动输入智能体名称,不允许粘贴',
  'home.deleteAgentMissingInfo': '无法确认智能体信息,请刷新后重试',
  'home.deleteAgentSuccess': '智能体删除成功',
  'home.justNow': '刚刚',
  'home.minutesAgo': '分钟前',
  'home.hoursAgo': '小时前',
  'home.daysAgo': '天前',
  'home.languageModel': '语言模型',
  'home.voiceModel': '音色模型',
  'home.noBoundDevice': '暂无绑定设备',
  'home.onlineCount': '{online}/{total} 台在线',
 
  // Agent页面
  'agent.pageTitle': '智能体',
  'agent.roleConfig': '角色配置',
  'agent.deviceManagement': '设备管理',
  'agent.chatHistory': '聊天记录',
  'agent.voiceprintManagement': '声纹管理',
  'agent.parentTasks': '学习任务',
  'agent.editTitle': '编辑智能体',
  'agent.toolsTitle': '编辑功能',
  'agent.voiceActivityDetection': '语音活动检测',
  'agent.speechRecognition': '语音识别',
  'agent.largeLanguageModel': '大语言模型',
  'agent.save': '保存',
  'agent.cancel': '取消',
  // Agent编辑页面
  'agent.basicInfo': '基础信息',
  'agent.agentName': '助手昵称',
  'agent.inputAgentName': '请输入助手昵称',
  'agent.roleMode': '角色模式',
  'agent.agentTag': '智能体标签',
  'agent.addAgentTag': '添加标签',
  'agent.inputAgentTag': '请输入智能体标签',
  'agent.contextProvider': '上下文源',
  'agent.contextProviderSuccess': '已成功添加 {count} 个源。',
  'agent.contextProviderDocLink': '如何部署上下文源',
  'agent.editContextProvider': '编辑源',
  'agent.roleDescription': '角色介绍',
  'agent.inputRoleDescription': '请输入角色介绍',
  'agent.modelConfig': '模型配置',
  'agent.vad': '语音活动检测',
  'agent.asr': '语音识别',
  'agent.llm': '主语言模型',
  'agent.slm': '小参数模型',
  'agent.vllm': '视觉大模型',
  'agent.intent': '意图识别',
  'agent.memory': '记忆',
  'agent.voiceSettings': '语音设置',
  'agent.tts': '语音合成',
  'agent.voiceprint': '角色音色',
  'agent.plugins': '插件',
  'agent.editFunctions': '编辑功能',
  'agent.historyMemory': '历史记忆',
  'agent.memoryContent': '记忆内容',
  'agent.saving': '保存中...',
  'agent.saveSuccess': '保存成功',
  'agent.saveFail': '保存失败',
  'agent.ttsOptionsLoadFailed': '语音选项加载失败,已保留原来的语音配置',
  'agent.loadFail': '加载失败',
  'agent.pleaseInputAgentName': '请输入智能体名称',
  'agent.pleaseInputRoleDescription': '请输入角色介绍',
  'agent.pleaseSelect': '请选择',
  'agent.reportText': '上报文字',
  'agent.reportTextVoice': '上报文字+语音',
  'agent.reportMode': '上报模式',
  'agent.language': '对话语言',
  'agent.languageConfig': '语速音调',
  'agent.ttsVolume': '音量',
  'agent.ttsRate': '语速',
  'agent.ttsPitch': '音调',
  'agent.volumeHint': '-100=最小, 0=标准, 100=最大',
  'agent.speedHint': '-100=最慢, 0=标准, 100=最快',
  'agent.pitchHint': '-100=最低, 0=标准, 100=最高',
 
  // 智能体历史版本
  'agentSnapshot.title': '历史版本',
  'agentSnapshot.empty': '暂无历史版本',
  'agentSnapshot.emptyTip': '保存配置后会生成历史版本',
  'agentSnapshot.version': '版本',
  'agentSnapshot.createdAt': '保存时间',
  'agentSnapshot.source': '来源',
  'agentSnapshot.changedFields': '变更内容',
  'agentSnapshot.view': '查看',
  'agentSnapshot.restore': '恢复',
  'agentSnapshot.delete': '删除',
  'agentSnapshot.loadMore': '加载更多',
  'agentSnapshot.detailTitle': '变更详情',
  'agentSnapshot.restorePreviewTitle': '恢复预览',
  'agentSnapshot.confirmRestore': '确认恢复',
  'agentSnapshot.currentVersion': '最新快照',
  'agentSnapshot.beforeChange': '变化前',
  'agentSnapshot.afterChange': '变化后',
  'agentSnapshot.beforeRestore': '恢复前',
  'agentSnapshot.afterRestore': '恢复后',
  'agentSnapshot.configValue': '配置值',
  'agentSnapshot.emptyValue': '无',
  'agentSnapshot.secretRedacted': '密钥已隐藏',
  'agentSnapshot.redactedValueChanged': '值已脱敏,但确有变化',
  'agentSnapshot.noChangedContent': '无可显示变更',
  'agentSnapshot.recordedChange': '记录时发生变更',
  'agentSnapshot.noRestoreNeeded': '当前配置与目标版本相同,无需恢复',
  'agentSnapshot.unsavedChangesTitle': '存在未保存修改',
  'agentSnapshot.unsavedChangesWarning': '继续恢复会放弃当前页面中尚未保存的修改。',
  'agentSnapshot.discardAndRestore': '放弃修改并恢复',
  'agentSnapshot.restoreConfirm': '确定恢复到版本 #{version}?当前配置会保留在历史中。',
  'agentSnapshot.restoreMemoryWarning': '恢复到无记忆版本会清空该智能体聊天记录,请确认风险。',
  'agentSnapshot.restoreChatHistoryDestructiveWarning': '此恢复会永久删除该智能体现有的聊天记录。聊天记录不包含在配置快照中,删除后无法通过历史版本恢复。',
  'agentSnapshot.restoreSuccess': '版本已恢复',
  'agentSnapshot.restoreFailed': '版本恢复失败',
  'agentSnapshot.reloadAfterRestorePending': '正在重新加载恢复后的配置和标签,完成前无法保存。',
  'agentSnapshot.reloadAfterRestoreFailed': '无法重新加载恢复后的配置或标签。为防止旧数据覆盖恢复结果,保存已禁用,请重试。',
  'agentSnapshot.retryReload': '重新加载',
  'agentSnapshot.mutationBusy': '配置正在保存或重新加载,请完成后再打开历史版本或恢复。',
  'agentSnapshot.deleteConfirm': '确定删除版本 #{version}?此操作不可撤销。',
  'agentSnapshot.deleteSuccess': '历史版本已删除',
  'agentSnapshot.deleteFailed': '历史版本删除失败',
  'agentSnapshot.fetchFailed': '获取历史版本失败',
  'agentSnapshot.detailFailed': '获取版本详情失败',
  'agentSnapshot.correctWordCount': '共 {count} 个替换词',
  'agentSnapshot.source.config': '配置保存',
  'agentSnapshot.source.current': '当前配置',
  'agentSnapshot.source.restore': '恢复结果',
  'agentSnapshot.source.initial': '初始版本',
  'agentSnapshot.field.initial': '初始快照',
  'agentSnapshot.field.agentCode': '智能体编码',
  'agentSnapshot.field.agentName': '助手昵称',
  'agentSnapshot.field.asrModelId': '语音识别',
  'agentSnapshot.field.vadModelId': '语音活动检测',
  'agentSnapshot.field.llmModelId': '主语言模型',
  'agentSnapshot.field.slmModelId': '小参数模型',
  'agentSnapshot.field.vllmModelId': '视觉大模型',
  'agentSnapshot.field.ttsModelId': '语音合成',
  'agentSnapshot.field.ttsVoiceId': '声音音色',
  'agentSnapshot.field.ttsLanguage': '对话语言',
  'agentSnapshot.field.ttsVolume': '音量',
  'agentSnapshot.field.ttsRate': '语速',
  'agentSnapshot.field.ttsPitch': '音调',
  'agentSnapshot.field.memModelId': '记忆模式',
  'agentSnapshot.field.intentModelId': '意图识别',
  'agentSnapshot.field.chatHistoryConf': '聊天记录配置',
  'agentSnapshot.field.systemPrompt': '角色介绍',
  'agentSnapshot.field.summaryMemory': '记忆',
  'agentSnapshot.field.langCode': '语言编码',
  'agentSnapshot.field.language': '交互语种',
  'agentSnapshot.field.sort': '排序',
  'agentSnapshot.field.functions': '插件',
  'agentSnapshot.field.contextProviders': '上下文源',
  'agentSnapshot.field.correctWordFileIds': '替换词',
  'agentSnapshot.field.tagNames': '智能体标签',
  'agentSnapshot.chatHistoryConf.none': '不记录聊天记录',
  'agentSnapshot.chatHistoryConf.text': '上报文字',
  'agentSnapshot.chatHistoryConf.textVoice': '上报文字+语音',
  'agentSnapshot.model.Memory_nomem': '无记忆',
  'agentSnapshot.model.Memory_mem_local_short': '本地短期记忆',
  'agentSnapshot.model.Memory_mem0ai': 'Mem0AI 记忆',
  'agentSnapshot.model.Memory_mem_report_only': '仅上报',
  'agentSnapshot.model.Intent_nointent': '无意图识别',
  'agentSnapshot.model.Intent_intent_llm': '外部大模型意图识别',
  'agentSnapshot.model.Intent_function_call': '大模型函数调用',
 
  // 上下文源对话框相关
  'contextProviderDialog.title': '编辑源',
  'contextProviderDialog.noContextApi': '暂无上下文API',
  'contextProviderDialog.add': '添加',
  'contextProviderDialog.apiUrl': '接口地址',
  'contextProviderDialog.apiUrlPlaceholder': 'http://api.example.com/data',
  'contextProviderDialog.requestHeaders': '请求头',
  'contextProviderDialog.headerKeyPlaceholder': 'Key',
  'contextProviderDialog.headerValuePlaceholder': 'Value',
  'contextProviderDialog.noHeaders': '暂无 Headers',
  'contextProviderDialog.addHeader': '添加 Header',
  'contextProviderDialog.cancel': '取消',
  'contextProviderDialog.confirm': '确定',
 
  // 手動添加設備對話框相關
  'manualAddDeviceDialog.title': '手动添加设备',
  'manualAddDeviceDialog.deviceType': '设备型号',
  'manualAddDeviceDialog.deviceTypePlaceholder': '请选择设备型号',
  'manualAddDeviceDialog.firmwareVersion': '固件版本',
  'manualAddDeviceDialog.firmwareVersionPlaceholder': '请输入固件版本',
  'manualAddDeviceDialog.macAddress': 'Mac地址',
  'manualAddDeviceDialog.macAddressPlaceholder': '请输入Mac地址',
  'manualAddDeviceDialog.confirm': '确定',
  'manualAddDeviceDialog.cancel': '取消',
  'manualAddDeviceDialog.requiredMacAddress': '请输入Mac地址',
  'manualAddDeviceDialog.invalidMacAddress': '请输入正确的Mac地址格式,例如:00:1A:2B:3C:4D:5E',
  'manualAddDeviceDialog.requiredDeviceType': '请选择设备型号',
  'manualAddDeviceDialog.requiredFirmwareVersion': '请输入固件版本',
  'manualAddDeviceDialog.getFirmwareTypeFailed': '获取固件类型失败',
  'manualAddDeviceDialog.addSuccess': '设备添加成功',
  'manualAddDeviceDialog.addFailed': '添加失败',
  'manualAddDeviceDialog.bindWithCode': '6位验证码绑定',
 
  // 聊天历史页面
  'chatHistory.getChatSessions': '获取聊天会话列表',
  'chatHistory.noSelectedAgent': '没有选中的智能体',
  'chatHistory.getChatSessionsFailed': '获取聊天会话列表失败:',
  'chatHistory.unknownTime': '未知时间',
  'chatHistory.justNow': '刚刚',
  'chatHistory.minutesAgo': '{minutes}分钟前',
  'chatHistory.hoursAgo': '{hours}小时前',
  'chatHistory.daysAgo': '{days}天前',
  'chatHistory.conversationRecord': '对话记录',
  'chatHistory.totalChats': '共 {count} 条对话',
  'chatHistory.loading': '加载中...',
  'chatHistory.noMoreData': '没有更多数据了',
  'chatHistory.noChatRecords': '暂无聊天记录',
  'chatHistory.chatRecordsDescription': '与智能体的对话记录会显示在这里',
  // 聊天详情页面
  'chatHistory.pageTitle': '聊天详情',
  'chatHistory.assistantName': '智能助手',
  'chatHistory.userName': '用户',
  'chatHistory.aiAssistantName': 'AI助手',
  'chatHistory.loadFailed': '获取聊天记录失败',
  'chatHistory.parameterError': '页面参数错误',
  'chatHistory.invalidAudioId': '音频ID无效',
  'chatHistory.audioPlayFailed': '音频播放失败',
  'chatHistory.playAudioFailed': '播放音频失败',
 
  // 设备管理页面
  'device.pageTitle': '设备管理',
  'device.noDevices': '暂无设备',
  'device.macAddress': 'MAC地址',
  'device.firmwareVersion': '固件版本',
  'device.lastConnected': '最近对话',
  'device.otaUpdate': 'OTA升级',
  'device.unbind': '解绑',
  'device.confirmUnbind': '确定要解绑设备',
  'device.bindDevice': '绑定新设备',
  'device.deviceType': '设备类型',
  'device.loading': '加载中...',
  'device.neverConnected': '从未连接',
  'device.checkingOnline': '正在检测设备状态…',
  'device.online': '设备在线',
  'device.offline': '设备不在线',
  'device.onlineHint': '可以下发即时任务和计划任务。',
  'device.offlineHint': '无法下发任务,仍可查看聊天记录等。',
  'device.justNow': '刚刚',
  'device.minutesAgo': '{minutes}分钟前',
  'device.hoursAgo': '{hours}小时前',
  'device.daysAgo': '{days}天前',
  'device.otaAutoUpdateEnabled': 'OTA自动升级已开启',
  'device.otaAutoUpdateDisabled': 'OTA自动升级已关闭',
  'device.operationFailed': '操作失败,请重试',
  'device.deviceUnbound': '设备已解绑',
  'device.unbindFailed': '解绑失败,请重试',
  'device.unbindDevice': '解绑设备',
  'device.confirmUnbindDevice': '确定要解绑设备 "{macAddress}" 吗?',
  'device.cancel': '取消',
  'device.noDevice': '暂无设备',
  'device.pleaseSelectAgent': '请先选择智能体',
  'device.deviceBindSuccess': '设备绑定成功!',
  'device.bindFailed': '绑定失败,请检查验证码是否正确',
  'device.enterDeviceCode': '请输入设备验证码',
  'device.bindNow': '立即绑定',
  'device.lastConnection': '最近对话',
  'device.clickToBindFirstDevice': '点击右下角 + 号绑定您的第一个设备',
 
  // 通用
  'common.success': '成功',
  'common.fail': '失败',
  'common.loading': '加载中...',
  'common.confirm': '确认',
  'common.cancel': '取消',
  'common.delete': '删除',
  'common.edit': '编辑',
  'common.add': '添加',
  'common.pleaseSelect': '请选择',
  'common.unknownError': '未知错误',
  'common.networkError': '网络错误',
 
  // SM2加密相关错误消息
  'sm2.publicKeyNotConfigured': 'SM2公钥未配置,请联系管理员',
  'sm2.encryptionFailed': '密码加密失败',
  'sm2.keyGenerationFailed': '密钥对生成失败',
  'sm2.invalidPublicKey': '无效的公钥格式',
  'sm2.encryptionError': '加密过程中发生错误',
  'sm2.publicKeyRetry': '正在重试获取公钥...',
  'sm2.publicKeyRetryFailed': '公钥获取重试失败',
 
  // Voiceprint page
  'voiceprint.noSelectedAgent': '没有选中的智能体',
  'voiceprint.pleaseSelectAgent': '请先选择智能体',
  'voiceprint.fetchHistoryFailed': '获取对话记录失败',
  'voiceprint.clickToSelectVector': '点击选择声纹向量',
  'voiceprint.pleaseInputName': '请输入姓名',
  'voiceprint.pleaseSelectVector': '请选择声纹向量',
  'voiceprint.addSuccess': '添加成功',
  'voiceprint.addFailed': '添加说话人失败',
  'voiceprint.editSuccess': '编辑成功',
  'voiceprint.editFailed': '编辑说话人失败',
  'voiceprint.deleteConfirmMsg': '确定要删除这个说话人吗?',
  'voiceprint.deleteConfirmTitle': '确认删除',
  'voiceprint.deleteSuccess': '删除成功',
  'voiceprint.loading': '加载中...',
  'voiceprint.delete': '删除',
  'voiceprint.emptyTitle': '暂无声纹数据',
  'voiceprint.emptyDesc': '点击右下角 + 号添加您的第一个说话人',
  'voiceprint.addSpeaker': '添加说话人',
  'voiceprint.voiceVector': '声纹向量',
  'voiceprint.name': '姓名',
  'voiceprint.description': '描述',
  'voiceprint.pleaseInputDescription': '请输入描述',
  'voiceprint.cancel': '取消',
  'voiceprint.save': '保存',
  'voiceprint.editSpeaker': '编辑说话人',
  'voiceprint.selectVector': '选择声纹向量',
  'voiceprint.voiceprintInterfaceNotConfigured': '声纹接口未配置',
 
  // 设置页面
  'settings.pageTitle': '设置',
  'settings.navigationTitle': '设置',
  'settings.networkSettings': '网络设置',
  'settings.serverApiUrl': '服务端接口地址',
  'settings.validServerUrl': '请输入有效的服务端地址(以 http 或 https 开头,并以 /xiaozhi 结尾)',
  'settings.saveSettings': '保存设置',
  'settings.resetDefault': '恢复默认',
  'settings.restartApp': '重启应用',
  'settings.restartNow': '立即重启',
  'settings.restartLater': '稍后',
  // 关于我们
  'settings.aboutApp': '关于小智智控台',
  'settings.aboutContent': '小智智控台\n\n基于 Vue.js 3 + uni-app 构建的跨平台移动端管理应用,为小智ESP32智能硬件提供设备管理、智能体配置等功能。\n\n© 2025 xiaozhi-esp32-server {version}',
  'settings.restartSuccess': '已保存,可稍后手动重启应用',
  'settings.serverUrlSavedAndCacheCleared': '服务端地址已保存,缓存已清除',
  'settings.resetToDefaultAndCacheCleared': '已恢复默认设置,缓存已清除',
  'settings.resetSuccess': '重置成功',
  'settings.enterServerUrl': '请输入服务端地址',
  'settings.clearCacheFailed': '清除缓存失败',
  'settings.cacheManagement': '缓存管理',
  'settings.totalCacheSize': '总缓存大小',
  'settings.appDataSize': '应用数据总大小',
  'settings.cacheClear': '缓存清理',
  'settings.clearAllCache': '清空所有缓存数据',
  'settings.clearCache': '清除缓存',
  'settings.modifyWillClearCache': '修改将清除缓存',
  'settings.appInfo': '应用信息',
  'settings.aboutUs': '关于我们',
  'settings.appVersion': '应用版本与团队信息',
  'settings.confirmClear': '确认清除',
  'settings.confirmClearMessage': '确定要清除所有缓存吗?这将删除所有数据包括登录状态,需要重新登录。',
  'settings.cacheCleared': '缓存清除成功,即将跳转到登录页',
  'settings.languageSettings': '语言设置',
  'settings.language': '语言',
  'settings.selectLanguage': '选择语言',
  'settings.languageChanged': '语言切换成功',
 
  // 重置密码页面
  'retrievePassword.title': '重置密码',
  'retrievePassword.subtitle': '通过手机号找回您的账户密码',
  'retrievePassword.mobileRequired': '请输入手机号码',
  'retrievePassword.inputCorrectMobile': '请输入正确的手机号码',
  'retrievePassword.captchaRequired': '请输入图形验证码',
  'retrievePassword.mobileCaptchaRequired': '请输入短信验证码',
  'retrievePassword.newPasswordRequired': '请输入新密码',
  'retrievePassword.confirmNewPasswordRequired': '请确认新密码',
  'retrievePassword.passwordsNotMatch': '两次输入的密码不一致',
  'retrievePassword.mobilePlaceholder': '请输入手机号码',
  'retrievePassword.captchaPlaceholder': '请输入图形验证码',
  'retrievePassword.mobileCaptchaPlaceholder': '请输入短信验证码',
  'retrievePassword.newPasswordPlaceholder': '请输入新密码',
  'retrievePassword.confirmNewPasswordPlaceholder': '请确认新密码',
  'retrievePassword.getMobileCaptcha': '获取验证码',
  'retrievePassword.captchaSendSuccess': '验证码发送成功',
  'retrievePassword.passwordUpdateSuccess': '密码重置成功',
  'retrievePassword.resetButton': '重置密码',
  'retrievePassword.goToLogin': '返回登录',
 
  // 消息提示
  'message.loginSuccess': '登录成功!',
  'message.loginFail': '登录失败',
  'message.registerSuccess': '注册成功',
  'message.registerFail': '注册失败',
  'message.saveSuccess': '保存成功',
  'message.saveFail': '保存失败',
  'message.deleteSuccess': '删除成功',
  'message.deleteFail': '删除失败',
  'message.bindSuccess': '绑定成功',
  'message.bindFail': '绑定失败',
  'message.unbindSuccess': '解绑成功',
  'message.unbindFail': '解绑失败',
  'message.networkError': '网络错误,请检查网络连接',
  'message.serverError': '服务器错误,请稍后再试',
  'message.invalidAddress': '地址可能无效,请检查服务端是否启动或网络连接是否正常;也可能因 HTTPS 协议问题导致无法发送请求',
  'message.languageChanged': '语言已切换',
  'message.passwordError': '账号或密码错误',
  'message.phoneRegistered': '此手机号码已经注册过',
 
  // Agent工具页面
  'agent.tools.pageTitle': 'Agent工具',
  'agent.tools.unselected': '未选',
  'agent.tools.selected': '已选',
  'agent.tools.noMorePlugins': '暂无更多插件',
  'agent.tools.pleaseSelectPlugin': '请选择插件功能',
  'agent.tools.builtInPlugins': '内置插件',
  'agent.tools.mcpAccessPoint': 'mcp接入点',
  'agent.tools.copy': '复制',
  'agent.tools.noTools': '暂无工具',
  'agent.tools.parameterConfig': '参数配置',
  'agent.tools.noParamsNeeded': '无需配置参数',
  'agent.tools.pleaseInput': '请输入',
  'agent.tools.inputOneItemPerLine': '每行输入一个项目',
  'agent.tools.pleaseInputValidJson': '请输入有效的JSON格式',
  'agent.tools.enableFunction': '启用功能',
  'agent.tools.toggleFunction': '开启或关闭此功能',
  'agent.tools.jsonFormatError': 'JSON格式错误',
  'agent.tools.noMcpAddressToCopy': '暂无MCP地址可复制',
  'agent.tools.mcpAddressCopied': 'MCP地址已复制到剪贴板',
  'agent.tools.copyFailed': '复制失败,请重试',
  'agent.tools.defaultValue': '默认值',
  'agent.tools.notSelected': '未选',
  'agent.tools.clickToConfigure': '点击配置',
  'agent.tools.mcpEndpoint': 'MCP接入点',
  'agent.tools.eachLineOneItem': '每行输入一个项目',
 
  // 设备配置页面
  'deviceConfig.pageTitle': '设备配置',
  'deviceConfig.wifiConfig': 'WiFi配网',
  'deviceConfig.ultrasonicConfig': '超声波配网',
  'deviceConfig.selectConfigMethod': '选择配网方式',
  'deviceConfig.networkConfig': '网络配置',
  'deviceConfig.selectedNetwork': '选中网络',
  'deviceConfig.signal': '信号',
  'deviceConfig.openNetwork': '开放网络',
  'deviceConfig.encryptedNetwork': '加密网络',
  'deviceConfig.password': '密码',
  'deviceConfig.pleaseEnterPassword': '请输入WiFi密码',
  'deviceConfig.startConfig': '开始配网',
  'deviceConfig.connectToXiaozhiHotspot': '请先连接xiaozhi热点 (xiaozhi-XXXXXX)',
  'deviceConfig.detecting': '检测中...',
  'deviceConfig.reDetect': '重新检测',
  'deviceConfig.alreadyConnected': '已连接xiaozhi热点',
  'deviceConfig.refreshStatus': '刷新状态',
  'deviceConfig.wifiNetworks': 'WiFi网络',
  'deviceConfig.selectWifiNetwork': '选择WiFi网络',
  'deviceConfig.refreshScan': '刷新扫描',
  'deviceConfig.noWifiNetworks': '暂无WiFi网络',
  'deviceConfig.clickToRefreshScan': '请点击刷新扫描',
  'deviceConfig.signalStrong': '信号强',
  'deviceConfig.signalGood': '信号良好',
  'deviceConfig.signalFair': '信号一般',
  'deviceConfig.signalWeak': '信号弱',
  'deviceConfig.channel': '频道',
  'deviceConfig.about': '约',
  'deviceConfig.seconds': '秒',
  'deviceConfig.generating': '生成中...',
  'deviceConfig.playing': '播放中...',
  'deviceConfig.generateAndPlaySoundWave': '生成并播放声波',
  'deviceConfig.playSoundWave': '播放声波',
  'deviceConfig.stopPlaying': '停止播放',
  'deviceConfig.autoLoopPlaySoundWave': '自动循环播放声波',
  'deviceConfig.configAudioFile': '配网音频文件',
  'deviceConfig.duration': '时长',
  'deviceConfig.ultrasonicConfigInstructions': '超声波配网说明',
  'deviceConfig.ensureWifiNetworkSelectedAndPasswordEntered': '确保已选择WiFi网络并输入密码',
  'deviceConfig.clickGenerateAndPlaySoundWave': '点击生成并播放声波,系统会将配网信息编码为音频',
  'deviceConfig.bringPhoneCloseToXiaozhiDevice': '将手机靠近xiaozhi设备(距离1-2米)',
  'deviceConfig.duringAudioPlaybackXiaozhiWillReceive': '音频播放时,xiaozhi会接收并解码配网信息',
  'deviceConfig.afterConfigSuccessDeviceWillConnect': '配网成功后设备会自动连接WiFi网络',
  'deviceConfig.usesAfskModulation': '使用AFSK调制技术,通过1800Hz和1500Hz频率传输数据',
  'deviceConfig.ensureModeratePhoneVolume': '请确保手机音量适中,避免环境噪音干扰',
  'deviceConfig.generatingUltrasonicConfigAudio': '生成超声波配网音频',
  'deviceConfig.configData': '配网数据',
  'deviceConfig.dataBytesLength': '数据字节长度',
  'deviceConfig.bitStreamLength': '比特流长度',
  'deviceConfig.base64Length': 'base64长度',
  'deviceConfig.audioFileTooLarge': '音频文件过大,请缩短SSID或密码长度',
  'deviceConfig.audioGenerationSuccess': '音频生成成功',
  'deviceConfig.samplePoints': '采样点数',
  'deviceConfig.soundWaveGenerationSuccess': '声波生成成功',
  'deviceConfig.audioGenerationFailed': '音频生成失败',
  'deviceConfig.soundWaveGenerationFailed': '声波生成失败',
  'deviceConfig.pleaseGenerateAudioFirst': '请先生成音频',
  'deviceConfig.startPlayingUltrasonicConfigAudio': '开始播放超声波配网音频',
  'deviceConfig.ultrasonicAudioStartedPlaying': '超声波音频开始播放',
  'deviceConfig.startPlayingConfigSoundWave': '开始播放配网声波',
  'deviceConfig.ultrasonicAudioPlaybackEnded': '超声波音频播放结束',
  'deviceConfig.audioPlaybackFailed': '音频播放失败',
  'deviceConfig.audioResourceBusy': '音频资源繁忙,请稍后重试',
  'deviceConfig.audioFormatNotSupported': '音频格式不支持,可能是data URI问题',
  'deviceConfig.audioFileError': '音频文件错误',
  'deviceConfig.cleaningUpAudioContext': '清理音频上下文',
  'deviceConfig.cleaningUpAudioContextFailed': '清理音频上下文失败',
  'deviceConfig.stoppedPlayingUltrasonicAudio': '停止播放超声波音频',
  'deviceConfig.stoppedPlaying': '已停止播放',
  'deviceConfig.configMethod': '配网方式',
  'deviceConfig.enterWifiPassword': '请输入WiFi密码',
  'deviceConfig.xiaozhi': 'xiaozhi',
  'deviceConfig.connectXiaozhiHotspot': '请连接xiaozhi热点',
  'deviceConfig.wifiScanResponse': 'WiFi扫描响应',
  'deviceConfig.scanSuccess': '扫描成功',
  'deviceConfig.networks': '个网络',
  'deviceConfig.wifiScanFailed': 'WiFi扫描失败',
  'deviceConfig.scanFailedCheckConnection': '扫描失败,请检查连接',
  'deviceConfig.checking': '检查中',
  'deviceConfig.reCheck': '重新检查',
  'deviceConfig.connectedXiaozhiHotspot': '已连接xiaozhi热点',
  'deviceConfig.wifiNetwork': 'WiFi网络',
  'deviceConfig.wifiPassword': 'WiFi密码',
  'deviceConfig.scanning': '扫描中',
  'deviceConfig.cancel': '取消',
  'deviceConfig.clickRefreshScan': '请点击刷新扫描',
  'deviceConfig.esp32ConnectionCheckFailed': 'ESP32连接检查失败',
  'deviceConfig.startWifiConfig': '开始WiFi配网',
  'deviceConfig.configSuccess': '配网成功',
  'deviceConfig.deviceWillConnectTo': '设备将连接到',
  'deviceConfig.deviceWillRestart': '设备将重启',
  'deviceConfig.pleaseDisconnectXiaozhiHotspot': '请断开xiaozhi热点连接',
  'deviceConfig.configFailed': '配网失败',
  'deviceConfig.wifiConfigFailed': 'WiFi配网失败',
  'deviceConfig.pleaseCheckNetworkConnection': '请检查网络连接',
  'deviceConfig.startWifiConfigButton': '开始配网',
  'deviceConfig.configuring': '配网中...',
  'deviceConfig.wifiConfigInstructions': 'WiFi配网说明',
  'deviceConfig.phoneConnectXiaozhiHotspot': '手机连接xiaozhi热点',
  'deviceConfig.selectTargetWifiNetwork': '选择目标WiFi网络',
  'deviceConfig.enterWifiPasswordIfNeeded': '如有需要请输入WiFi密码',
  'deviceConfig.clickStartConfigAndWait': '点击开始配网并等待',
  'deviceConfig.afterConfigSuccessDeviceWillRestart': '配网成功后设备将自动重启',
  'deviceConfig.audioPlaybackError': '音频播放错误',
  'deviceConfig.playbackFailed': '播放失败',
 
  // Voiceprint page
  'voiceprint.audioNotExist': '该音频不存在',
  'voiceprint.getAudioFailed': '获取音频失败',
  'voiceprint.audioPlayFailed': '音频播放失败',
 
  // 家长学习任务(7a-C)
  'parentTask.pageTitle': '学习任务',
  'parentTask.createTitle': '创建学习任务',
  'parentTask.editTitle': '编辑学习任务',
  'parentTask.device': '设备',
  'parentTask.selectDevice': '请选择设备',
  'parentTask.bindDeviceFirst': '请先绑定设备',
  'parentTask.runningSection': '正在执行',
  'parentTask.scheduledSection': '计划任务',
  'parentTask.running': '正在执行',
  'parentTask.emptySchedule': '还没有计划。点右下角 + 创建泛听、跟读或对话任务。',
  'parentTask.startNow': '立即开始',
  'parentTask.saveSchedule': '存为计划',
  'parentTask.started': '已下发到设备',
  'parentTask.saved': '计划已同步到设备',
  'parentTask.saveFailed': '保存失败',
  'parentTask.deviceOffline': '设备不在线,无法同步到硬件。请打开设备并连上网络后再试,本次不会保存。',
  'parentTask.online': '设备在线',
  'parentTask.offline': '设备不在线',
  'parentTask.checkingOnline': '正在检测设备状态…',
  'parentTask.onlineHint': '可以下发即时任务和计划任务。',
  'parentTask.offlineHint': '无法下发即时任务或计划任务。请打开设备并连上网络。',
  'parentTask.startFailed': '下发失败,请确认设备在线',
  'parentTask.stop': '结束',
  'parentTask.stopTitle': '结束当前任务',
  'parentTask.stopConfirm': '结束后设备会马上回到对话。',
  'parentTask.stopped': '已通知设备结束',
  'parentTask.stopFailed': '结束失败,请确认设备在线',
  'parentTask.deleteTitle': '删除任务',
  'parentTask.deleteConfirm': '删除后设备上的这条计划也会一起去掉。',
  'parentTask.deleted': '已删除',
  'parentTask.deleteFailed': '删除失败',
  'parentTask.scene': '场景',
  'parentTask.dispatchHint': '立即开始会打断设备当前模式;计划任务到点自动切换,不需要口头口令。',
  'parentTask.lesson': '课文',
  'parentTask.pickScene': '请选择场景',
  'parentTask.pickLesson': '请选择课文',
  'parentTask.repeat': '遍数',
  'parentTask.level': '级别',
  'parentTask.system': '分类',
  'parentTask.story': '成语故事',
  'parentTask.pickStory': '请选择一篇成语',
  'parentTask.noStories': '这个分类还没有成语,请在课程清单里添加。',
  'parentTask.sentenceCount': '播放该课目录里的全部音频,数量以服务器上的 MP3 为准',
  'parentTask.enPassesTitle': '英文怎么听',
  'parentTask.cnFixed': '先中文 1 遍、1.0 倍速,再按下面设置听英文。',
  'parentTask.enPassIndex': '英文第 {n} 段',
  'parentTask.addEnPass': '加一段英文',
  'parentTask.removePass': '删除',
  'parentTask.shadowingSettings': '跟读设置',
  'parentTask.shadowingLang': '跟读语言',
  'parentTask.shadowingLang.cn': '中文',
  'parentTask.shadowingLang.en': '英文',
  'parentTask.shadowingSpeed': '播放倍速',
  'parentTask.shadowingHint': '录音窗口 = 实际播放时长 × 1.2。当前 {speed} 倍速,播得越慢窗口越长。',
  'parentTask.languagePair': '语言对',
  'parentTask.pickPair': '请选择语言对',
  'parentTask.pairSoon': '句式完善中',
  'parentTask.pairFallbackHint': '这套语言的完整句式还在完善,设备会先用中英来练。',
  'parentTask.duration': '时长(分钟,0 表示不限)',
  'parentTask.noDuration': '不限时长',
  'parentTask.minutesValue': '{n}分钟',
  'parentTask.onComplete': '结束后',
  'parentTask.completeChat': '回对话',
  'parentTask.completePowerOff': '软关机',
  'parentTask.howToRun': '怎么跑',
  'parentTask.immediate': '立即执行',
  'parentTask.schedule': '计划时间',
  'parentTask.schedule.daily': '每天',
  'parentTask.schedule.hourly': '每小时',
  'parentTask.schedule.interval': '每隔',
  'parentTask.time': '时刻',
  'parentTask.pickTime': '选择时间',
  'parentTask.timeHint': '可选择全天任意时:分',
  'parentTask.repeatDays': '重复',
  'parentTask.everyDay': '每天',
  'parentTask.weekdays': '工作日',
  'parentTask.hourlyMinute': '每小时的第几分',
  'parentTask.hourlyOnTheHour': '每小时整点',
  'parentTask.hourlyAt': '每小时 :{minute}',
  'parentTask.everyMinutes': '每隔 {minutes} 分钟',
  'parentTask.intervalMinutes': '间隔分钟',
  'parentTask.weekday.mon': '一',
  'parentTask.weekday.tue': '二',
  'parentTask.weekday.wed': '三',
  'parentTask.weekday.thu': '四',
  'parentTask.weekday.fri': '五',
  'parentTask.weekday.sat': '六',
  'parentTask.weekday.sun': '日',
 
  'parentHistory.pageTitle': '执行记录',
  'parentHistory.detailTitle': '记录详情',
  'parentHistory.entry': '执行记录',
  'parentHistory.empty': '还没有执行记录。孩子完成任务后会出现在这里。',
  'parentHistory.loadFailed': '加载失败',
  'parentHistory.status.running': '进行中',
  'parentHistory.status.completed': '已完成',
  'parentHistory.status.cancelled': '已退出',
  'parentHistory.status.preempted': '被打断',
  'parentHistory.status.other': '未完成',
  'parentHistory.source.immediate': '立即下发',
  'parentHistory.source.schedule': '计划',
  'parentHistory.source.voice': '口令',
  'parentHistory.durationSec': '{s}秒',
  'parentHistory.durationMin': '{m}分{s}秒',
  'parentHistory.turns': '{n}句',
  'parentHistory.sentence': '第{n}句',
  'parentHistory.expected': '原文',
  'parentHistory.asr': '跟读',
  'parentHistory.noExpected': '没有原文',
  'parentHistory.noAsr': '没有识别到跟读',
  'parentHistory.noAudio': '没有可播放的录音',
  'parentHistory.emptyTurns': '这次跟读还没有句子记录。',
  'parentHistory.extensiveHint': '泛听没有逐句录音,这里只看是否播完和用了多久。',
  'parentHistory.noChat': '这段时间没有留下对话。',
}