feat(voice): add typed AI chat beside voice

Chat sits next to the mic in the command dock. Replies are silent and never
request the microphone; the first message connects with the selected provider
and runs the same map actions as voice through each provider's text API
(OpenAI OPENAI_CHAT_MODEL, Gemini GEMINI_CHAT_MODEL via generateContent, which
never starts Live). Only one mode runs at a time.

- Chat panel rendered by the voice control presenter: conversation, recent and
  quick-command suggestions, Up/Down history, attachments (map-layer
  references or small UTF-8 text files, sent only with the message)
- Chat and voice panels sit above the dock or dock into the right rail's
  column; minimized bars sit centred above the dock, and height animates on
  swaps
- A centred panel steps down to its bar for the Location and Visual Presets
  trays without moving focus, rests above an open tray, and docks right while
  expanded over one; it returns to the centre once the trays close
- Minimized voice previews the last sentence from each side; the empty Voice
  Preview suggests things to say
- Settings opened from chat keep chat's frame and show the shared AI provider
  and quick commands; voice Settings show Back to voice
- Closing chat ends a typed session; the voice panel's close turns voice off
- The dock widens its voice control for the chat button and restyles its
  wings, which show icons only at 900px and below; assistant panels share the
  left panels' glass, and Cyber keeps its own surfaces
- Server text-chat handlers with body, time and per-IP limits
  (GEV_RATELIMIT_*_CHAT_PER_MIN), documented in SECURITY.md; tests and all
  eleven locales

Co-authored-by: Darren Dignam <[email protected]>
This commit is contained in:
manjunath22466andDarren Dignam committed 2026-11-02 20:56:39 +05:30
1 parent 720260af58
commit af461febae
57 files changed
+6500 -63

No files matched your search

+63 -1
View File
@@ -3218,5 +3218,67 @@
"Load scenes from an exported JSON file": "تحميل المشاهد من ملف JSON مُصدَّر",
"Download the timing log of the last play": "تنزيل سجل توقيت آخر تشغيل",
"Edit anchors, data packs and shot details": "تعديل نقاط الارتكاز وحزم البيانات وتفاصيل اللقطة",
"Download this scene as JSON or an asset bundle": "تنزيل هذا المشهد بصيغة JSON أو حزمة موارد"
"Download this scene as JSON or an asset bundle": "تنزيل هذا المشهد بصيغة JSON أو حزمة موارد",
"Fly to Tokyo": "الانتقال إلى طوكيو",
"Show live flights": "عرض الرحلات المباشرة",
"AI chat": "دردشة الذكاء الاصطناعي",
"GEV CHAT": "دردشة GEV",
"Ask about the map. Tell it where to go.": "اسأل عن الخريطة. أخبرها إلى أين تذهب.",
"Close chat": "إغلاق الدردشة",
"Conversation": "المحادثة",
"Explore with a question": "استكشف بسؤال",
"Find a place, explore live data, or change your view.": "ابحث عن مكان، أو استكشف بيانات مباشرة، أو غيّر العرض.",
"Attachments": "المرفقات",
"Remove attachment": "إزالة المرفق",
"Attach a map layer": "إرفاق طبقة خريطة",
"Choose a layer…": "اختر طبقة…",
"Attach a file": "إرفاق ملف",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT أو Markdown أو CSV أو JSON أو GeoJSON · حتى 10 كيلوبايت لكل ملف. تُرسل المرفقات إلى مزوّد الذكاء الاصطناعي مع رسالتك.",
"Latest AI response": "أحدث رد من الذكاء الاصطناعي",
"Expand conversation": "توسيع المحادثة",
"Command suggestions": "اقتراحات الأوامر",
"Expand chat": "توسيع الدردشة",
"Add attachment": "إضافة مرفق",
"Message GEV": "رسالة إلى GEV",
"Ask GEV anything about the map…": "اسأل GEV أي شيء عن الخريطة…",
"Stop reply": "إيقاف الرد",
"Send message": "إرسال الرسالة",
"Panel position": "موضع اللوحة",
"Move above the dock": "النقل فوق الشريط",
"Dock to the right": "تثبيت إلى اليمين",
"Expand panel": "توسيع اللوحة",
"Minimize panel": "تصغير اللوحة",
"You can attach up to four items.": "يمكنك إرفاق أربعة عناصر كحد أقصى.",
"Attachments are too large together. Use smaller files.": "المرفقات كبيرة جدًا معًا. استخدم ملفات أصغر.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "اختر ملف TXT أو Markdown أو CSV أو JSON أو GeoJSON.",
"Each file must be 10 KB or smaller.": "يجب ألا يتجاوز حجم كل ملف 10 كيلوبايت.",
"Choose a non-empty UTF-8 text file.": "اختر ملفًا نصيًا بترميز UTF-8 غير فارغ.",
"Connecting…": "جارٍ الاتصال…",
"Thinking…": "جارٍ التفكير…",
"Working on the map…": "جارٍ العمل على الخريطة…",
"Silent chat · microphone off": "دردشة صامتة · الميكروفون متوقف",
"Reply interrupted. You can try again.": "توقف الرد. يمكنك المحاولة مرة أخرى.",
"Could not connect. Try again.": "تعذّر الاتصال. حاول مرة أخرى.",
"Session ended. Send a message to start a new conversation.": "انتهت الجلسة. أرسل رسالة لبدء محادثة جديدة.",
"Connection timed out. Try again.": "انتهت مهلة الاتصال. حاول مرة أخرى.",
"Chat closed.": "أُغلقت الدردشة.",
"Connection stopped.": "توقف الاتصال.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "الرسالة والمرفقات كبيرة جدًا. أزل مرفقًا أو اختصر رسالتك.",
"Message was not sent. Try again.": "لم تُرسل الرسالة. حاول مرة أخرى.",
"Reply stopped.": "أُوقف الرد.",
"Suggestions": "اقتراحات",
"Recent": "الأخيرة",
"Quick commands": "أوامر سريعة",
"Open AI chat": "فتح دردشة الذكاء الاصطناعي",
"CHAT": "دردشة",
"Back to chat": "العودة إلى الدردشة",
"Back to voice": "العودة إلى الصوت",
"Latest voice exchange": "آخر تبادل صوتي",
"Try saying": "جرّب أن تقول",
"What am I looking at?": "ما الذي أنظر إليه؟",
"AI Provider": "مزوّد الذكاء الاصطناعي",
"The selected AI provider is shared by voice and chat.": "مزوّد الذكاء الاصطناعي المختار مشترك بين الصوت والدردشة.",
"Show quick commands": "إظهار الأوامر السريعة",
"Chat replies are silent. No microphone access is needed.": "ردود الدردشة صامتة. لا حاجة إلى الوصول إلى الميكروفون.",
"Chat": "الدردشة"
}
+63 -1
View File
@@ -2938,5 +2938,67 @@
"Left panels": "Linke Panels",
"Right panels": "Rechte Panels",
"CONFIRMED": "BESTÄTIGT",
"PAD / RTLS": "STARTPLATZ / RTLS"
"PAD / RTLS": "STARTPLATZ / RTLS",
"Fly to Tokyo": "Nach Tokio fliegen",
"Show live flights": "Live-Flüge anzeigen",
"AI chat": "KI-Chat",
"GEV CHAT": "GEV-CHAT",
"Ask about the map. Tell it where to go.": "Frag zur Karte. Sag ihr, wohin es geht.",
"Close chat": "Chat schließen",
"Conversation": "Unterhaltung",
"Explore with a question": "Mit einer Frage erkunden",
"Find a place, explore live data, or change your view.": "Finde einen Ort, erkunde Live-Daten oder ändere deine Ansicht.",
"Attachments": "Anhänge",
"Remove attachment": "Anhang entfernen",
"Attach a map layer": "Kartenebene anhängen",
"Choose a layer…": "Ebene wählen…",
"Attach a file": "Datei anhängen",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON oder GeoJSON · je bis zu 10 KB. Anhänge werden mit deiner Nachricht an deinen KI-Anbieter gesendet.",
"Latest AI response": "Neueste KI-Antwort",
"Expand conversation": "Unterhaltung erweitern",
"Command suggestions": "Befehlsvorschläge",
"Expand chat": "Chat erweitern",
"Add attachment": "Anhang hinzufügen",
"Message GEV": "Nachricht an GEV",
"Ask GEV anything about the map…": "Frag GEV alles zur Karte…",
"Stop reply": "Antwort stoppen",
"Send message": "Nachricht senden",
"Panel position": "Panelposition",
"Move above the dock": "Über das Dock verschieben",
"Dock to the right": "Rechts andocken",
"Expand panel": "Panel erweitern",
"Minimize panel": "Panel minimieren",
"You can attach up to four items.": "Du kannst bis zu vier Elemente anhängen.",
"Attachments are too large together. Use smaller files.": "Die Anhänge sind zusammen zu groß. Verwende kleinere Dateien.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Wähle eine TXT-, Markdown-, CSV-, JSON- oder GeoJSON-Datei.",
"Each file must be 10 KB or smaller.": "Jede Datei darf höchstens 10 KB groß sein.",
"Choose a non-empty UTF-8 text file.": "Wähle eine nicht leere UTF-8-Textdatei.",
"Connecting…": "Verbinde…",
"Thinking…": "Denkt nach…",
"Working on the map…": "Arbeitet an der Karte…",
"Silent chat · microphone off": "Stiller Chat · Mikrofon aus",
"Reply interrupted. You can try again.": "Antwort unterbrochen. Du kannst es erneut versuchen.",
"Could not connect. Try again.": "Verbindung fehlgeschlagen. Versuch es erneut.",
"Session ended. Send a message to start a new conversation.": "Sitzung beendet. Sende eine Nachricht, um eine neue Unterhaltung zu beginnen.",
"Connection timed out. Try again.": "Zeitüberschreitung der Verbindung. Versuch es erneut.",
"Chat closed.": "Chat geschlossen.",
"Connection stopped.": "Verbindung beendet.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Nachricht und Anhänge sind zu groß. Entferne einen Anhang oder kürze deine Nachricht.",
"Message was not sent. Try again.": "Nachricht wurde nicht gesendet. Versuch es erneut.",
"Reply stopped.": "Antwort gestoppt.",
"Suggestions": "Vorschläge",
"Recent": "Zuletzt",
"Quick commands": "Schnellbefehle",
"Open AI chat": "KI-Chat öffnen",
"CHAT": "CHAT",
"Back to chat": "Zurück zum Chat",
"Back to voice": "Zurück zur Sprachsteuerung",
"Latest voice exchange": "Letzter Sprachaustausch",
"Try saying": "Sag zum Beispiel",
"What am I looking at?": "Was sehe ich gerade?",
"AI Provider": "KI-Anbieter",
"The selected AI provider is shared by voice and chat.": "Der gewählte KI-Anbieter gilt für Sprache und Chat.",
"Show quick commands": "Schnellbefehle anzeigen",
"Chat replies are silent. No microphone access is needed.": "Chat-Antworten sind stumm. Kein Mikrofonzugriff nötig.",
"Chat": "Chat"
}
+63 -1
View File
@@ -3008,5 +3008,67 @@
"Edit anchors, data packs and shot details": "Edita anclas, paquetes de datos y detalles de los planos",
"Download this scene as JSON or an asset bundle": "Descarga esta escena como JSON o como paquete de recursos",
"Left panels": "Paneles izquierdos",
"Right panels": "Paneles derechos"
"Right panels": "Paneles derechos",
"Fly to Tokyo": "Volar a Tokio",
"Show live flights": "Mostrar vuelos en vivo",
"AI chat": "Chat de IA",
"GEV CHAT": "CHAT DE GEV",
"Ask about the map. Tell it where to go.": "Pregunta sobre el mapa. Indica adónde ir.",
"Close chat": "Cerrar chat",
"Conversation": "Conversación",
"Explore with a question": "Explora con una pregunta",
"Find a place, explore live data, or change your view.": "Busca un lugar, explora datos en vivo o cambia la vista.",
"Attachments": "Adjuntos",
"Remove attachment": "Quitar adjunto",
"Attach a map layer": "Adjuntar una capa del mapa",
"Choose a layer…": "Elige una capa…",
"Attach a file": "Adjuntar un archivo",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON o GeoJSON · hasta 10 KB cada uno. Los adjuntos se envían a tu proveedor de IA con el mensaje.",
"Latest AI response": "Última respuesta de IA",
"Expand conversation": "Expandir conversación",
"Command suggestions": "Sugerencias de comandos",
"Expand chat": "Expandir chat",
"Add attachment": "Añadir adjunto",
"Message GEV": "Enviar mensaje a GEV",
"Ask GEV anything about the map…": "Pregunta a GEV lo que quieras sobre el mapa…",
"Stop reply": "Detener respuesta",
"Send message": "Enviar mensaje",
"Panel position": "Posición del panel",
"Move above the dock": "Mover encima del dock",
"Dock to the right": "Acoplar a la derecha",
"Expand panel": "Expandir panel",
"Minimize panel": "Minimizar panel",
"You can attach up to four items.": "Puedes adjuntar hasta cuatro elementos.",
"Attachments are too large together. Use smaller files.": "Los adjuntos juntos son demasiado grandes. Usa archivos más pequeños.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Elige un archivo TXT, Markdown, CSV, JSON o GeoJSON.",
"Each file must be 10 KB or smaller.": "Cada archivo debe tener como máximo 10 KB.",
"Choose a non-empty UTF-8 text file.": "Elige un archivo de texto UTF-8 que no esté vacío.",
"Connecting…": "Conectando…",
"Thinking…": "Pensando…",
"Working on the map…": "Trabajando en el mapa…",
"Silent chat · microphone off": "Chat silencioso · micrófono apagado",
"Reply interrupted. You can try again.": "Respuesta interrumpida. Puedes intentarlo de nuevo.",
"Could not connect. Try again.": "No se pudo conectar. Inténtalo de nuevo.",
"Session ended. Send a message to start a new conversation.": "Sesión finalizada. Envía un mensaje para iniciar una nueva conversación.",
"Connection timed out. Try again.": "La conexión agotó el tiempo de espera. Inténtalo de nuevo.",
"Chat closed.": "Chat cerrado.",
"Connection stopped.": "Conexión detenida.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "El mensaje y los adjuntos son demasiado grandes. Quita un adjunto o acorta el mensaje.",
"Message was not sent. Try again.": "No se envió el mensaje. Inténtalo de nuevo.",
"Reply stopped.": "Respuesta detenida.",
"Suggestions": "Sugerencias",
"Recent": "Recientes",
"Quick commands": "Comandos rápidos",
"Open AI chat": "Abrir chat de IA",
"CHAT": "CHAT",
"Back to chat": "Volver al chat",
"Back to voice": "Volver a voz",
"Latest voice exchange": "Último intercambio de voz",
"Try saying": "Prueba a decir",
"What am I looking at?": "¿Qué estoy viendo?",
"AI Provider": "Proveedor de IA",
"The selected AI provider is shared by voice and chat.": "El proveedor de IA seleccionado se usa tanto para voz como para chat.",
"Show quick commands": "Mostrar comandos rápidos",
"Chat replies are silent. No microphone access is needed.": "Las respuestas del chat son silenciosas. No se necesita acceso al micrófono.",
"Chat": "Chat"
}
+63 -1
View File
@@ -3008,5 +3008,67 @@
"Left panels": "Panneaux de gauche",
"Right panels": "Panneaux de droite",
"CONFIRMED": "CONFIRMÉE",
"PAD / RTLS": "PAS DE TIR / RTLS"
"PAD / RTLS": "PAS DE TIR / RTLS",
"Fly to Tokyo": "Aller à Tokyo",
"Show live flights": "Afficher les vols en direct",
"AI chat": "Discussion IA",
"GEV CHAT": "DISCUSSION GEV",
"Ask about the map. Tell it where to go.": "Posez une question sur la carte. Dites-lui où aller.",
"Close chat": "Fermer la discussion",
"Conversation": "Conversation",
"Explore with a question": "Explorer avec une question",
"Find a place, explore live data, or change your view.": "Trouvez un lieu, explorez des données en direct ou changez de vue.",
"Attachments": "Pièces jointes",
"Remove attachment": "Retirer la pièce jointe",
"Attach a map layer": "Joindre une couche de carte",
"Choose a layer…": "Choisir une couche…",
"Attach a file": "Joindre un fichier",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON ou GeoJSON · 10 Ko max. chacun. Les pièces jointes sont envoyées à votre fournisseur d’IA avec votre message.",
"Latest AI response": "Dernière réponse de l’IA",
"Expand conversation": "Agrandir la conversation",
"Command suggestions": "Suggestions de commandes",
"Expand chat": "Agrandir la discussion",
"Add attachment": "Ajouter une pièce jointe",
"Message GEV": "Message à GEV",
"Ask GEV anything about the map…": "Demandez à GEV ce que vous voulez sur la carte…",
"Stop reply": "Arrêter la réponse",
"Send message": "Envoyer le message",
"Panel position": "Position du panneau",
"Move above the dock": "Placer au-dessus du dock",
"Dock to the right": "Ancrer à droite",
"Expand panel": "Agrandir le panneau",
"Minimize panel": "Réduire le panneau",
"You can attach up to four items.": "Vous pouvez joindre jusqu’à quatre éléments.",
"Attachments are too large together. Use smaller files.": "Les pièces jointes sont trop volumineuses ensemble. Utilisez des fichiers plus petits.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Choisissez un fichier TXT, Markdown, CSV, JSON ou GeoJSON.",
"Each file must be 10 KB or smaller.": "Chaque fichier doit faire 10 Ko ou moins.",
"Choose a non-empty UTF-8 text file.": "Choisissez un fichier texte UTF-8 non vide.",
"Connecting…": "Connexion…",
"Thinking…": "Réflexion…",
"Working on the map…": "Travail sur la carte…",
"Silent chat · microphone off": "Discussion silencieuse · micro coupé",
"Reply interrupted. You can try again.": "Réponse interrompue. Vous pouvez réessayer.",
"Could not connect. Try again.": "Connexion impossible. Réessayez.",
"Session ended. Send a message to start a new conversation.": "Session terminée. Envoyez un message pour démarrer une nouvelle conversation.",
"Connection timed out. Try again.": "Délai de connexion dépassé. Réessayez.",
"Chat closed.": "Discussion fermée.",
"Connection stopped.": "Connexion arrêtée.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Le message et les pièces jointes sont trop volumineux. Retirez une pièce jointe ou raccourcissez votre message.",
"Message was not sent. Try again.": "Le message n’a pas été envoyé. Réessayez.",
"Reply stopped.": "Réponse arrêtée.",
"Suggestions": "Suggestions",
"Recent": "Récents",
"Quick commands": "Commandes rapides",
"Open AI chat": "Ouvrir la discussion IA",
"CHAT": "DISCUSSION",
"Back to chat": "Retour à la discussion",
"Back to voice": "Retour à la voix",
"Latest voice exchange": "Dernier échange vocal",
"Try saying": "Essayez de dire",
"What am I looking at?": "Qu’est-ce que je regarde ?",
"AI Provider": "Fournisseur d’IA",
"The selected AI provider is shared by voice and chat.": "Le fournisseur d’IA choisi est partagé par la voix et la discussion.",
"Show quick commands": "Afficher les commandes rapides",
"Chat replies are silent. No microphone access is needed.": "Les réponses de la discussion sont silencieuses. Aucun accès au micro n’est nécessaire.",
"Chat": "Discussion"
}
+63 -1
View File
@@ -3008,5 +3008,67 @@
"Left panels": "Pannelli a sinistra",
"Right panels": "Pannelli a destra",
"CONFIRMED": "CONFERMATA",
"PAD / RTLS": "SITO DI LANCIO / RTLS"
"PAD / RTLS": "SITO DI LANCIO / RTLS",
"Fly to Tokyo": "Vola a Tokyo",
"Show live flights": "Mostra voli in diretta",
"AI chat": "Chat IA",
"GEV CHAT": "CHAT GEV",
"Ask about the map. Tell it where to go.": "Chiedi della mappa. Dille dove andare.",
"Close chat": "Chiudi chat",
"Conversation": "Conversazione",
"Explore with a question": "Esplora con una domanda",
"Find a place, explore live data, or change your view.": "Trova un luogo, esplora dati in diretta o cambia vista.",
"Attachments": "Allegati",
"Remove attachment": "Rimuovi allegato",
"Attach a map layer": "Allega un livello della mappa",
"Choose a layer…": "Scegli un livello…",
"Attach a file": "Allega un file",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON o GeoJSON · fino a 10 KB ciascuno. Gli allegati vengono inviati al tuo fornitore di IA insieme al messaggio.",
"Latest AI response": "Ultima risposta dell’IA",
"Expand conversation": "Espandi conversazione",
"Command suggestions": "Suggerimenti di comandi",
"Expand chat": "Espandi chat",
"Add attachment": "Aggiungi allegato",
"Message GEV": "Messaggio a GEV",
"Ask GEV anything about the map…": "Chiedi a GEV qualsiasi cosa sulla mappa…",
"Stop reply": "Interrompi risposta",
"Send message": "Invia messaggio",
"Panel position": "Posizione del pannello",
"Move above the dock": "Sposta sopra il dock",
"Dock to the right": "Aggancia a destra",
"Expand panel": "Espandi pannello",
"Minimize panel": "Riduci pannello",
"You can attach up to four items.": "Puoi allegare fino a quattro elementi.",
"Attachments are too large together. Use smaller files.": "Gli allegati insieme sono troppo grandi. Usa file più piccoli.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Scegli un file TXT, Markdown, CSV, JSON o GeoJSON.",
"Each file must be 10 KB or smaller.": "Ogni file deve essere di 10 KB o meno.",
"Choose a non-empty UTF-8 text file.": "Scegli un file di testo UTF-8 non vuoto.",
"Connecting…": "Connessione…",
"Thinking…": "Sto pensando…",
"Working on the map…": "Lavoro sulla mappa…",
"Silent chat · microphone off": "Chat silenziosa · microfono spento",
"Reply interrupted. You can try again.": "Risposta interrotta. Puoi riprovare.",
"Could not connect. Try again.": "Impossibile connettersi. Riprova.",
"Session ended. Send a message to start a new conversation.": "Sessione terminata. Invia un messaggio per iniziare una nuova conversazione.",
"Connection timed out. Try again.": "Connessione scaduta. Riprova.",
"Chat closed.": "Chat chiusa.",
"Connection stopped.": "Connessione interrotta.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Messaggio e allegati sono troppo grandi. Rimuovi un allegato o accorcia il messaggio.",
"Message was not sent. Try again.": "Il messaggio non è stato inviato. Riprova.",
"Reply stopped.": "Risposta interrotta.",
"Suggestions": "Suggerimenti",
"Recent": "Recenti",
"Quick commands": "Comandi rapidi",
"Open AI chat": "Apri chat IA",
"CHAT": "CHAT",
"Back to chat": "Torna alla chat",
"Back to voice": "Torna alla voce",
"Latest voice exchange": "Ultimo scambio vocale",
"Try saying": "Prova a dire",
"What am I looking at?": "Cosa sto guardando?",
"AI Provider": "Fornitore di IA",
"The selected AI provider is shared by voice and chat.": "Il fornitore di IA scelto è condiviso da voce e chat.",
"Show quick commands": "Mostra comandi rapidi",
"Chat replies are silent. No microphone access is needed.": "Le risposte della chat sono silenziose. Non serve l’accesso al microfono.",
"Chat": "Chat"
}
+63 -1
View File
@@ -2868,5 +2868,67 @@
"Left panels": "左パネル",
"Right panels": "右パネル",
"CONFIRMED": "確認済み",
"PAD / RTLS": "射場 / RTLS"
"PAD / RTLS": "射場 / RTLS",
"Fly to Tokyo": "東京へ移動",
"Show live flights": "ライブのフライトを表示",
"AI chat": "AIチャット",
"GEV CHAT": "GEV チャット",
"Ask about the map. Tell it where to go.": "地図について質問できます。行き先を伝えてください。",
"Close chat": "チャットを閉じる",
"Conversation": "会話",
"Explore with a question": "質問から探索",
"Find a place, explore live data, or change your view.": "場所を探したり、ライブデータを見たり、表示を変えたりできます。",
"Attachments": "添付ファイル",
"Remove attachment": "添付を削除",
"Attach a map layer": "地図レイヤーを添付",
"Choose a layer…": "レイヤーを選択…",
"Attach a file": "ファイルを添付",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT、Markdown、CSV、JSON、GeoJSON · 各 10 KB まで。添付はメッセージとともに AI プロバイダーへ送信されます。",
"Latest AI response": "最新の AI の応答",
"Expand conversation": "会話を展開",
"Command suggestions": "コマンドの候補",
"Expand chat": "チャットを展開",
"Add attachment": "添付を追加",
"Message GEV": "GEV へのメッセージ",
"Ask GEV anything about the map…": "地図について GEV に何でも質問…",
"Stop reply": "応答を停止",
"Send message": "メッセージを送信",
"Panel position": "パネルの位置",
"Move above the dock": "ドックの上へ移動",
"Dock to the right": "右側にドッキング",
"Expand panel": "パネルを展開",
"Minimize panel": "パネルを最小化",
"You can attach up to four items.": "添付できるのは 4 件までです。",
"Attachments are too large together. Use smaller files.": "添付ファイルの合計が大きすぎます。小さいファイルを使ってください。",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "TXT、Markdown、CSV、JSON、GeoJSON のファイルを選んでください。",
"Each file must be 10 KB or smaller.": "各ファイルは 10 KB 以下にしてください。",
"Choose a non-empty UTF-8 text file.": "空でない UTF-8 のテキストファイルを選んでください。",
"Connecting…": "接続中…",
"Thinking…": "考え中…",
"Working on the map…": "地図を操作中…",
"Silent chat · microphone off": "サイレントチャット · マイクオフ",
"Reply interrupted. You can try again.": "応答が中断されました。もう一度お試しください。",
"Could not connect. Try again.": "接続できませんでした。もう一度お試しください。",
"Session ended. Send a message to start a new conversation.": "セッションが終了しました。メッセージを送ると新しい会話を始められます。",
"Connection timed out. Try again.": "接続がタイムアウトしました。もう一度お試しください。",
"Chat closed.": "チャットを閉じました。",
"Connection stopped.": "接続が停止しました。",
"Message and attachments are too large. Remove an attachment or shorten your message.": "メッセージと添付が大きすぎます。添付を外すか、メッセージを短くしてください。",
"Message was not sent. Try again.": "メッセージを送信できませんでした。もう一度お試しください。",
"Reply stopped.": "応答を停止しました。",
"Suggestions": "候補",
"Recent": "最近",
"Quick commands": "クイックコマンド",
"Open AI chat": "AIチャットを開く",
"CHAT": "チャット",
"Back to chat": "チャットに戻る",
"Back to voice": "音声に戻る",
"Latest voice exchange": "直近の音声のやり取り",
"Try saying": "話しかけてみましょう",
"What am I looking at?": "何を見ていますか?",
"AI Provider": "AI プロバイダー",
"The selected AI provider is shared by voice and chat.": "選んだ AI プロバイダーは音声とチャットで共通です。",
"Show quick commands": "クイックコマンドを表示",
"Chat replies are silent. No microphone access is needed.": "チャットの応答は音声なしです。マイクへのアクセスは不要です。",
"Chat": "チャット"
}
+63 -1
View File
@@ -3008,5 +3008,67 @@
"Left panels": "Painéis à esquerda",
"Right panels": "Painéis à direita",
"CONFIRMED": "CONFIRMADA",
"PAD / RTLS": "PLATAFORMA / RTLS"
"PAD / RTLS": "PLATAFORMA / RTLS",
"Fly to Tokyo": "Voar para Tóquio",
"Show live flights": "Mostrar voos ao vivo",
"AI chat": "Chat de IA",
"GEV CHAT": "CHAT GEV",
"Ask about the map. Tell it where to go.": "Pergunte sobre o mapa. Diga para onde ir.",
"Close chat": "Fechar chat",
"Conversation": "Conversa",
"Explore with a question": "Explore com uma pergunta",
"Find a place, explore live data, or change your view.": "Encontre um lugar, explore dados ao vivo ou mude sua visão.",
"Attachments": "Anexos",
"Remove attachment": "Remover anexo",
"Attach a map layer": "Anexar uma camada do mapa",
"Choose a layer…": "Escolha uma camada…",
"Attach a file": "Anexar um arquivo",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON ou GeoJSON · até 10 KB cada. Os anexos são enviados ao seu provedor de IA com a sua mensagem.",
"Latest AI response": "Última resposta da IA",
"Expand conversation": "Expandir conversa",
"Command suggestions": "Sugestões de comandos",
"Expand chat": "Expandir chat",
"Add attachment": "Adicionar anexo",
"Message GEV": "Mensagem para o GEV",
"Ask GEV anything about the map…": "Pergunte ao GEV qualquer coisa sobre o mapa…",
"Stop reply": "Parar resposta",
"Send message": "Enviar mensagem",
"Panel position": "Posição do painel",
"Move above the dock": "Mover para cima do dock",
"Dock to the right": "Encaixar à direita",
"Expand panel": "Expandir painel",
"Minimize panel": "Minimizar painel",
"You can attach up to four items.": "Você pode anexar até quatro itens.",
"Attachments are too large together. Use smaller files.": "Os anexos juntos são grandes demais. Use arquivos menores.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Escolha um arquivo TXT, Markdown, CSV, JSON ou GeoJSON.",
"Each file must be 10 KB or smaller.": "Cada arquivo deve ter 10 KB ou menos.",
"Choose a non-empty UTF-8 text file.": "Escolha um arquivo de texto UTF-8 não vazio.",
"Connecting…": "Conectando…",
"Thinking…": "Pensando…",
"Working on the map…": "Trabalhando no mapa…",
"Silent chat · microphone off": "Chat silencioso · microfone desligado",
"Reply interrupted. You can try again.": "Resposta interrompida. Você pode tentar de novo.",
"Could not connect. Try again.": "Não foi possível conectar. Tente de novo.",
"Session ended. Send a message to start a new conversation.": "Sessão encerrada. Envie uma mensagem para iniciar uma nova conversa.",
"Connection timed out. Try again.": "A conexão expirou. Tente de novo.",
"Chat closed.": "Chat fechado.",
"Connection stopped.": "Conexão interrompida.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "A mensagem e os anexos são grandes demais. Remova um anexo ou encurte sua mensagem.",
"Message was not sent. Try again.": "A mensagem não foi enviada. Tente de novo.",
"Reply stopped.": "Resposta interrompida.",
"Suggestions": "Sugestões",
"Recent": "Recentes",
"Quick commands": "Comandos rápidos",
"Open AI chat": "Abrir chat de IA",
"CHAT": "CHAT",
"Back to chat": "Voltar ao chat",
"Back to voice": "Voltar à voz",
"Latest voice exchange": "Última troca de voz",
"Try saying": "Experimente dizer",
"What am I looking at?": "O que estou vendo?",
"AI Provider": "Provedor de IA",
"The selected AI provider is shared by voice and chat.": "O provedor de IA escolhido é compartilhado por voz e chat.",
"Show quick commands": "Mostrar comandos rápidos",
"Chat replies are silent. No microphone access is needed.": "As respostas do chat são silenciosas. Não é preciso acesso ao microfone.",
"Chat": "Chat"
}
+63 -1
View File
@@ -3078,5 +3078,67 @@
"Edit anchors, data packs and shot details": "Изменить якоря, пакеты данных и параметры кадров",
"Download this scene as JSON or an asset bundle": "Скачать эту сцену в формате JSON или архивом ресурсов",
"Left panels": "Левые панели",
"Right panels": "Правые панели"
"Right panels": "Правые панели",
"Fly to Tokyo": "Перелететь в Токио",
"Show live flights": "Показать рейсы в реальном времени",
"AI chat": "Чат с ИИ",
"GEV CHAT": "ЧАТ GEV",
"Ask about the map. Tell it where to go.": "Задайте вопрос о карте. Укажите, куда перейти.",
"Close chat": "Закрыть чат",
"Conversation": "Разговор",
"Explore with a question": "Начните исследование с вопроса",
"Find a place, explore live data, or change your view.": "Найдите место, изучите данные в реальном времени или измените вид.",
"Attachments": "Вложения",
"Remove attachment": "Удалить вложение",
"Attach a map layer": "Прикрепить слой карты",
"Choose a layer…": "Выберите слой…",
"Attach a file": "Прикрепить файл",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON или GeoJSON · до 10 КБ каждый. Вложения отправляются провайдеру ИИ вместе с сообщением.",
"Latest AI response": "Последний ответ ИИ",
"Expand conversation": "Развернуть разговор",
"Command suggestions": "Подсказки команд",
"Expand chat": "Развернуть чат",
"Add attachment": "Добавить вложение",
"Message GEV": "Написать GEV",
"Ask GEV anything about the map…": "Задайте GEV вопрос о карте…",
"Stop reply": "Остановить ответ",
"Send message": "Отправить сообщение",
"Panel position": "Положение панели",
"Move above the dock": "Переместить над панелью",
"Dock to the right": "Закрепить справа",
"Expand panel": "Развернуть панель",
"Minimize panel": "Свернуть панель",
"You can attach up to four items.": "Можно прикрепить до четырёх элементов.",
"Attachments are too large together. Use smaller files.": "Общий размер вложений слишком велик. Выберите файлы поменьше.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Выберите файл TXT, Markdown, CSV, JSON или GeoJSON.",
"Each file must be 10 KB or smaller.": "Размер каждого файла не должен превышать 10 КБ.",
"Choose a non-empty UTF-8 text file.": "Выберите непустой текстовый файл UTF-8.",
"Connecting…": "Подключение…",
"Thinking…": "Обдумывание…",
"Working on the map…": "Работа с картой…",
"Silent chat · microphone off": "Текстовый чат · микрофон выключен",
"Reply interrupted. You can try again.": "Ответ прерван. Попробуйте ещё раз.",
"Could not connect. Try again.": "Не удалось подключиться. Попробуйте ещё раз.",
"Session ended. Send a message to start a new conversation.": "Сеанс завершён. Отправьте сообщение, чтобы начать новый разговор.",
"Connection timed out. Try again.": "Время ожидания подключения истекло. Попробуйте ещё раз.",
"Chat closed.": "Чат закрыт.",
"Connection stopped.": "Соединение остановлено.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Сообщение и вложения слишком велики. Удалите вложение или сократите сообщение.",
"Message was not sent. Try again.": "Сообщение не отправлено. Попробуйте ещё раз.",
"Reply stopped.": "Ответ остановлен.",
"Suggestions": "Подсказки",
"Recent": "Недавние",
"Quick commands": "Быстрые команды",
"Open AI chat": "Открыть чат с ИИ",
"CHAT": "ЧАТ",
"Back to chat": "Вернуться в чат",
"Back to voice": "Назад к голосу",
"Latest voice exchange": "Последний голосовой обмен",
"Try saying": "Попробуйте сказать",
"What am I looking at?": "Что я вижу?",
"AI Provider": "Провайдер ИИ",
"The selected AI provider is shared by voice and chat.": "Выбранный провайдер ИИ используется для голоса и чата.",
"Show quick commands": "Показывать быстрые команды",
"Chat replies are silent. No microphone access is needed.": "Ответы в чате беззвучны. Доступ к микрофону не требуется.",
"Chat": "Чат"
}
+63 -1
View File
@@ -3078,5 +3078,67 @@
"Left panels": "Ліві панелі",
"Right panels": "Праві панелі",
"CONFIRMED": "ПІДТВЕРДЖЕНО",
"PAD / RTLS": "МІСЦЕ ЗАПУСКУ / RTLS"
"PAD / RTLS": "МІСЦЕ ЗАПУСКУ / RTLS",
"Fly to Tokyo": "Летіти до Токіо",
"Show live flights": "Показати рейси наживо",
"AI chat": "ШІ-чат",
"GEV CHAT": "ЧАТ GEV",
"Ask about the map. Tell it where to go.": "Питайте про мапу. Скажіть, куди перейти.",
"Close chat": "Закрити чат",
"Conversation": "Розмова",
"Explore with a question": "Досліджуйте за допомогою запитання",
"Find a place, explore live data, or change your view.": "Знайдіть місце, перегляньте дані наживо або змініть вигляд.",
"Attachments": "Вкладення",
"Remove attachment": "Вилучити вкладення",
"Attach a map layer": "Прикріпити шар мапи",
"Choose a layer…": "Виберіть шар…",
"Attach a file": "Прикріпити файл",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT, Markdown, CSV, JSON або GeoJSON · до 10 КБ кожен. Вкладення надсилаються вашому постачальнику ШІ разом із повідомленням.",
"Latest AI response": "Остання відповідь ШІ",
"Expand conversation": "Розгорнути розмову",
"Command suggestions": "Підказки команд",
"Expand chat": "Розгорнути чат",
"Add attachment": "Додати вкладення",
"Message GEV": "Повідомлення для GEV",
"Ask GEV anything about the map…": "Запитайте GEV будь-що про мапу…",
"Stop reply": "Зупинити відповідь",
"Send message": "Надіслати повідомлення",
"Panel position": "Положення панелі",
"Move above the dock": "Перемістити над доком",
"Dock to the right": "Закріпити праворуч",
"Expand panel": "Розгорнути панель",
"Minimize panel": "Згорнути панель",
"You can attach up to four items.": "Можна прикріпити до чотирьох елементів.",
"Attachments are too large together. Use smaller files.": "Вкладення разом завеликі. Використайте менші файли.",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "Виберіть файл TXT, Markdown, CSV, JSON або GeoJSON.",
"Each file must be 10 KB or smaller.": "Кожен файл має бути не більшим за 10 КБ.",
"Choose a non-empty UTF-8 text file.": "Виберіть непорожній текстовий файл UTF-8.",
"Connecting…": "Підключення…",
"Thinking…": "Думаю…",
"Working on the map…": "Працюю з мапою…",
"Silent chat · microphone off": "Тихий чат · мікрофон вимкнено",
"Reply interrupted. You can try again.": "Відповідь перервано. Можна спробувати ще раз.",
"Could not connect. Try again.": "Не вдалося підключитися. Спробуйте ще раз.",
"Session ended. Send a message to start a new conversation.": "Сеанс завершено. Надішліть повідомлення, щоб почати нову розмову.",
"Connection timed out. Try again.": "Час підключення вичерпано. Спробуйте ще раз.",
"Chat closed.": "Чат закрито.",
"Connection stopped.": "Підключення зупинено.",
"Message and attachments are too large. Remove an attachment or shorten your message.": "Повідомлення й вкладення завеликі. Вилучіть вкладення або скоротіть повідомлення.",
"Message was not sent. Try again.": "Повідомлення не надіслано. Спробуйте ще раз.",
"Reply stopped.": "Відповідь зупинено.",
"Suggestions": "Підказки",
"Recent": "Нещодавні",
"Quick commands": "Швидкі команди",
"Open AI chat": "Відкрити ШІ-чат",
"CHAT": "ЧАТ",
"Back to chat": "Назад до чату",
"Back to voice": "Назад до голосу",
"Latest voice exchange": "Останній голосовий обмін",
"Try saying": "Спробуйте сказати",
"What am I looking at?": "Що я бачу?",
"AI Provider": "Постачальник ШІ",
"The selected AI provider is shared by voice and chat.": "Вибраний постачальник ШІ спільний для голосу й чату.",
"Show quick commands": "Показувати швидкі команди",
"Chat replies are silent. No microphone access is needed.": "Відповіді чату беззвучні. Доступ до мікрофона не потрібен.",
"Chat": "Чат"
}
+63 -1
View File
@@ -2868,5 +2868,67 @@
"Edit anchors, data packs and shot details": "编辑锚点、数据包和镜头详情",
"Download this scene as JSON or an asset bundle": "将此场景下载为 JSON 或资源包",
"Left panels": "左侧面板",
"Right panels": "右侧面板"
"Right panels": "右侧面板",
"Fly to Tokyo": "飞往东京",
"Show live flights": "显示实时航班",
"AI chat": "AI 聊天",
"GEV CHAT": "GEV 聊天",
"Ask about the map. Tell it where to go.": "询问地图信息,或指定前往的位置。",
"Close chat": "关闭聊天",
"Conversation": "对话",
"Explore with a question": "从提问开始探索",
"Find a place, explore live data, or change your view.": "查找地点、探索实时数据或更改视图。",
"Attachments": "附件",
"Remove attachment": "移除附件",
"Attach a map layer": "附加地图图层",
"Choose a layer…": "选择图层…",
"Attach a file": "附加文件",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT、Markdown、CSV、JSON 或 GeoJSON · 每个文件最多 10 KB。附件会随消息发送给您的 AI 服务商。",
"Latest AI response": "最新 AI 回复",
"Expand conversation": "展开对话",
"Command suggestions": "命令建议",
"Expand chat": "展开聊天",
"Add attachment": "添加附件",
"Message GEV": "向 GEV 发送消息",
"Ask GEV anything about the map…": "向 GEV 询问地图相关问题…",
"Stop reply": "停止回复",
"Send message": "发送消息",
"Panel position": "面板位置",
"Move above the dock": "移到底栏上方",
"Dock to the right": "停靠到右侧",
"Expand panel": "展开面板",
"Minimize panel": "最小化面板",
"You can attach up to four items.": "最多可添加四个附件。",
"Attachments are too large together. Use smaller files.": "附件总大小过大。请使用较小的文件。",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "请选择 TXT、Markdown、CSV、JSON 或 GeoJSON 文件。",
"Each file must be 10 KB or smaller.": "每个文件不得超过 10 KB。",
"Choose a non-empty UTF-8 text file.": "请选择非空的 UTF-8 文本文件。",
"Connecting…": "正在连接…",
"Thinking…": "正在思考…",
"Working on the map…": "正在处理地图…",
"Silent chat · microphone off": "静默聊天 · 麦克风已关闭",
"Reply interrupted. You can try again.": "回复已中断。请重试。",
"Could not connect. Try again.": "无法连接。请重试。",
"Session ended. Send a message to start a new conversation.": "会话已结束。发送消息以开始新对话。",
"Connection timed out. Try again.": "连接超时。请重试。",
"Chat closed.": "聊天已关闭。",
"Connection stopped.": "连接已停止。",
"Message and attachments are too large. Remove an attachment or shorten your message.": "消息和附件过大。请移除附件或缩短消息。",
"Message was not sent. Try again.": "消息未发送。请重试。",
"Reply stopped.": "回复已停止。",
"Suggestions": "建议",
"Recent": "最近",
"Quick commands": "快捷命令",
"Open AI chat": "打开 AI 聊天",
"CHAT": "聊天",
"Back to chat": "返回聊天",
"Back to voice": "返回语音",
"Latest voice exchange": "最近一次语音对话",
"Try saying": "试着说",
"What am I looking at?": "我在看什么?",
"AI Provider": "AI 服务商",
"The selected AI provider is shared by voice and chat.": "语音和聊天共用所选的 AI 服务商。",
"Show quick commands": "显示快捷命令",
"Chat replies are silent. No microphone access is needed.": "聊天回复不播放声音,无需访问麦克风。",
"Chat": "聊天"
}
+63 -1
View File
@@ -2868,5 +2868,67 @@
"Edit anchors, data packs and shot details": "編輯錨點、數據包和鏡頭詳情",
"Download this scene as JSON or an asset bundle": "將此場景下載為 JSON 或資源包",
"Left panels": "左側面板",
"Right panels": "右側面板"
"Right panels": "右側面板",
"Fly to Tokyo": "飛往東京",
"Show live flights": "顯示即時航班",
"AI chat": "AI 聊天",
"GEV CHAT": "GEV 聊天",
"Ask about the map. Tell it where to go.": "詢問地圖相關問題,告訴它要去哪裡。",
"Close chat": "關閉聊天",
"Conversation": "對話",
"Explore with a question": "用一個問題開始探索",
"Find a place, explore live data, or change your view.": "尋找地點、探索即時資料,或變更檢視。",
"Attachments": "附件",
"Remove attachment": "移除附件",
"Attach a map layer": "附加地圖圖層",
"Choose a layer…": "選擇圖層…",
"Attach a file": "附加檔案",
"TXT, Markdown, CSV, JSON or GeoJSON · up to 10 KB each. Attachments are sent to your AI provider with your message.": "TXT、Markdown、CSV、JSON 或 GeoJSON · 每個最多 10 KB。附件會隨訊息傳送給你的 AI 供應商。",
"Latest AI response": "最新 AI 回覆",
"Expand conversation": "展開對話",
"Command suggestions": "指令建議",
"Expand chat": "展開聊天",
"Add attachment": "新增附件",
"Message GEV": "傳訊息給 GEV",
"Ask GEV anything about the map…": "問 GEV 任何關於地圖的問題…",
"Stop reply": "停止回覆",
"Send message": "傳送訊息",
"Panel position": "面板位置",
"Move above the dock": "移到底欄上方",
"Dock to the right": "停靠到右側",
"Expand panel": "展開面板",
"Minimize panel": "最小化面板",
"You can attach up to four items.": "最多可附加四個項目。",
"Attachments are too large together. Use smaller files.": "附件合計太大,請使用較小的檔案。",
"Choose a TXT, Markdown, CSV, JSON or GeoJSON file.": "請選擇 TXT、Markdown、CSV、JSON 或 GeoJSON 檔案。",
"Each file must be 10 KB or smaller.": "每個檔案不得超過 10 KB。",
"Choose a non-empty UTF-8 text file.": "請選擇非空白的 UTF-8 文字檔。",
"Connecting…": "連線中…",
"Thinking…": "思考中…",
"Working on the map…": "正在操作地圖…",
"Silent chat · microphone off": "靜音聊天 · 麥克風關閉",
"Reply interrupted. You can try again.": "回覆已中斷,你可以再試一次。",
"Could not connect. Try again.": "無法連線,請再試一次。",
"Session ended. Send a message to start a new conversation.": "工作階段已結束。傳送訊息即可開始新的對話。",
"Connection timed out. Try again.": "連線逾時,請再試一次。",
"Chat closed.": "聊天已關閉。",
"Connection stopped.": "連線已停止。",
"Message and attachments are too large. Remove an attachment or shorten your message.": "訊息與附件太大。請移除一個附件或縮短訊息。",
"Message was not sent. Try again.": "訊息未送出,請再試一次。",
"Reply stopped.": "已停止回覆。",
"Suggestions": "建議",
"Recent": "最近",
"Quick commands": "快速指令",
"Open AI chat": "開啟 AI 聊天",
"CHAT": "聊天",
"Back to chat": "返回聊天",
"Back to voice": "返回語音",
"Latest voice exchange": "最近一次語音對話",
"Try saying": "試著說",
"What am I looking at?": "我在看什麼?",
"AI Provider": "AI 供應商",
"The selected AI provider is shared by voice and chat.": "所選的 AI 供應商由語音與聊天共用。",
"Show quick commands": "顯示快速指令",
"Chat replies are silent. No microphone access is needed.": "聊天回覆不會發出聲音,不需要麥克風權限。",
"Chat": "聊天"
}