mirror of
https://github.com/UNITRONIX/BetterDesk.git
synced 2026-10-03 12:30:46 +00:00
b66ddbe98f
Backfill missing web console translation keys across all available locale files using the English and Polish catalogs as the completeness baseline. Also normalize the locale JSON files so they parse consistently during tooling and validation.
2939 lines
128 KiB
JSON
2939 lines
128 KiB
JSON
{
|
||
"meta": {
|
||
"lang": "es",
|
||
"name": "Spanish",
|
||
"native_name": "Español",
|
||
"direction": "ltr"
|
||
},
|
||
"common": {
|
||
"loading": "Cargando...",
|
||
"confirm": "Confirmar",
|
||
"alert": "Alerta",
|
||
"prompt": "Enter value",
|
||
"copied": "Copied!",
|
||
"save": "Guardar",
|
||
"saved": "Guardado",
|
||
"error": "Error",
|
||
"success": "Éxito",
|
||
"warning": "Advertencia",
|
||
"info": "Información",
|
||
"all": "All",
|
||
"cancel": "Cancelar",
|
||
"delete": "Eliminar",
|
||
"actions": "Acciones",
|
||
"close": "Cerrar",
|
||
"required": "Requerido",
|
||
"name_required": "El nombre de la carpeta es obligatorio",
|
||
"active": "Activo",
|
||
"inactive": "Inactivo",
|
||
"invalid_json": "Formato JSON inválido",
|
||
"field_required": "El campo {field} es obligatorio",
|
||
"back": "Volver",
|
||
"edit": "Editar"
|
||
},
|
||
"nav": {
|
||
"main": "Main",
|
||
"tools": "Herramientas de red",
|
||
"system": "Sistema",
|
||
"dashboard": "Dashboard",
|
||
"devices": "Dispositivos",
|
||
"keys": "keys",
|
||
"generator": "Generator",
|
||
"settings": "Settings",
|
||
"users": "Usuarios",
|
||
"inventory": "Inventory",
|
||
"tickets": "Tickets",
|
||
"help_requests": "Help Requests",
|
||
"activity": "Actividad",
|
||
"automation": "Automatización",
|
||
"file_transfer": "Transferencia de archivos",
|
||
"network": "Red",
|
||
"dataguard": "DataGuard",
|
||
"reports": "Informes",
|
||
"tenants": "Tenants",
|
||
"registrations": "Registros",
|
||
"management": "Management",
|
||
"toggle_sidebar": "Alternar barra lateral",
|
||
"toggle_theme": "Cambiar tema",
|
||
"cdap": "CDAP",
|
||
"fleet": "Flota",
|
||
"scaling": "Escalado",
|
||
"cross_platform": "Multiplataforma",
|
||
"tokens": "Device Tokens",
|
||
"organizations": "Organizations",
|
||
"policies": "Políticas",
|
||
"attestation": "Atestación",
|
||
"remote": "Remote Desktop",
|
||
"toolkit": "Toolkit",
|
||
"security_audit": "Auditoría de Seguridad",
|
||
"languages": "Idiomas",
|
||
"resource_control": "Control de recursos",
|
||
"sdk_studio": "SDK Studio",
|
||
"chat": "Chat",
|
||
"help": "Help",
|
||
"expand_sidebar": "Expand sidebar",
|
||
"login": "Iniciar sesión",
|
||
"permissions": "Permissions"
|
||
},
|
||
"auth": {
|
||
"login": "Iniciar sesión",
|
||
"logout": "Cerrar sesión",
|
||
"login_title": "Iniciar sesión",
|
||
"login_subtitle": "Inicie sesión en la consola BetterDesk",
|
||
"username": "Nombre de usuario",
|
||
"username_placeholder": "Introduzca el nombre de usuario",
|
||
"password": "Contraseña",
|
||
"password_placeholder": "Introduzca la contraseña",
|
||
"remember_me": "Recordarme",
|
||
"login_failed": "Error de inicio de sesión. Verifique sus credenciales.",
|
||
"invalid_credentials": "Nombre de usuario o contraseña inválidos.",
|
||
"pro_only_account": "Esta cuenta es solo para el cliente de escritorio RustDesk. Use la aplicación RustDesk para iniciar sesión.",
|
||
"fill_all_fields": "Por favor, rellene todos los campos",
|
||
"logout_confirm": "¿Está seguro de que desea cerrar sesión?",
|
||
"change_password": "Cambiar contraseña",
|
||
"password_required": "La contraseña es obligatoria",
|
||
"totp_title": "Autenticación de dos factores",
|
||
"totp_subtitle": "Introduzca el código de 6 dígitos de su aplicación de autenticación",
|
||
"totp_code": "Código de verificación",
|
||
"totp_verify": "Verificar",
|
||
"totp_use_recovery": "Usar un código de recuperación en su lugar",
|
||
"totp_use_code": "Usar el código de autenticación en su lugar",
|
||
"totp_recovery_code": "Código de recuperación",
|
||
"totp_back_to_login": "Volver al inicio de sesión",
|
||
"totp_invalid_code": "Código de verificación no válido. Inténtelo de nuevo.",
|
||
"totp_enter_code": "Introduzca un código de 6 dígitos",
|
||
"totp_enter_recovery": "Introduzca un código de recuperación",
|
||
"totp_session_expired": "Sesión expirada. Inicie sesión de nuevo.",
|
||
"totp_already_enabled": "La autenticación de dos factores ya está activada",
|
||
"passwords_mismatch": "Las contraseñas no coinciden"
|
||
},
|
||
"dashboard": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"total_devices": "Total de dispositivos",
|
||
"online_now": "En línea ahora",
|
||
"banned": "Bloqueados",
|
||
"active_connections": "Conexiones activas",
|
||
"offline_devices": "Sin conexión",
|
||
"server_status": "Estado del servidor",
|
||
"quick_actions": "Acciones rápidas",
|
||
"manage_devices": "Gestionar dispositivos conectados",
|
||
"view_keys": "Ver claves del servidor",
|
||
"generate_config": "Generar configuración de cliente",
|
||
"server_settings": "Configurar ajustes",
|
||
"greeting_morning": "Buenos días, {name}",
|
||
"greeting_afternoon": "Buenas tardes, {name}",
|
||
"greeting_evening": "Buenas noches, {name}",
|
||
"greeting_night": "Buenas noches, {name}",
|
||
"health_overview": "Resumen de estado",
|
||
"devices_online": "Dispositivos en línea",
|
||
"active_alerts": "Alertas activas",
|
||
"recent_connections": "Dispositivos totales",
|
||
"server_uptime": "Tiempo de actividad del servidor",
|
||
"activity_feed": "Actividad reciente",
|
||
"no_recent_activity": "No hay actividad reciente",
|
||
"just_now": "ahora mismo",
|
||
"ago": "hace",
|
||
"tip_desktop_mode": "Pruebe el modo escritorio para un espacio de trabajo multiventana con widgets de monitorización.",
|
||
"tip_keyboard_shortcuts": "Pulse Ctrl+K en cualquier lugar para abrir la paleta de comandos de búsqueda rápida.",
|
||
"tip_address_book": "Sincronice su libreta de direcciones entre dispositivos iniciando sesión desde el cliente RustDesk.",
|
||
"tip_2fa": "Active la autenticación de dos factores en Ajustes para reforzar la seguridad de la cuenta.",
|
||
"tip_bulk_actions": "Seleccione varios dispositivos y use acciones masivas para gestionarlos a la vez.",
|
||
"tip_theme": "Cambie entre los temas oscuro y claro en los ajustes de la barra lateral.",
|
||
"tip_cdap": "Conecte dispositivos IoT y sensores industriales mediante la pasarela CDAP.",
|
||
"tip_tutorials": "Haga clic en el botón de ayuda de la esquina inferior derecha para ver tutoriales interactivos."
|
||
},
|
||
"devices": {
|
||
"title": "Panel",
|
||
"id": "ID",
|
||
"hostname": "Nombre de host",
|
||
"username": "Nombre de usuario",
|
||
"platform": "Plataforma",
|
||
"version": "Versión",
|
||
"ip_address": "Dirección IP",
|
||
"note": "Nota",
|
||
"last_seen": "Visto por última vez",
|
||
"last_online": "Last Online",
|
||
"first_seen": "First Seen",
|
||
"created": "Creado",
|
||
"status": "Estado",
|
||
"ban_reason": "Motivo del bloqueo",
|
||
"actions": "Acciones",
|
||
"search_placeholder": "Buscar dispositivos...",
|
||
"filter_all": "Todos",
|
||
"filter_online": "En línea",
|
||
"filter_offline": "Sin conexión",
|
||
"filter_banned": "Bloqueados",
|
||
"selected": "selected",
|
||
"showing": "Showing",
|
||
"of": "of",
|
||
"sync_status": "Estado de sincronización",
|
||
"sync_success": "Estado sincronizado correctamente",
|
||
"empty_title": "No se encontraron dispositivos",
|
||
"empty_text": "Ningún dispositivo coincide con sus filtros actuales",
|
||
"edit_title": "Detalles del dispositivo",
|
||
"delete_title": "Eliminar usuario",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar el dispositivo {id}?",
|
||
"delete_warning": "You are about to permanently delete this device:",
|
||
"delete_permanent": "Esta acción no se puede deshacer. Todos los datos asociados a este dispositivo se eliminarán permanentemente de la base de datos.",
|
||
"delete_success": "Dispositivo eliminado correctamente",
|
||
"revoke_option": "Revocar dispositivo",
|
||
"revoke_hint": "Bloquear dispositivo y desconectar conexiones activas",
|
||
"revoke_success": "Dispositivo revocado correctamente",
|
||
"details": "Detalles del dispositivo",
|
||
"ban_title": "Bloquear dispositivo",
|
||
"ban_confirm": "Are you sure you want to ban device {id}?",
|
||
"ban_success": "Dispositivo bloqueado correctamente",
|
||
"unban_title": "Desbloquear dispositivo",
|
||
"unban_confirm": "¿Está seguro de que desea desbloquear el dispositivo {id}?",
|
||
"unban_success": "Dispositivo desbloqueado correctamente",
|
||
"change_id": "Cambiar ID",
|
||
"change_id_title": "Cambiar ID del dispositivo",
|
||
"new_id": "Nuevo ID",
|
||
"change_id_hint": "6-16 caracteres, solo letras, números, guiones y guiones bajos",
|
||
"change_id_success": "ID del dispositivo cambiado correctamente",
|
||
"id_length_error": "El ID debe tener entre 6 y 16 caracteres",
|
||
"id_format_error": "El ID solo puede contener letras, números, guiones y guiones bajos",
|
||
"bulk_delete_title": "Eliminar múltiples dispositivos",
|
||
"bulk_delete_confirm": "¿Está seguro de que desea eliminar {count} dispositivos?",
|
||
"bulk_delete_success": "{count} dispositivos eliminados correctamente",
|
||
"columns": "Columnas",
|
||
"toggle_columns": "Alternar columnas visibles",
|
||
"not_found": "No encontrado",
|
||
"delete_failed": "Failed to delete device",
|
||
"change_id_failed": "Failed to change device ID",
|
||
"invalid_id": "Invalid device ID (6-16 characters required)",
|
||
"invalid_id_format": "Invalid ID format (letters, numbers, dashes, underscores only)",
|
||
"id_exists": "Device ID already exists",
|
||
"no_selection": "No devices selected",
|
||
"device_type": "Tipo de dispositivo",
|
||
"filter_type_all": "All Types",
|
||
"filter_type_rustdesk": "RustDesk",
|
||
"filter_type_desktop": "Desktop",
|
||
"filter_type_scada": "SCADA",
|
||
"filter_type_iot": "IoT",
|
||
"filter_type_agent": "Agent",
|
||
"cdap_connected": "CDAP conectado",
|
||
"revoke": "Revocar",
|
||
"access_policy": "Access Policy",
|
||
"unattended_access": "Unattended Access",
|
||
"enable_unattended": "Enable unattended access",
|
||
"access_password": "Access Password",
|
||
"password_configured": "Password set",
|
||
"no_password": "No password",
|
||
"new_password": "New password (leave empty to keep current)",
|
||
"clear_password": "Clear password",
|
||
"access_schedule": "Access Schedule",
|
||
"enable_schedule": "Enable time-based access",
|
||
"allowed_days": "Allowed days",
|
||
"start_time": "Start time",
|
||
"end_time": "End time",
|
||
"timezone": "Timezone",
|
||
"allowed_operators": "Allowed Operators",
|
||
"all_operators": "All operators (leave empty)",
|
||
"operators_hint": "Comma-separated usernames. Leave empty to allow all operators.",
|
||
"last_updated_by": "Last updated by",
|
||
"access_policy_saved": "Access policy saved",
|
||
"display_name": "Display Name",
|
||
"display_name_placeholder": "Custom name (overrides hostname)",
|
||
"note_placeholder": "Notes about this device",
|
||
"tabs": {
|
||
"overview": "Overview",
|
||
"hardware": "Hardware",
|
||
"metrics": "Métricas",
|
||
"connections": "Connections",
|
||
"audit": "Audit",
|
||
"info": "Información",
|
||
"history": "History"
|
||
},
|
||
"hardware": {
|
||
"cpu": "Processor",
|
||
"memory": "Memory",
|
||
"disk": "Disk",
|
||
"os": "Operating System",
|
||
"hostname": "Nombre de host",
|
||
"uptime": "Uptime",
|
||
"load_avg": "Load Average",
|
||
"network": "Red",
|
||
"no_data": "No hardware data available",
|
||
"title": "Panel",
|
||
"gpu": "Graphics Card"
|
||
}
|
||
},
|
||
"keys": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"public_key": "Clave pública",
|
||
"qr_code": "Código QR",
|
||
"server_info": "Información del servidor",
|
||
"download": "Descargar clave",
|
||
"show_qr": "Mostrar QR",
|
||
"qr_hint": "Escanee este código QR con la aplicación móvil RustDesk",
|
||
"no_key": "No se encontró clave pública",
|
||
"no_key_to_copy": "No hay clave para copiar",
|
||
"no_qr": "Código QR no disponible",
|
||
"download_success": "Archivo de clave descargado",
|
||
"not_found": "No encontrado",
|
||
"api_not_found": "API key not found"
|
||
},
|
||
"settings": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"tab_general": "General",
|
||
"tab_server": "Servidor",
|
||
"tab_branding": "Marca",
|
||
"tab_backup": "Copia de seguridad",
|
||
"language": "Idioma",
|
||
"change_password": "Cambiar contraseña",
|
||
"password_desc": "Actualizar la contraseña de su cuenta",
|
||
"current_password": "Contraseña actual",
|
||
"new_password": "New password (leave empty to keep current)",
|
||
"confirm_password": "Confirmar contraseña",
|
||
"save_password": "Actualizar contraseña",
|
||
"password_changed": "Contraseña cambiada correctamente",
|
||
"fill_all_fields": "Por favor, rellene todos los campos",
|
||
"passwords_not_match": "Las contraseñas no coinciden",
|
||
"password_requirements": "Requisitos de contraseña",
|
||
"password_requirements_not_met": "La contraseña no cumple los requisitos",
|
||
"req_length": "Al menos 8 caracteres",
|
||
"req_uppercase": "Al menos una letra mayúscula",
|
||
"req_lowercase": "Al menos una letra minúscula",
|
||
"req_number": "Al menos un número",
|
||
"server_info": "Información del servidor",
|
||
"version": "Versión",
|
||
"database": "Base de datos",
|
||
"uptime": "Uptime",
|
||
"audit_log": "Registro de auditoría",
|
||
"audit_desc": "Actividad reciente de la consola",
|
||
"no_audit_logs": "No se encontraron registros de auditoría",
|
||
"backend_title": "Backend del servidor",
|
||
"backend_desc": "Elija el backend del servidor para la gestión de dispositivos y servicios de señal/relay.",
|
||
"backend_original": "Original",
|
||
"backend_enhanced": "Mejorado",
|
||
"backend_rustdesk_desc": "Servidores de señal y relay estándar de RustDesk (hbbs + hbbr). API HTTP básica con endpoints limitados.",
|
||
"backend_betterdesk_desc": "Servidor mejorado basado en Go con API REST completa, autenticación JWT, lista de bloqueo, etiquetas, eventos WebSocket en tiempo real y registro de auditoría.",
|
||
"backend_feature_signal": "Servidor de señal (registro de ID)",
|
||
"backend_feature_relay": "Servidor relay (retransmisión de conexiones)",
|
||
"backend_feature_basic_api": "API REST básica",
|
||
"backend_feature_full_api": "API REST completa (34+ endpoints)",
|
||
"backend_feature_jwt": "Autenticación JWT y TOTP 2FA",
|
||
"backend_feature_blocklist": "Gestión de lista de bloqueo IP/ID",
|
||
"backend_feature_tags": "Etiquetas y agrupación de dispositivos",
|
||
"backend_feature_audit": "Registro de eventos de auditoría",
|
||
"backend_feature_websocket": "Eventos WebSocket en tiempo real",
|
||
"backend_connection": "Conexión",
|
||
"backend_api_url": "URL de la API",
|
||
"backend_test": "Probar conexión",
|
||
"backend_testing": "Probando...",
|
||
"backend_save": "Aplicar backend",
|
||
"backend_saved": "Backend del servidor cambiado correctamente. Los datos de dispositivos serán gestionados por el nuevo backend.",
|
||
"backend_save_failed": "Error al cambiar el backend del servidor",
|
||
"backend_test_success": "¡Conexión exitosa! El servidor es accesible.",
|
||
"backend_test_failed": "Error de conexión. El servidor no es accesible.",
|
||
"backend_confirm_switch": "¿Está seguro de que desea cambiar el backend del servidor? Esto cambiará la gestión de dispositivos.",
|
||
"backend_unreachable": "No se puede cambiar: el servidor de destino no es accesible. Inicie el servidor primero.",
|
||
"invalid_backend": "Selección de backend no válida. Elija 'rustdesk' o 'betterdesk'.",
|
||
"backend_status_running": "Conectado",
|
||
"backend_status_unreachable": "No accesible",
|
||
"backend_status_error": "Error",
|
||
"backend_status_unknown": "Desconocido",
|
||
"totp_title": "Autenticación de dos factores",
|
||
"totp_desc": "Añada una capa adicional de seguridad con aplicaciones de autenticación TOTP (Google Authenticator, Microsoft Authenticator, Authy, etc.)",
|
||
"totp_enabled": "2FA activado",
|
||
"totp_enabled_desc": "Su cuenta está protegida con autenticación de dos factores.",
|
||
"totp_disabled": "2FA no activado",
|
||
"totp_disabled_desc": "Active la autenticación de dos factores para mayor seguridad de la cuenta.",
|
||
"totp_setup": "Activar 2FA",
|
||
"totp_disable": "Desactivar 2FA",
|
||
"totp_step1": "Instale una aplicación de autenticación en su teléfono",
|
||
"totp_step2": "Escanee el código QR a continuación",
|
||
"totp_step3": "Introduzca el código de 6 dígitos para verificar",
|
||
"totp_manual_key": "Clave manual",
|
||
"totp_enter_code": "Introduzca un código de 6 dígitos",
|
||
"totp_verify_enable": "Verificar y activar",
|
||
"totp_enabled_success": "¡Autenticación de dos factores activada!",
|
||
"totp_recovery_warning": "Guarde estos códigos de recuperación en un lugar seguro. Cada código solo se puede usar una vez. Si pierde el acceso a su aplicación de autenticación, puede usar estos códigos para iniciar sesión.",
|
||
"totp_done": "Listo",
|
||
"totp_disable_warning": "Desactivar la autenticación de dos factores hará que su cuenta sea menos segura. Introduzca su contraseña para confirmar.",
|
||
"totp_disabled_success": "La autenticación de dos factores ha sido desactivada.",
|
||
"tutorials_title": "Tutorials & Guides",
|
||
"tutorials_desc": "Control guided tours and help overlays shown throughout the console",
|
||
"tutorials_enabled": "Enable tutorials",
|
||
"tutorials_enabled_hint": "When disabled, tutorials will not start automatically and the help button will be hidden",
|
||
"tutorials_reset_hint": "Mark all tutorials as unseen so they can be shown again",
|
||
"tutorials_enabled_toast": "Tutorials enabled",
|
||
"tutorials_disabled_toast": "Tutorials disabled",
|
||
"tutorials_reset_toast": "All tutorials have been reset"
|
||
},
|
||
"audit": {
|
||
"time": "Hora",
|
||
"user": "Usuario",
|
||
"action": "Acción",
|
||
"details": "Detalles del dispositivo",
|
||
"action_login": "Login",
|
||
"action_login_failed": "Login Failed",
|
||
"action_logout": "Logout",
|
||
"action_password_change": "Password Changed",
|
||
"action_2fa_enable": "2FA Enabled",
|
||
"action_2fa_disable": "2FA Disabled",
|
||
"action_user_create": "User Created",
|
||
"action_user_update": "User Updated",
|
||
"action_user_delete": "User Deleted",
|
||
"action_settings_update": "Settings Updated",
|
||
"action_device_ban": "Device Banned",
|
||
"action_device_unban": "Device Unbanned",
|
||
"action_device_delete": "Device Deleted"
|
||
},
|
||
"generator": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"config_options": "Opciones de configuración",
|
||
"server_address": "Dirección del servidor",
|
||
"server_address_hint": "Dominio o dirección IP de su servidor",
|
||
"custom_port": "Puerto personalizado",
|
||
"port_hint": "Dejar vacío para el predeterminado (21116)",
|
||
"relay_server": "Servidor relay",
|
||
"relay_placeholder": "Igual que el servidor ID si está vacío",
|
||
"relay_hint": "Opcional: dirección de servidor relay separada",
|
||
"include_key": "Incluir clave pública en la configuración",
|
||
"generate": "Generar configuración",
|
||
"output": "Resultado de configuración",
|
||
"usage_title": "Detalles de conexión",
|
||
"generated": "Configuración generada",
|
||
"server_required": "La dirección del servidor es obligatoria",
|
||
"nothing_to_copy": "Genere primero una configuración"
|
||
},
|
||
"server": {
|
||
"port": "Puerto",
|
||
"api_port": "Puerto API",
|
||
"id_server": "Servidor ID",
|
||
"relay_server": "Servidor relay",
|
||
"api_key": "Clave API"
|
||
},
|
||
"status": {
|
||
"online": "En línea",
|
||
"offline": "Sin conexión",
|
||
"banned": "Bloqueados",
|
||
"running": "En ejecución",
|
||
"stopped": "Detenido",
|
||
"unknown": "Desconocido",
|
||
"checking": "Verificando...",
|
||
"label": "Status"
|
||
},
|
||
"actions": {
|
||
"refresh": "Actualizar",
|
||
"copy": "Copiar",
|
||
"connect": "Conectar",
|
||
"connect_desktop": "Conectar vía cliente de escritorio",
|
||
"remote_viewer": "Visor remoto",
|
||
"web_remote": "Escritorio remoto web",
|
||
"details": "Detalles del dispositivo",
|
||
"edit": "Editar",
|
||
"delete": "Eliminar",
|
||
"ban": "Bloquear",
|
||
"unban": "Desbloquear",
|
||
"save": "Guardar",
|
||
"cancel": "Cancelar",
|
||
"confirm": "Confirmar",
|
||
"close": "Cerrar",
|
||
"clear": "Limpiar",
|
||
"ok": "OK",
|
||
"saved": "Guardado",
|
||
"back": "Volver",
|
||
"create": "Crear",
|
||
"dismiss": "Descartar",
|
||
"view_all": "Ver todo",
|
||
"cdap_viewer": "CDAP Snapshot Viewer",
|
||
"add": "Add",
|
||
"remove": "Remove"
|
||
},
|
||
"time": {
|
||
"just_now": "ahora mismo",
|
||
"seconds_ago": "Hace {count} segundo(s)",
|
||
"minutes_ago": "Hace {count} minuto(s)",
|
||
"hours_ago": "Hace {count} hora(s)",
|
||
"days_ago": "Hace {count} día(s)",
|
||
"day_mon": "Mon",
|
||
"day_tue": "Tue",
|
||
"day_wed": "Wed",
|
||
"day_thu": "Thu",
|
||
"day_fri": "Fri",
|
||
"day_sat": "Sat",
|
||
"day_sun": "Sun"
|
||
},
|
||
"users": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"add_user": "Añadir usuario",
|
||
"edit_user": "Editar usuario",
|
||
"username": "Nombre de usuario",
|
||
"username_placeholder": "Introduzca el nombre de usuario",
|
||
"username_hint": "3-32 caracteres, solo letras, números y guiones bajos",
|
||
"password": "Contraseña",
|
||
"password_placeholder": "Introduzca la contraseña",
|
||
"password_hint": "Mínimo 8 caracteres con mayúsculas, minúsculas, números y símbolos",
|
||
"password_leave_empty": "Dejar vacío para mantener la actual",
|
||
"role": "Rol",
|
||
"role_admin": "Administrador",
|
||
"role_operator": "Operador",
|
||
"role_viewer": "Observador",
|
||
"role_pro": "Pro (API only)",
|
||
"role_hint": "Los observadores solo pueden ver datos, los operadores pueden gestionar dispositivos, los administradores tienen acceso completo",
|
||
"created": "Creado",
|
||
"last_login": "Último inicio de sesión",
|
||
"never": "Nunca",
|
||
"actions": "Acciones",
|
||
"create": "Crear",
|
||
"edit": "Editar",
|
||
"reset_password": "Restablecer contraseña",
|
||
"new_password": "New password (leave empty to keep current)",
|
||
"delete_title": "Eliminar usuario",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar el usuario {username}?",
|
||
"delete_success": "Dispositivo eliminado correctamente",
|
||
"user_created": "Usuario creado correctamente",
|
||
"user_updated": "Usuario actualizado correctamente",
|
||
"password_reset_success": "Contraseña restablecida correctamente",
|
||
"empty_title": "No se encontraron dispositivos",
|
||
"empty_text": "Ningún dispositivo coincide con sus filtros actuales",
|
||
"fill_required": "Por favor, rellene todos los campos obligatorios",
|
||
"invalid_username": "El nombre de usuario debe tener 3-32 caracteres, solo letras, números y guiones bajos",
|
||
"username_exists": "El nombre de usuario ya existe",
|
||
"weak_password": "La contraseña es demasiado débil",
|
||
"password_too_short": "La contraseña debe tener al menos 8 caracteres",
|
||
"invalid_role": "Rol no válido",
|
||
"cannot_demote_self": "No puede degradarse a sí mismo",
|
||
"cannot_delete_self": "No puede eliminar su propia cuenta",
|
||
"last_admin": "No se puede eliminar el último administrador",
|
||
"admin_only": "Esta función solo está disponible para administradores",
|
||
"password_required": "La contraseña es obligatoria",
|
||
"not_found": "No encontrado",
|
||
"strength_weak": "Débil",
|
||
"strength_medium": "Media",
|
||
"strength_strong": "Fuerte",
|
||
"security_tips_title": "Buenas prácticas de seguridad",
|
||
"tip_strong_passwords": "Use contraseñas fuertes y únicas para cada usuario",
|
||
"tip_unique_accounts": "Cree cuentas individuales para cada persona",
|
||
"tip_viewer_role": "Use el rol de observador para usuarios que solo necesitan acceso de lectura",
|
||
"tip_operator_role": "Use el rol de operador para usuarios que necesitan gestionar dispositivos pero no usuarios",
|
||
"tip_audit_logs": "Revise regularmente los registros de auditoría en busca de actividad sospechosa",
|
||
"role_super_admin": "Super Admin",
|
||
"role_server_admin": "Server Admin",
|
||
"role_global_admin": "Global Admin",
|
||
"organizations": "Organizations",
|
||
"user_organizations": "Organizations for {username}",
|
||
"no_organizations": "User is not assigned to any organization",
|
||
"org_removed": "Organization assignment removed"
|
||
},
|
||
"folders": {
|
||
"title": "Panel",
|
||
"create": "Crear",
|
||
"edit": "Editar",
|
||
"delete": "Eliminar",
|
||
"name": "Folder Name",
|
||
"name_placeholder": "Introduzca el nombre de la carpeta",
|
||
"name_required": "El nombre de la carpeta es obligatorio",
|
||
"name_too_long": "El nombre de la carpeta es demasiado largo (máx. 50 caracteres)",
|
||
"color": "Color",
|
||
"icon": "Icono",
|
||
"not_found": "No encontrado",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar esta carpeta? Los dispositivos dejarán de estar asignados.",
|
||
"delete_success": "Dispositivo eliminado correctamente",
|
||
"created": "Creado",
|
||
"updated": "Carpeta actualizada correctamente",
|
||
"no_devices_selected": "No hay dispositivos seleccionados",
|
||
"devices_moved": "Dispositivos movidos correctamente",
|
||
"device_assigned": "Dispositivo asignado a la carpeta",
|
||
"unassigned": "Sin asignar",
|
||
"all_devices": "Todos los dispositivos",
|
||
"drag_hint": "Arrastre dispositivos a las carpetas para organizarlos",
|
||
"move_to": "Mover a",
|
||
"toggle_sidebar": "Alternar barra lateral"
|
||
},
|
||
"errors": {
|
||
"forbidden_title": "Acceso denegado",
|
||
"forbidden_message": "No tiene permiso para acceder a esta página.",
|
||
"not_found_title": "Página no encontrada",
|
||
"not_found_message": "La página que busca no existe o ha sido movida.",
|
||
"server_error_title": "Error del servidor",
|
||
"server_error_message": "Algo salió mal. Inténtelo de nuevo más tarde.",
|
||
"go_home": "Ir al inicio",
|
||
"try_again": "Reintentar",
|
||
"load_devices_failed": "Error al cargar dispositivos",
|
||
"load_key_failed": "Error al cargar la clave",
|
||
"load_qr_failed": "Error al cargar el QR",
|
||
"load_audit_failed": "Error al cargar el registro de auditoría",
|
||
"load_users_failed": "Error al cargar usuarios",
|
||
"load_folders_failed": "Error al cargar carpetas",
|
||
"download_failed": "Error en la descarga",
|
||
"logout_failed": "Error al cerrar sesión",
|
||
"password_change_failed": "Error al cambiar la contraseña",
|
||
"language_change_failed": "Error al cambiar el idioma",
|
||
"ban_failed": "Error al bloquear el dispositivo",
|
||
"unban_failed": "Error al desbloquear el dispositivo",
|
||
"delete_failed": "Failed to delete device",
|
||
"change_id_failed": "Failed to change device ID",
|
||
"bulk_delete_failed": "Error al eliminar dispositivos",
|
||
"sync_failed": "Error de sincronización",
|
||
"error": "Error",
|
||
"not_found": "No encontrado",
|
||
"server_error": "Error del servidor",
|
||
"load_device_failed": "No se pudieron cargar los detalles del dispositivo",
|
||
"load_orgs_failed": "Failed to load organizations"
|
||
},
|
||
"remote": {
|
||
"title": "Panel",
|
||
"connecting": "Conectando...",
|
||
"waiting_password": "Esperando contraseña",
|
||
"authenticating": "Autenticando...",
|
||
"streaming": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"error": "Error",
|
||
"status_idle": "Inactivo",
|
||
"password_required": "La contraseña es obligatoria",
|
||
"enter_password_for": "Introduzca la contraseña del dispositivo",
|
||
"password_placeholder": "Introduzca la contraseña",
|
||
"connect": "Conectar",
|
||
"reconnect": "Reconectar",
|
||
"disconnect": "Desconectar",
|
||
"back_to_devices": "Volver a dispositivos",
|
||
"fullscreen": "Pantalla completa",
|
||
"toggle_audio": "Alternar audio",
|
||
"send_keys": "Enviar teclas",
|
||
"scale_mode": "Modo de escala",
|
||
"scale_fit": "Ajustar a ventana",
|
||
"scale_fill": "Llenar ventana",
|
||
"scale_original": "Tamaño original (1:1)",
|
||
"scale_stretch": "Estirar",
|
||
"actions": "Acciones",
|
||
"lock_screen": "Bloquear pantalla",
|
||
"restart_remote": "Reiniciar dispositivo remoto",
|
||
"refresh_screen": "Actualizar pantalla",
|
||
"clipboard_paste": "Pegar desde portapapeles",
|
||
"block_input": "Bloquear entrada",
|
||
"display_settings": "Ajustes de pantalla",
|
||
"image_quality": "Calidad de imagen",
|
||
"quality_best": "Mejor calidad",
|
||
"quality_balanced": "Equilibrada",
|
||
"quality_low": "Rendimiento",
|
||
"show_cursor": "Mostrar cursor remoto",
|
||
"lock_after_session": "Bloquear después de la sesión",
|
||
"privacy_mode": "Modo privacidad",
|
||
"disable_clipboard": "Desactivar portapapeles",
|
||
"chat": "Chat",
|
||
"chat_placeholder": "Escriba un mensaje...",
|
||
"record": "Grabar pantalla",
|
||
"view_only": "Solo visualización",
|
||
"pin_toolbar": "Fijar barra de herramientas",
|
||
"monitors": "Monitors",
|
||
"select_monitor": "Select Monitor",
|
||
"quality_speed": "Speed (Low Quality, 60fps)",
|
||
"quality_quality": "Quality (Best, 30fps)",
|
||
"recording_started": "Recording started",
|
||
"recording_stopped": "Recording stopped",
|
||
"download_recording": "Download Recording",
|
||
"e2e_encrypted": "End-to-End Encrypted",
|
||
"e2e_key_exchange": "Establishing secure channel...",
|
||
"confirm_restart": "¿Está seguro de que desea reiniciar el dispositivo remoto?",
|
||
"webcodecs_not_supported": "Su navegador no soporta la API WebCodecs. Utilice Chrome 94+ o Edge 94+.",
|
||
"webcodecs_insecure_context": "WebCodecs no disponible por HTTP. El vídeo usa decodificación por software. Para mejor rendimiento, use HTTPS.",
|
||
"webcodecs_fallback_active": "Decodificador de vídeo por software activo (rendimiento limitado)",
|
||
"click_to_start": "Haga clic para iniciar",
|
||
"autoplay_blocked": "El navegador requiere interacción del usuario para iniciar vídeo y audio.",
|
||
"start_playback": "Iniciar reproducción",
|
||
"new_connection": "Nueva conexión",
|
||
"device_id_placeholder": "Introduzca ID de dispositivo",
|
||
"http_warning": "Modo HTTP: limitado a decodificación H.264 por software (~15 FPS). Use HTTPS para máximo rendimiento (WebCodecs, VP9, 60 FPS).",
|
||
"file_transfer": "Transferencia de archivos",
|
||
"file_upload": "Subir",
|
||
"file_download": "Descargar",
|
||
"file_empty": "Esta carpeta está vacía",
|
||
"file_transfers": "Transferencias",
|
||
"file_complete": "Completado",
|
||
"file_error": "Transferencia fallida",
|
||
"file_show_hidden": "Mostrar archivos ocultos",
|
||
"file_new_folder": "Nueva carpeta",
|
||
"file_new_folder_prompt": "Ingrese nombre de carpeta:",
|
||
"file_parent": "Carpeta superior",
|
||
"file_root": "Raíz",
|
||
"file_rename": "Renombrar",
|
||
"file_rename_prompt": "Ingrese nuevo nombre:",
|
||
"file_delete_confirm": "¿Está seguro de que desea eliminar este elemento?",
|
||
"file_cancelled": "Transferencia cancelada",
|
||
"2fa_required": "2FA Verification Required",
|
||
"2fa_hint": "Enter the 6-digit code from your authenticator app",
|
||
"2fa_invalid": "Enter a valid 6-digit code",
|
||
"verify": "Verify",
|
||
"use_cdap_fallback": "Use CDAP viewer",
|
||
"cdap_fallback_hint": "Open the lightweight JPEG-polling viewer that uses bd-signal/CDAP instead of the RustDesk relay. Useful when the peer is offline on the relay but reachable via the agent management channel.",
|
||
"clipboard_empty": "Clipboard is empty",
|
||
"clipboard_denied": "Clipboard access denied. HTTPS required or permission not granted.",
|
||
"file_loading": "Loading...",
|
||
"file_timeout": "Remote device did not respond. File transfer may not be supported or is disabled on the remote machine."
|
||
},
|
||
"branding": {
|
||
"identity_title": "Identidad de marca",
|
||
"identity_desc": "Personalice el nombre y la descripción de la aplicación que se muestran en la consola",
|
||
"app_name": "Nombre de la aplicación",
|
||
"app_description": "Descripción de la aplicación",
|
||
"logo_title": "Logotipo",
|
||
"logo_desc": "Elija cómo aparece su logotipo en la barra lateral y la página de inicio de sesión",
|
||
"logo_type_icon": "Icono Material",
|
||
"logo_type_svg": "Código SVG",
|
||
"logo_type_image": "URL de imagen",
|
||
"logo_icon_name": "Nombre del icono",
|
||
"logo_icon_hint": "Introduzca un nombre de Material Icons (ej: dns, cloud, security). Ver fonts.google.com/icons",
|
||
"logo_svg_code": "Código SVG",
|
||
"logo_svg_hint": "Pegue su marcado SVG aquí. Soporta elementos <svg> completos con rutas y estilos.",
|
||
"logo_image_upload": "Subir imagen",
|
||
"logo_image_choose": "Elegir archivo de imagen",
|
||
"logo_image_hint": "PNG, JPG, GIF, WebP o SVG. Máx. 1,5 MB. La imagen se almacena como datos base64.",
|
||
"logo_image_url": "Datos / URL de imagen",
|
||
"logo_image_url_hint": "Se rellena automáticamente al subir o pegue una URL manualmente.",
|
||
"logo_image_too_large": "La imagen es demasiado grande. Tamaño máximo: 1,5 MB.",
|
||
"logo_image_invalid_type": "Tipo de archivo no válido. Use PNG, JPG, GIF, WebP o SVG.",
|
||
"preview": "Vista previa",
|
||
"colors_title": "Esquema de colores",
|
||
"colors_desc": "Personalice la paleta de colores. Deje vacío para los valores predeterminados.",
|
||
"colors_backgrounds": "Fondos",
|
||
"colors_text": "Texto",
|
||
"colors_accents": "Colores de acento",
|
||
"colors_borders": "Bordes",
|
||
"import_export_title": "Importar / Exportar",
|
||
"import_export_desc": "Guarde su tema como archivo JSON o importe uno de otra instancia",
|
||
"export_theme": "Exportar tema",
|
||
"import_theme": "Importar tema",
|
||
"reset_defaults": "Restablecer valores predeterminados",
|
||
"save_branding": "Guardar marca",
|
||
"saved": "Guardado",
|
||
"exported": "Tema exportado",
|
||
"imported": "Tema importado correctamente. Recargando...",
|
||
"import_error": "Error al importar el tema. Formato de archivo no válido.",
|
||
"reset_confirm": "¿Está seguro de que desea restablecer la marca a los valores predeterminados? Esta acción no se puede deshacer.",
|
||
"reset_success": "Marca restablecida a valores predeterminados. Recargando...",
|
||
"logo_type_text": "Text Logo",
|
||
"logo_text": "Logo Text",
|
||
"logo_text_hint": "Primary text displayed as your brand logo",
|
||
"logo_text_accent": "Accent Text",
|
||
"logo_text_accent_hint": "Secondary text below the logo (e.g. product name or tagline)",
|
||
"logo_upload_success": "Logo uploaded successfully.",
|
||
"typography_title": "Typography",
|
||
"typography_desc": "Choose fonts for headings and body text. Fonts are downloaded to the server for self-hosting.",
|
||
"font_heading": "Heading Font",
|
||
"font_heading_hint": "Used for headings (H1–H6) and text logo",
|
||
"font_body": "Body Font",
|
||
"font_body_hint": "Used for body text and UI elements",
|
||
"font_search_placeholder": "Search fonts...",
|
||
"font_system_default": "System default",
|
||
"font_clear": "Clear",
|
||
"font_cat_all": "All",
|
||
"font_downloaded_count": "fonts downloaded on server"
|
||
},
|
||
"device_detail": {
|
||
"tab_overview": "Resumen",
|
||
"tab_tags": "Etiquetas y notas",
|
||
"tab_actions": "Acciones",
|
||
"section_identity": "Identidad",
|
||
"section_network": "Red",
|
||
"section_timestamps": "Marcas de tiempo",
|
||
"section_connect": "Conexión",
|
||
"section_manage": "Gestión",
|
||
"folder": "Carpeta",
|
||
"status_tier": "Nivel de estado",
|
||
"device_banned": "Este dispositivo está bloqueado",
|
||
"no_reason": "Sin motivo proporcionado",
|
||
"tags": "Etiquetas",
|
||
"no_tags": "No hay etiquetas asignadas a este dispositivo",
|
||
"tag_placeholder": "Introduzca un nombre de etiqueta...",
|
||
"add_tag": "Añadir",
|
||
"tag_exists": "Esta etiqueta ya existe",
|
||
"notes": "Notas",
|
||
"notes_placeholder": "Añada notas sobre este dispositivo...",
|
||
"danger_zone": "Zona de peligro",
|
||
"action_connect_web": "Remoto web",
|
||
"action_connect_web_desc": "Conectar vía escritorio remoto del navegador",
|
||
"action_native_remote": "BetterDesk Remote",
|
||
"action_native_remote_desc": "Transmisión JPEG nativa — sin plugins necesarios",
|
||
"action_connect_desktop": "Cliente de escritorio",
|
||
"action_connect_desktop_desc": "Abrir en la aplicación de escritorio",
|
||
"action_change_id_desc": "Cambiar el ID de registro del dispositivo",
|
||
"action_ban_desc": "Impedir que este dispositivo se conecte",
|
||
"action_unban_desc": "Permitir que este dispositivo se conecte de nuevo",
|
||
"action_delete_desc": "Eliminar permanentemente este dispositivo",
|
||
"tab_hardware": "Hardware",
|
||
"tab_metrics": "Métricas",
|
||
"section_system": "Sistema",
|
||
"section_cpu": "Procesador",
|
||
"section_memory": "Memoria",
|
||
"section_displays": "Pantallas",
|
||
"section_encoding": "Capacidades de codificación",
|
||
"section_live_metrics": "Métricas en vivo",
|
||
"section_current_usage": "Uso actual",
|
||
"section_usage_history": "Historial de uso",
|
||
"os": "Operating System",
|
||
"version": "Versión",
|
||
"cpu_model": "Modelo de CPU",
|
||
"cpu_cores": "Núcleos de CPU",
|
||
"cpu_freq": "Frecuencia de CPU",
|
||
"total_memory": "Memoria total",
|
||
"metric_memory": "Memoria",
|
||
"metric_disk": "Disco",
|
||
"metrics_updated": "Actualizado",
|
||
"device_groups": "Grupos",
|
||
"no_sysinfo": "No hay información de hardware disponible",
|
||
"no_sysinfo_hint": "La información del sistema aparecerá después de que el dispositivo envíe un informe de sysinfo",
|
||
"no_metrics": "No hay métricas disponibles",
|
||
"no_metrics_hint": "Las métricas aparecerán después de que el dispositivo envíe informes de latido",
|
||
"chart_oldest": "← Más antiguo",
|
||
"chart_newest": "Más reciente →",
|
||
"tab_services": "Services",
|
||
"tab_processes": "Processes",
|
||
"tab_events": "Events",
|
||
"tab_activity": "Activity",
|
||
"tab_files": "Files",
|
||
"agent_lazy_hint": "Click this tab to load live data from the agent",
|
||
"agent_offline": "Agent is offline",
|
||
"agent_timeout": "Agent did not respond in time",
|
||
"agent_error": "Failed to load data from agent",
|
||
"service_name": "Name",
|
||
"service_display": "Display name",
|
||
"service_status": "Status",
|
||
"service_start": "Start mode",
|
||
"process_name": "Name",
|
||
"process_user": "User",
|
||
"process_memory": "Memory"
|
||
},
|
||
"inventory": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"device_id": "ID del dispositivo",
|
||
"hostname": "Nombre de host",
|
||
"os": "Operating System",
|
||
"cpu": "Processor",
|
||
"cpu_cores": "Núcleos de CPU",
|
||
"cpu_usage": "Uso de CPU",
|
||
"memory": "Memory",
|
||
"memory_total": "Memoria total",
|
||
"memory_used": "Memoria usada",
|
||
"memory_available": "Memoria disponible",
|
||
"memory_usage": "Uso de memoria",
|
||
"swap": "Swap",
|
||
"disks": "Discos",
|
||
"disk_count": "Cantidad de discos",
|
||
"network": "Red",
|
||
"network_interfaces": "Interfaces de red",
|
||
"software": "Software",
|
||
"software_count": "Software instalado",
|
||
"system": "Sistema",
|
||
"kernel": "Kernel",
|
||
"architecture": "Arquitectura",
|
||
"uptime": "Uptime",
|
||
"frequency": "Frecuencia",
|
||
"physical_cores": "Núcleos físicos",
|
||
"logical_cores": "Núcleos lógicos",
|
||
"model": "Modelo",
|
||
"usage": "Uso",
|
||
"total": "Total",
|
||
"used": "Usado",
|
||
"available": "Disponible",
|
||
"mount_point": "Punto de montaje",
|
||
"removable": "Extraíble",
|
||
"mac_address": "Dirección MAC",
|
||
"ip_addresses": "Direcciones IP",
|
||
"traffic": "Tráfico",
|
||
"collect_now": "Recopilar ahora",
|
||
"collector_running": "Recopilación en curso",
|
||
"collector_stopped": "Recopilación detenida",
|
||
"last_upload": "Última subida",
|
||
"total_uploads": "Total",
|
||
"last_seen": "Visto por última vez",
|
||
"collected_at": "Recopilado el",
|
||
"no_data": "No hardware data available",
|
||
"no_devices": "No se encontraron dispositivos con datos de inventario",
|
||
"detail_title": "Detalle del inventario del dispositivo",
|
||
"telemetry": "Telemetría",
|
||
"view_detail": "Ver detalle",
|
||
"export": "Exportar",
|
||
"refresh": "Actualizar"
|
||
},
|
||
"tickets": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"create": "Crear",
|
||
"edit": "Editar",
|
||
"delete": "Eliminar",
|
||
"detail": "Detalle del ticket",
|
||
"ticket_id": "ID del ticket",
|
||
"ticket_title": "Título",
|
||
"description": "Descripción",
|
||
"status": "Estado",
|
||
"priority": "Prioridad",
|
||
"category": "Categoría",
|
||
"assigned_to": "Asignado a",
|
||
"created_by": "Creado por",
|
||
"device": "Dispositivo",
|
||
"sla_due": "Vencimiento SLA",
|
||
"created_at": "Creado",
|
||
"updated_at": "Actualizado",
|
||
"resolved_at": "Resuelto",
|
||
"closed_at": "Cerrado",
|
||
"status_open": "Abierto",
|
||
"status_in_progress": "En progreso",
|
||
"status_resolved": "Resuelto",
|
||
"status_closed": "Cerrado",
|
||
"priority_low": "Baja",
|
||
"priority_medium": "Media",
|
||
"priority_high": "Alta",
|
||
"priority_critical": "Crítica",
|
||
"category_general": "General",
|
||
"category_hardware": "Hardware",
|
||
"category_software": "Software",
|
||
"category_network": "Red",
|
||
"category_access": "Acceso",
|
||
"category_other": "Otro",
|
||
"comments": "Comentarios",
|
||
"add_comment": "Añadir comentario",
|
||
"comment_placeholder": "Escriba un comentario...",
|
||
"internal_note": "Nota interna (no visible para usuarios finales)",
|
||
"attachments": "Adjuntos",
|
||
"upload_attachment": "Subir adjunto",
|
||
"download": "Descargar clave",
|
||
"connect_device": "Conectar al dispositivo",
|
||
"no_tickets": "No se encontraron tickets",
|
||
"no_comments": "Sin comentarios aún",
|
||
"no_attachments": "Sin adjuntos",
|
||
"title_required": "El título es obligatorio",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar el ticket #{id}?",
|
||
"delete_success": "Dispositivo eliminado correctamente",
|
||
"created_success": "Ticket creado correctamente",
|
||
"updated_success": "Ticket actualizado correctamente",
|
||
"sla_overdue": "SLA vencido",
|
||
"filter_all": "Todos",
|
||
"search_placeholder": "Buscar dispositivos...",
|
||
"assign_to_me": "Asignarme",
|
||
"unassign": "Desasignar",
|
||
"stats_total": "Total",
|
||
"stats_open": "Abiertos",
|
||
"stats_in_progress": "En progreso",
|
||
"stats_resolved": "Resueltos",
|
||
"stats_closed": "Cerrados"
|
||
},
|
||
"activity": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"device": "Dispositivo",
|
||
"hostname": "Nombre de host",
|
||
"sessions": "Sesiones",
|
||
"idle_time": "Tiempo inactivo",
|
||
"active_time": "Tiempo activo",
|
||
"last_report": "Último informe",
|
||
"top_apps": "Aplicaciones principales",
|
||
"app_name": "Nombre de la aplicación",
|
||
"window_title": "Título de ventana",
|
||
"category": "Categoría",
|
||
"duration": "Duración",
|
||
"started_at": "Iniciado",
|
||
"ended_at": "Finalizado",
|
||
"session_count": "Cantidad de sesiones",
|
||
"total_active": "Total activo",
|
||
"total_idle": "Total inactivo",
|
||
"detail_count": "Registros detallados",
|
||
"no_data": "No hardware data available",
|
||
"no_sessions": "No hay sesiones registradas",
|
||
"filter_from": "Desde",
|
||
"filter_to": "Hasta",
|
||
"filter_apply": "Aplicar filtro",
|
||
"hours": "horas",
|
||
"minutes": "minutos",
|
||
"seconds": "segundos",
|
||
"category_browser": "Navegador",
|
||
"category_productivity": "Productividad",
|
||
"category_communication": "Comunicación",
|
||
"category_development": "Desarrollo",
|
||
"category_media": "Multimedia",
|
||
"category_gaming": "Juegos",
|
||
"category_system": "Sistema",
|
||
"category_other": "Otro",
|
||
"summary": "Resumen",
|
||
"details": "Detalles del dispositivo",
|
||
"refresh": "Actualizar",
|
||
"search": "Search devices...",
|
||
"date_range": "Rango de fechas",
|
||
"device_id": "ID del dispositivo",
|
||
"session_start": "Inicio de sesión",
|
||
"session_end": "Fin de sesión",
|
||
"user": "Usuario",
|
||
"no_activity": "No activity recorded",
|
||
"reported_at": "Reported At",
|
||
"detail": "Detalle del ticket",
|
||
"no_apps": "No applications"
|
||
},
|
||
"automation": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"rules": "Reglas de alerta",
|
||
"rules_subtitle": "Definir condiciones que activan notificaciones",
|
||
"alerts": "Historial de alertas",
|
||
"alerts_subtitle": "Ver y confirmar alertas activadas",
|
||
"commands": "Comandos remotos",
|
||
"commands_subtitle": "Enviar comandos a dispositivos remotos",
|
||
"smtp": "Configuración SMTP",
|
||
"smtp_subtitle": "Ajustes de notificación por correo electrónico",
|
||
"rule_name": "Nombre de la regla",
|
||
"description": "Descripción",
|
||
"condition_type": "Tipo de condición",
|
||
"condition_op": "Operador",
|
||
"condition_value": "Umbral",
|
||
"severity": "Severidad",
|
||
"scope_device": "Dispositivo objetivo",
|
||
"scope_all": "Todos los dispositivos",
|
||
"cooldown": "Tiempo de enfriamiento (segundos)",
|
||
"notify_emails": "Correos de notificación",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"create_rule": "Crear regla",
|
||
"edit_rule": "Editar regla",
|
||
"delete_rule": "Eliminar regla",
|
||
"acknowledge": "Confirmar",
|
||
"acknowledged": "Confirmado",
|
||
"unacknowledged": "Sin confirmar",
|
||
"triggered_at": "Activado el",
|
||
"severity_info": "Información",
|
||
"severity_warning": "Advertencia",
|
||
"severity_critical": "Crítico",
|
||
"op_gt": "Mayor que",
|
||
"op_gte": "Mayor o igual",
|
||
"op_lt": "Menor que",
|
||
"op_lte": "Menor o igual",
|
||
"op_eq": "Igual a",
|
||
"op_neq": "Diferente de",
|
||
"type_cpu_usage": "Uso de CPU (%)",
|
||
"type_memory_usage": "Uso de memoria (%)",
|
||
"type_disk_usage": "Uso de disco (%)",
|
||
"type_offline_duration": "Duración sin conexión (s)",
|
||
"type_idle_duration": "Duración inactivo (s)",
|
||
"type_custom": "Personalizado",
|
||
"command_type": "Tipo de comando",
|
||
"command_payload": "Comando / Script",
|
||
"command_result": "Resultado",
|
||
"command_status": "Estado",
|
||
"send_command": "Enviar comando",
|
||
"status_pending": "Pendiente",
|
||
"status_running": "En ejecución",
|
||
"status_completed": "Completado",
|
||
"status_failed": "Fallido",
|
||
"smtp_host": "Host SMTP",
|
||
"smtp_port": "Puerto",
|
||
"smtp_secure": "Usar TLS",
|
||
"smtp_user": "Nombre de usuario",
|
||
"smtp_pass": "Contraseña",
|
||
"smtp_from": "Dirección de remitente",
|
||
"smtp_test": "Probar conexión",
|
||
"smtp_save": "Guardar configuración",
|
||
"smtp_test_success": "Conexión exitosa",
|
||
"smtp_test_failed": "Error de conexión",
|
||
"no_rules": "No hay reglas de asignación.",
|
||
"no_alerts": "No se han activado alertas",
|
||
"no_commands": "No se han enviado comandos",
|
||
"id_payload_required": "Device ID and payload are required",
|
||
"no_commands_sent": "Aún no se han enviado comandos"
|
||
},
|
||
"file_transfer": {
|
||
"title": "Panel",
|
||
"transfers": "Transferencias",
|
||
"new_transfer": "Nueva transferencia",
|
||
"upload": "Subir",
|
||
"download": "Descargar clave",
|
||
"direction": "Direction",
|
||
"filename": "Nombre del archivo",
|
||
"file_size": "Tamaño del archivo",
|
||
"mime_type": "Tipo MIME",
|
||
"progress": "Progreso",
|
||
"status": "Estado",
|
||
"device": "Dispositivo",
|
||
"initiated_by": "Iniciado por",
|
||
"created_at": "Creado",
|
||
"cancel": "Cancelar",
|
||
"cancel_confirm": "¿Está seguro de que desea cancelar esta transferencia?",
|
||
"download_file": "Descargar archivo",
|
||
"browse_files": "Explorar archivos",
|
||
"select_file": "Seleccionar archivo",
|
||
"select_device": "Seleccionar dispositivo",
|
||
"no_transfers": "No hay transferencias de archivos",
|
||
"status_pending": "Pendiente",
|
||
"status_active": "Activa",
|
||
"status_completed": "Completado",
|
||
"status_failed": "Fallido",
|
||
"status_cancelled": "Cancelada",
|
||
"bytes_transferred": "Bytes transferidos",
|
||
"chunks": "Bloques",
|
||
"transfer_started": "Transferencia iniciada",
|
||
"transfer_completed": "Transferencia completada",
|
||
"transfer_failed": "Transferencia fallida",
|
||
"transfer_cancelled": "Transferencia cancelada",
|
||
"max_file_size": "Tamaño máximo de archivo: 4 GB",
|
||
"error_too_large": "El archivo es demasiado grande",
|
||
"error_no_device": "No hay dispositivo seleccionado",
|
||
"error_no_file": "No hay archivo seleccionado"
|
||
},
|
||
"network": {
|
||
"title": "Panel",
|
||
"targets": "Objetivos de monitoreo",
|
||
"add_target": "Añadir objetivo",
|
||
"edit_target": "Editar objetivo",
|
||
"delete_target": "Eliminar objetivo",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar este objetivo?",
|
||
"target_name": "Nombre",
|
||
"host": "Host",
|
||
"port": "Puerto",
|
||
"url": "URL",
|
||
"check_type": "Tipo de verificación",
|
||
"timeout": "Tiempo de espera (ms)",
|
||
"interval": "Intervalo (ms)",
|
||
"enabled": "Activado",
|
||
"status": "Estado",
|
||
"last_check": "Última verificación",
|
||
"last_rtt": "Último RTT",
|
||
"rtt_ms": "RTT (ms)",
|
||
"status_up": "Accesible",
|
||
"status_down": "No accesible",
|
||
"status_unknown": "Desconocido",
|
||
"check_now": "Verificar ahora",
|
||
"history": "History",
|
||
"stats": "Estadísticas",
|
||
"total_targets": "Total de objetivos",
|
||
"targets_up": "Objetivos accesibles",
|
||
"targets_down": "Objetivos no accesibles",
|
||
"type_ping": "Ping (ICMP)",
|
||
"type_tcp": "Puerto TCP",
|
||
"type_http": "HTTP",
|
||
"type_https": "HTTPS",
|
||
"tools": "Herramientas de red",
|
||
"ping_tool": "Prueba de ping",
|
||
"tcp_tool": "Verificación de puerto TCP",
|
||
"http_tool": "Verificación HTTP",
|
||
"dns_tool": "Resolución DNS",
|
||
"monitor_start": "Iniciar monitoreo",
|
||
"monitor_stop": "Detener monitoreo",
|
||
"monitor_running": "Monitoreo en curso",
|
||
"monitor_stopped": "Monitoreo detenido",
|
||
"no_targets": "No hay objetivos de monitoreo configurados",
|
||
"no_history": "No hay historial de verificaciones disponible",
|
||
"error_code": "Error",
|
||
"status_code": "Código de estado HTTP",
|
||
"search_targets": "Search targets...",
|
||
"name": "Name",
|
||
"tab_targets": "Targets",
|
||
"tab_tools": "Tools",
|
||
"avg_latency": "Avg Latency",
|
||
"type": "Type",
|
||
"latency": "Latency",
|
||
"check_history": "Check History",
|
||
"name_host_required": "Name and host are required",
|
||
"uptime": "Uptime",
|
||
"response_time": "Tiempo de respuesta",
|
||
"avg_response": "Average Response",
|
||
"charts": "Gráficos",
|
||
"realtime": "Tiempo real",
|
||
"response_time_ms": "Response Time (ms)",
|
||
"uptime_percent": "Tiempo de actividad %",
|
||
"last_24h": "Últimas 24 horas",
|
||
"last_7d": "Últimos 7 días",
|
||
"last_30d": "Últimos 30 días"
|
||
},
|
||
"dataguard": {
|
||
"title": "Panel",
|
||
"policies": "Políticas",
|
||
"add_policy": "Añadir política",
|
||
"edit_policy": "Editar política",
|
||
"delete_policy": "Eliminar política",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar esta política?",
|
||
"policy_name": "Nombre",
|
||
"policy_description": "Descripción",
|
||
"policy_desc": "Policy Description",
|
||
"status": "Estado",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"rules": "Reglas de alerta",
|
||
"add_rule": "Añadir regla",
|
||
"rule_type": "Tipo de regla",
|
||
"rule_type_usb": "Dispositivo USB",
|
||
"rule_type_file": "Operación de archivo",
|
||
"action": "Acción",
|
||
"action_allow": "Permitir",
|
||
"action_block": "Bloquear",
|
||
"action_log": "Solo registrar",
|
||
"filter": "Filtro",
|
||
"vid": "ID de fabricante (VID)",
|
||
"pid": "ID de producto (PID)",
|
||
"serial": "Número de serie",
|
||
"device_class": "Clase de dispositivo",
|
||
"drive_type": "Tipo de unidad",
|
||
"file_extensions": "Extensiones de archivo",
|
||
"events": "Eventos DLP",
|
||
"event_source": "Fuente",
|
||
"event_source_usb": "USB",
|
||
"event_source_file": "Archivo",
|
||
"event_type": "Tipo de evento",
|
||
"event_details": "Detalles",
|
||
"no_policies": "No hay políticas DLP configuradas",
|
||
"no_events": "No se registraron eventos DLP",
|
||
"stats": "Estadísticas",
|
||
"total_events": "Total de eventos",
|
||
"blocked_events": "Bloqueados",
|
||
"logged_events": "Registrados",
|
||
"usb_events": "Eventos USB",
|
||
"file_events": "Eventos de archivo",
|
||
"device_id": "ID del dispositivo",
|
||
"policy_matched": "Política coincidente",
|
||
"timestamp": "Marca de tiempo",
|
||
"drive_removable": "Extraíble",
|
||
"drive_fixed": "Fijo",
|
||
"drive_network": "Red",
|
||
"drive_cdrom": "CD-ROM",
|
||
"drive_unknown": "Desconocido",
|
||
"total_policies": "Total Policies",
|
||
"active_policies": "Active Policies",
|
||
"violations": "Violations",
|
||
"blocked": "Blocked",
|
||
"tab_policies": "Policies",
|
||
"tab_events": "Events",
|
||
"search_policies": "Search policies...",
|
||
"create_policy": "Create Policy",
|
||
"policy_type": "Policy Type",
|
||
"scope": "Scope",
|
||
"events_count": "Events",
|
||
"search_events": "Search events...",
|
||
"event_time": "Event Time",
|
||
"device": "Dispositivo",
|
||
"policy": "Policy",
|
||
"detail": "Detalle del ticket",
|
||
"scope_help": "Comma-separated device IDs, or leave empty for all",
|
||
"scope_all": "Todos los dispositivos",
|
||
"active": "Activo",
|
||
"type_file_type": "File Type",
|
||
"type_usb": "USB",
|
||
"type_clipboard": "Clipboard",
|
||
"type_screen_share": "Screen Share",
|
||
"type_file_transfer": "File Transfer"
|
||
},
|
||
"reports": {
|
||
"title": "Panel",
|
||
"generate": "Generar configuración",
|
||
"generate_csv": "Exportar CSV",
|
||
"report_type": "Tipo de informe",
|
||
"type_devices": "Resumen de dispositivos",
|
||
"type_activity": "Resumen de actividad",
|
||
"type_security": "Informe de seguridad",
|
||
"type_tickets": "Informe de tickets",
|
||
"type_network": "Informe de red",
|
||
"type_inventory": "Informe de inventario",
|
||
"type_alerts": "Informe de alertas",
|
||
"saved": "Guardado",
|
||
"save_report": "Guardar informe",
|
||
"delete_report": "Eliminar informe",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar este informe guardado?",
|
||
"no_saved": "No hay informes guardados",
|
||
"report_title": "Título",
|
||
"created_by": "Creado por",
|
||
"created_at": "Creado",
|
||
"filters": "Filtros",
|
||
"date_from": "Desde",
|
||
"date_to": "Hasta",
|
||
"device_filter": "ID del dispositivo",
|
||
"generated_at": "Generado el",
|
||
"section": "Sección de datos",
|
||
"total_devices": "Total de dispositivos",
|
||
"online": "En línea",
|
||
"offline": "Sin conexión",
|
||
"banned": "Bloqueados",
|
||
"platform_distribution": "Distribución por plataforma",
|
||
"top_applications": "Aplicaciones principales",
|
||
"total_active": "Total activo",
|
||
"total_idle": "Total inactivo",
|
||
"dlp_stats": "Estadísticas DLP",
|
||
"banned_devices": "Dispositivos bloqueados",
|
||
"audit_logs": "Registros de auditoría",
|
||
"ticket_stats": "Estadísticas de tickets",
|
||
"category_distribution": "Distribución por categoría",
|
||
"priority_distribution": "Distribución por prioridad",
|
||
"targets_status": "Estado de los objetivos",
|
||
"os_distribution": "Distribución de SO",
|
||
"avg_ram": "RAM promedio",
|
||
"alert_rules": "Reglas de alerta",
|
||
"recent_alerts": "Alertas recientes",
|
||
"tab_generate": "Generar informe",
|
||
"tab_saved": "Informes guardados",
|
||
"type_devices_desc": "Vista general de todos los dispositivos, plataformas y estados",
|
||
"type_activity_desc": "Resumen de uso de aplicaciones y tiempo inactivo",
|
||
"type_security_desc": "Acciones de bloqueo, eventos DLP y registros de auditoría",
|
||
"type_tickets_desc": "Estadísticas de tickets y rendimiento SLA",
|
||
"type_network_desc": "Objetivos de monitoreo de red y datos de disponibilidad",
|
||
"type_inventory_desc": "Resumen de inventario de hardware y software",
|
||
"type_alerts_desc": "Reglas de alerta e historial de alertas activadas",
|
||
"report_name": "Nombre del informe",
|
||
"format": "Formato",
|
||
"save": "Guardar",
|
||
"preview": "Vista previa",
|
||
"download": "Descargar clave",
|
||
"delete_saved": "Eliminar informe",
|
||
"raw_json": "Raw JSON"
|
||
},
|
||
"tenants": {
|
||
"title": "Panel",
|
||
"list": "Inquilinos",
|
||
"add_tenant": "Añadir inquilino",
|
||
"edit_tenant": "Editar inquilino",
|
||
"delete_tenant": "Eliminar inquilino",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar este tenant? Se eliminarán todas las asignaciones de dispositivos y usuarios.",
|
||
"name": "Name",
|
||
"slug": "Slug",
|
||
"contact_name": "Nombre de contacto",
|
||
"contact_email": "Correo de contacto",
|
||
"max_devices": "Máx. dispositivos",
|
||
"max_devices_hint": "0 = ilimitado",
|
||
"notes": "Notas",
|
||
"active": "Activo",
|
||
"inactive": "Inactivo",
|
||
"devices": "Dispositivos",
|
||
"users": "Usuarios",
|
||
"assign_device": "Asignar dispositivo",
|
||
"assign_devices": "Asignar dispositivos",
|
||
"remove_device": "Quitar dispositivo",
|
||
"assign_user": "Asignar usuario",
|
||
"remove_user": "Quitar usuario",
|
||
"no_tenants": "No hay inquilinos configurados",
|
||
"no_devices": "No se encontraron dispositivos con datos de inventario",
|
||
"no_users": "No hay usuarios asignados a este inquilino",
|
||
"stats": "Estadísticas",
|
||
"total_devices": "Total de dispositivos",
|
||
"online_devices": "Dispositivos en línea",
|
||
"total_users": "Total de usuarios",
|
||
"created_at": "Creado",
|
||
"updated_at": "Actualizado",
|
||
"slug_exists": "El slug del inquilino ya existe",
|
||
"total_tenants": "Total de inquilinos",
|
||
"active_tenants": "Inquilinos activos",
|
||
"search": "Search devices...",
|
||
"create_tenant": "Crear inquilino",
|
||
"detail": "Detalle del ticket",
|
||
"contact": "Contacto",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"max": "máx",
|
||
"info": "Información",
|
||
"status": "Estado"
|
||
},
|
||
"registrations": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"search_placeholder": "Buscar dispositivos...",
|
||
"no_registrations": "No hay solicitudes de registro",
|
||
"col_device_id": "ID del dispositivo",
|
||
"col_hostname": "Nombre de host",
|
||
"col_platform": "Plataforma",
|
||
"col_ip": "Dirección IP",
|
||
"col_version": "Versión",
|
||
"col_status": "Estado",
|
||
"col_requested": "Solicitado",
|
||
"col_actions": "Acciones",
|
||
"status_pending": "Pendiente",
|
||
"status_approved": "Aprobado",
|
||
"status_rejected": "Rechazado",
|
||
"approve_btn": "Aprobar",
|
||
"approve_confirm": "¿Está seguro de que desea aprobar este dispositivo? Recibirá las credenciales del servidor y podrá conectarse automáticamente.",
|
||
"approved_success": "Registro de dispositivo aprobado correctamente",
|
||
"reject_btn": "Rechazar",
|
||
"reject_title": "Rechazar registro",
|
||
"reject_confirm": "¿Está seguro de que desea rechazar esta solicitud de registro?",
|
||
"reject_reason": "Motivo (opcional)",
|
||
"reject_reason_placeholder": "Introduzca el motivo del rechazo...",
|
||
"rejected_success": "Registro de dispositivo rechazado",
|
||
"delete_confirm": "¿Está seguro de que desea eliminar este registro de inscripción?",
|
||
"deleted_success": "Registro eliminado",
|
||
"enrollment_title": "Device Enrollment",
|
||
"enrollment_subtitle": "Pending enrollment requests from BetterDesk desktop clients",
|
||
"enrollment_empty": "No pending enrollment requests",
|
||
"enrollment_approve": "Approve",
|
||
"enrollment_reject": "Reject",
|
||
"enrollment_display_name": "Display Name",
|
||
"enrollment_display_name_placeholder": "Enter a name for this device...",
|
||
"enrollment_sync_mode": "Sync Mode",
|
||
"enrollment_sync_silent": "Silent — minimal telemetry",
|
||
"enrollment_sync_standard": "Standard — balanced sync",
|
||
"enrollment_sync_turbo": "Turbo — aggressive sync",
|
||
"enrollment_approved_success": "Device enrollment approved",
|
||
"enrollment_rejected_success": "Device enrollment rejected"
|
||
},
|
||
"backup": {
|
||
"title": "Panel",
|
||
"desc": "Descargue una copia de seguridad completa de la configuración de su consola, usuarios, grupos y ajustes. Los datos de peers del servidor Go se incluyen cuando el backend BetterDesk está activo.",
|
||
"restore_title": "Restaurar",
|
||
"restore_desc": "Suba un archivo de copia de seguridad descargado previamente para restaurar la configuración de la consola. Seleccione qué secciones restaurar a continuación.",
|
||
"stat_users": "Usuarios",
|
||
"stat_settings": "Configuración",
|
||
"stat_folders": "Carpetas",
|
||
"stat_groups": "Grupos",
|
||
"stat_strategies": "Estrategias",
|
||
"stat_backend": "Backend",
|
||
"download": "Descargar clave",
|
||
"creating": "Creando copia de seguridad...",
|
||
"download_success": "Archivo de clave descargado",
|
||
"upload": "Subir",
|
||
"restore_confirm": "¿Está seguro de que desea restaurar desde esta copia de seguridad? Las secciones seleccionadas serán sobrescritas.",
|
||
"restore_success": "Copia de seguridad restaurada correctamente. Algunos cambios pueden requerir recargar la página.",
|
||
"restored": "Restaurado",
|
||
"skipped": "Omitido",
|
||
"backup_date": "Fecha de la copia",
|
||
"opt_settings": "Configuración de la consola",
|
||
"opt_branding": "Marca / Tema",
|
||
"opt_folders": "Carpetas de dispositivos",
|
||
"opt_groups": "Grupos de usuarios y dispositivos",
|
||
"opt_addressbooks": "Libretas de direcciones",
|
||
"opt_users": "Cuentas de usuario",
|
||
"opt_users_warning": "Destructivo: reemplaza TODAS las cuentas de usuario con los datos de la copia. Puede que se cierre su sesión.",
|
||
"no_file": "No se seleccionó archivo de copia de seguridad",
|
||
"invalid_json": "Formato JSON inválido",
|
||
"invalid_format": "Archivo de copia de seguridad no válido: no es una copia de BetterDesk"
|
||
},
|
||
"cdap": {
|
||
"device_detail": "Detalle del dispositivo",
|
||
"loading": "Cargando...",
|
||
"loading_widgets": "Loading device widgets...",
|
||
"load_error": "Failed to load device data",
|
||
"connected": "Conectado",
|
||
"disconnected": "Desconectado",
|
||
"device_offline_msg": "Device is currently offline. Widget values may be stale.",
|
||
"no_widgets": "Este dispositivo no reporta widgets.",
|
||
"no_widgets_desc": "This device has not registered a CDAP manifest with widget definitions.",
|
||
"command_log": "Registro de comandos",
|
||
"clear_log": "Clear log",
|
||
"confirm_command": "¿Ejecutar este comando?",
|
||
"select_option": "Select",
|
||
"cdap_status": "CDAP Status",
|
||
"cdap_enabled": "CDAP Enabled",
|
||
"cdap_disabled": "CDAP Disabled",
|
||
"cdap_devices": "CDAP Devices",
|
||
"cdap_connections": "Active Connections",
|
||
"send_command": "Enviar comando",
|
||
"command_sent": "Comando enviado",
|
||
"command_failed": "Error al enviar comando",
|
||
"devices_title": "CDAP Devices",
|
||
"devices_subtitle": "Connected devices via Custom Device Application Protocol",
|
||
"stat_connected": "Connected",
|
||
"stat_port": "Port",
|
||
"search_devices": "Search devices...",
|
||
"no_devices": "No se encontraron dispositivos con datos de inventario",
|
||
"no_devices_desc": "No CDAP devices are currently connected. Devices will appear here once they connect to the gateway.",
|
||
"gateway_disabled": "Gateway CDAP deshabilitado",
|
||
"gateway_disabled_desc": "Enable the CDAP gateway by setting CDAP_ENABLED=true in the server configuration.",
|
||
"gateway_active": "Active",
|
||
"toggle_enable": "Enable CDAP",
|
||
"toggle_disable": "Disable CDAP",
|
||
"enabled_restart": "CDAP enabled. Server restart required to apply changes.",
|
||
"disabled_restart": "CDAP disabled. Server restart required to apply changes.",
|
||
"widgets": "widgets",
|
||
"type_all": "All",
|
||
"type_iot": "IoT",
|
||
"type_scada": "SCADA",
|
||
"type_os_agent": "Agente de SO",
|
||
"type_network": "Informe de red",
|
||
"type_camera": "Camera",
|
||
"type_custom": "Personalizado",
|
||
"active_alerts": "Alertas activas",
|
||
"alert_fired": "Alert fired",
|
||
"alert_cleared": "Alert cleared",
|
||
"no_alerts": "No se han activado alertas",
|
||
"connect_terminal": "Connect Terminal",
|
||
"table_search": "Search...",
|
||
"just_now": "ahora mismo",
|
||
"terminal_connecting": "Connecting to device...",
|
||
"terminal_disconnected": "Disconnected",
|
||
"terminal_error": "Terminal connection failed",
|
||
"linked_devices": "Linked Devices",
|
||
"link_device": "Link Device",
|
||
"unlink_device": "Unlink",
|
||
"no_linked_devices": "No linked devices",
|
||
"unlink_confirm": "Are you sure you want to unlink this device?",
|
||
"link_prompt": "Enter the Peer ID to link to this device:",
|
||
"connect_desktop": "Conectar vía cliente de escritorio",
|
||
"connect_video": "Connect Stream",
|
||
"connect_files": "Browse Files",
|
||
"connect_audio": "Conectar audio",
|
||
"upload_file": "Upload",
|
||
"desktop_connecting": "Connecting...",
|
||
"video_connecting": "Connecting...",
|
||
"files_connecting": "Connecting...",
|
||
"audio_connecting": "Conectando audio...",
|
||
"audio_streaming": "Audio transmitiendo",
|
||
"clipboard_in": "Portapapeles del dispositivo → navegador",
|
||
"clipboard_out": "Portapapeles del navegador → dispositivo",
|
||
"monitor_select": "Seleccionar monitor",
|
||
"keyframe_request": "Solicitar fotograma clave",
|
||
"quality_auto": "Calidad automática"
|
||
},
|
||
"desktop": {
|
||
"switch_mode": "Desktop Mode",
|
||
"console_mode": "Console Mode",
|
||
"loading": "Cargando...",
|
||
"minimize": "Minimize",
|
||
"maximize": "Maximize",
|
||
"restore": "Restore",
|
||
"close": "Cerrar",
|
||
"widgets_mode": "Widgets",
|
||
"windows_mode": "Windows",
|
||
"wallpaper": "Fondo de pantalla",
|
||
"add_widget": "Add Widget",
|
||
"remove_widget": "Remove Widget",
|
||
"pop_out_widget": "Pop Out",
|
||
"pop_in_widget": "Pop In",
|
||
"configure": "Configure",
|
||
"search_widgets": "Search widgets...",
|
||
"cat_monitoring": "Monitoring",
|
||
"cat_devices": "Devices",
|
||
"cat_tools": "Tools",
|
||
"cat_general": "General",
|
||
"notes_placeholder": "Añada notas sobre este dispositivo...",
|
||
"search_placeholder": "Buscar dispositivos...",
|
||
"search_pages": "Pages",
|
||
"search_devices": "Search devices...",
|
||
"search_no_results": "No results",
|
||
"exit_desktop": "Salir del escritorio",
|
||
"refresh": "Actualizar",
|
||
"fullscreen": "Pantalla completa",
|
||
"help": "Help",
|
||
"widget_clock": "Clock",
|
||
"widget_device_status": "Device Status",
|
||
"widget_server_health": "Server Info",
|
||
"widget_system_stats": "Device Gauges",
|
||
"widget_device_list": "Device List",
|
||
"widget_quick_actions": "Quick Actions",
|
||
"widget_recent_activity": "Recent Activity",
|
||
"widget_notes": "Notes",
|
||
"widget_network_monitor": "Network Monitor",
|
||
"widget_tickets_summary": "Tickets",
|
||
"widget_iframe": "Web Embed",
|
||
"widget_cdap_devices": "CDAP Devices",
|
||
"widget_uptime": "Uptime",
|
||
"widget_port_status": "Port Status",
|
||
"widget_device_grid": "Device Grid",
|
||
"widget_multi_gauge": "Server Gauges",
|
||
"widget_weekly_chart": "Weekly Activity",
|
||
"widget_quick_controls": "Quick Controls",
|
||
"widget_bandwidth": "Bandwidth",
|
||
"widget_connection_stats": "Connection Stats",
|
||
"widget_weather": "Weather",
|
||
"widget_world_clock": "World Clock",
|
||
"widget_bookmarks": "Bookmarks",
|
||
"widget_user_sessions": "User Sessions",
|
||
"widget_alert_feed": "Alert Feed",
|
||
"label_online": "Online",
|
||
"label_offline": "Offline",
|
||
"label_total": "Total",
|
||
"label_blocked": "Blocked",
|
||
"label_banned": "Banned",
|
||
"label_active": "Active",
|
||
"label_service": "Service",
|
||
"label_port": "Port",
|
||
"label_uptime_prefix": "Uptime:",
|
||
"label_uptime": "Uptime",
|
||
"label_no_devices": "No devices",
|
||
"label_no_activity": "No activity",
|
||
"label_no_targets": "No targets",
|
||
"label_unavailable": "Unavailable",
|
||
"label_open": "Open",
|
||
"label_in_progress": "In Progress",
|
||
"label_resolved": "Resolved",
|
||
"label_set_url": "Set URL in config",
|
||
"label_server_uptime": "Server Uptime",
|
||
"label_merged_info": "Merged into Server Info widget",
|
||
"label_with_notes": "With Notes",
|
||
"label_metric": "Metric",
|
||
"label_count": "Count",
|
||
"label_total_devices": "Total Devices",
|
||
"label_throughput": "Throughput",
|
||
"label_active_relays": "Active Relays",
|
||
"label_total_relayed": "Total Relayed",
|
||
"label_total_bytes": "Total Bytes",
|
||
"label_filter_devices": "Filter devices...",
|
||
"label_all": "All",
|
||
"label_ban": "Ban",
|
||
"label_unban": "Unban",
|
||
"label_connect": "Connect",
|
||
"label_no_cdap_devices": "No CDAP devices",
|
||
"action_add_widget": "Add Widget",
|
||
"label_merged_server_info": "Merged into Server Info widget",
|
||
"wp_images": "Imágenes",
|
||
"wp_colors": "Colores sólidos",
|
||
"wp_custom_color": "Color personalizado",
|
||
"wp_fit_style": "Estilo",
|
||
"wp_fill": "Rellenar",
|
||
"wp_fit": "Ajustar",
|
||
"wp_stretch": "Estirar",
|
||
"wp_center": "Centrar",
|
||
"wp_unavailable": "Wallpaper images are not installed on this server.",
|
||
"wp_download_hint": "Place PNG images in the public/wallpapers/ directory to enable wallpaper selection.",
|
||
"widget_calendar": "Calendar",
|
||
"widget_process_monitor": "Process Monitor",
|
||
"widget_disk_usage": "Disk Usage",
|
||
"widget_log_viewer": "Log Viewer",
|
||
"widget_speed_test": "Speed Test",
|
||
"widget_database_stats": "Database Stats",
|
||
"widget_docker_containers": "Docker Containers",
|
||
"widget_shell_command": "Shell Command",
|
||
"widget_device_map": "Device Map",
|
||
"widget_remote_connect": "Remote Connect",
|
||
"label_no_online": "No online devices",
|
||
"label_no_events": "No events today",
|
||
"label_event_title": "Event title:",
|
||
"label_no_data": "No data available",
|
||
"label_download_speed": "Download Speed",
|
||
"label_latency": "Latency",
|
||
"label_server": "Server",
|
||
"label_run_test": "Run Test",
|
||
"label_testing": "Testing...",
|
||
"label_table": "Table",
|
||
"label_rows": "Rows",
|
||
"label_last_backup": "Last Backup",
|
||
"label_no_containers": "No containers",
|
||
"label_docker_unavailable": "Docker not available",
|
||
"label_no_command": "No command configured",
|
||
"label_no_output": "No output yet",
|
||
"label_run": "Run",
|
||
"label_presets": "Presets",
|
||
"label_save_preset": "Save Preset",
|
||
"label_load_preset": "Load Preset",
|
||
"label_preset_name": "Preset name:",
|
||
"label_preset_monitoring": "Monitoring",
|
||
"label_preset_helpdesk": "Helpdesk",
|
||
"label_preset_minimal": "Minimal",
|
||
"label_preset_developer": "Developer",
|
||
"label_snap_layout": "Snap Layout",
|
||
"label_auto_arrange": "Auto Arrange",
|
||
"label_zone_layout": "Zone Layout",
|
||
"label_2col_equal": "2 Columns (Equal)",
|
||
"label_2col_wide": "2 Columns (60/40)",
|
||
"label_3col": "3 Columns",
|
||
"label_2x2_grid": "2×2 Grid",
|
||
"label_1_2": "1 + 2",
|
||
"label_1_3": "1 + 3",
|
||
"widget_group": "Widget Group",
|
||
"ungroup_widgets": "Ungroup Widgets",
|
||
"group_widgets": "Group Selected Widgets",
|
||
"snap_layouts": "Snap Layouts",
|
||
"snap_left": "Snap Left",
|
||
"snap_right": "Snap Right",
|
||
"snap_top_left": "Snap Top-Left",
|
||
"snap_top_right": "Snap Top-Right",
|
||
"snap_bottom_left": "Snap Bottom-Left",
|
||
"snap_bottom_right": "Snap Bottom-Right",
|
||
"aero_shake": "Shake to Minimize Others",
|
||
"zone_resize": "Drag border to resize zones",
|
||
"zone_borders": "Draggable Zone Borders",
|
||
"app_drawer": "Applications",
|
||
"search_apps": "Search apps...",
|
||
"edit_shortcuts": "Editar accesos directos",
|
||
"widgets": "widgets",
|
||
"theme": "Theme"
|
||
},
|
||
"desktop_login": {
|
||
"click_to_sign_in": "Click anywhere or press a key to sign in",
|
||
"username_placeholder": "Introduzca el nombre de usuario",
|
||
"password_placeholder": "Introduzca la contraseña",
|
||
"sign_in": "Sign in",
|
||
"verify": "Verify",
|
||
"totp_title": "Autenticación de dos factores",
|
||
"totp_subtitle": "Introduzca el código de 6 dígitos de su aplicación de autenticación",
|
||
"back_to_login": "Back to login",
|
||
"fill_all_fields": "Por favor, rellene todos los campos",
|
||
"invalid_credentials": "Nombre de usuario o contraseña inválidos.",
|
||
"invalid_code": "Invalid verification code",
|
||
"enter_6_digits": "Enter all 6 digits",
|
||
"network_error": "Network error — check your connection",
|
||
"session_expired": "Session expired. Please sign in again."
|
||
},
|
||
"tokens": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"enrollment_mode": "Enrollment Mode",
|
||
"mode_open": "Open",
|
||
"mode_open_desc": "Any device can register without a token",
|
||
"mode_managed": "Managed",
|
||
"mode_managed_desc": "Devices need a valid token to register",
|
||
"mode_locked": "Locked",
|
||
"mode_locked_desc": "No new device registrations allowed",
|
||
"total": "Total",
|
||
"active": "Activo",
|
||
"used": "Usado",
|
||
"revoked": "Token revocado",
|
||
"search_placeholder": "Buscar dispositivos...",
|
||
"status_pending": "Pendiente",
|
||
"status_active": "Activa",
|
||
"status_used": "Used",
|
||
"status_revoked": "Revocado",
|
||
"status_expired": "Expirado",
|
||
"bulk_generate": "Bulk Generate",
|
||
"create": "Crear",
|
||
"edit": "Editar",
|
||
"token": "Token",
|
||
"name": "Name",
|
||
"status": "Estado",
|
||
"uses": "Uses",
|
||
"bound_peer": "Bound Peer",
|
||
"expires": "Fecha de expiración",
|
||
"created": "Creado",
|
||
"actions": "Acciones",
|
||
"name_placeholder": "Introduzca el nombre de la carpeta",
|
||
"max_uses": "Max Uses",
|
||
"max_uses_hint": "0 = unlimited",
|
||
"expires_in": "Expires In",
|
||
"no_expiration": "No expiration",
|
||
"expires_1h": "1 hour",
|
||
"expires_24h": "24 hours",
|
||
"expires_7d": "7 days",
|
||
"expires_30d": "30 días",
|
||
"note": "Nota",
|
||
"note_placeholder": "Notes about this device",
|
||
"count": "Count",
|
||
"count_range": "Number of tokens to generate (1-100)",
|
||
"name_prefix": "Name Prefix",
|
||
"generate": "Generar configuración",
|
||
"token_created": "Token creado correctamente",
|
||
"tokens_generated": "Tokens Generated",
|
||
"copy_warning": "Copy the token now. It will not be shown again.",
|
||
"copy_token": "Copy Token",
|
||
"copied": "Copied!",
|
||
"revoke": "Revocar",
|
||
"revoke_confirm": "¿Está seguro de que desea revocar este token? Esto invalidará inmediatamente todas las peticiones de API que lo utilicen.",
|
||
"revoked_success": "Token revoked successfully",
|
||
"no_tokens": "No hay tokens de API creados",
|
||
"expired": "Expired",
|
||
"never": "Nunca",
|
||
"save": "Guardar",
|
||
"cancel": "Cancelar",
|
||
"unlimited": "Unlimited"
|
||
},
|
||
"tutorial": {
|
||
"next": "Siguiente",
|
||
"prev": "Anterior",
|
||
"skip": "Saltar tutorial",
|
||
"finish": "Finalizar",
|
||
"close": "Cerrar",
|
||
"step_of": "{current} of {total}",
|
||
"console_sidebar_title": "Navigation Sidebar",
|
||
"console_sidebar_text": "Access all modules from here. Click any icon to navigate to that section. The sidebar adapts to your screen size.",
|
||
"console_expand_title": "Expand Sidebar",
|
||
"console_expand_text": "Click here to expand the sidebar and see full labels for all navigation items. Click again to collapse.",
|
||
"console_search_title": "Quick Search",
|
||
"console_search_text": "Search for devices, settings, or actions quickly. Press Ctrl+K for keyboard shortcut.",
|
||
"console_dashboard_title": "Dashboard",
|
||
"console_dashboard_text": "Your central hub showing server status, online devices, and quick actions. Keep an eye on important metrics at a glance.",
|
||
"console_devices_title": "Device Management",
|
||
"console_devices_text": "View, search, and manage all connected devices. Filter by status, assign tags, and configure individual device settings.",
|
||
"console_settings_title": "Settings",
|
||
"console_settings_text": "Configure server behavior, security options, branding, and user management. Customize BetterDesk to fit your needs.",
|
||
"console_desktop_title": "Desktop Mode",
|
||
"console_desktop_text": "Switch to desktop mode for a windowed workspace with widgets. Perfect for multi-tasking and monitoring dashboards.",
|
||
"console_complete_title": "You're Ready!",
|
||
"console_complete_text": "Explore the sidebar categories to discover all features. Click the Help icon anytime to restart this guide.",
|
||
"desktop_topbar_title": "Top Bar",
|
||
"desktop_topbar_text": "The top bar shows the clock, quick controls, and access to the app drawer. Click the grid icon to browse all apps.",
|
||
"desktop_drawer_title": "App Drawer",
|
||
"desktop_drawer_text": "Open the app drawer to search and launch any console function as a floating window. Apps are organized by category.",
|
||
"desktop_widgets_title": "Widget Dashboard",
|
||
"desktop_widgets_text": "Your customizable workspace. Widgets display live information and provide quick access to features. Drag to rearrange.",
|
||
"desktop_add_widget_title": "Add Widgets",
|
||
"desktop_add_widget_text": "Click here to browse available widgets. Choose from monitoring displays, device lists, notes, and more.",
|
||
"desktop_taskbar_title": "Taskbar",
|
||
"desktop_taskbar_text": "Open apps appear here. Click to focus or minimize windows. The clock shows current time and wallpaper button changes the background.",
|
||
"desktop_snap_title": "Snap Layouts",
|
||
"desktop_snap_text": "Drag windows to screen edges to snap them into position, or hover the maximize button for layout presets. Try Aero Shake!",
|
||
"desktop_windows_title": "App Windows",
|
||
"desktop_windows_text": "Apps open in draggable, resizable windows. Minimize, maximize, or close from the title bar. Windows layer above widgets.",
|
||
"desktop_search_title": "Quick Search",
|
||
"desktop_search_text": "Search across devices, pages, and settings. Press Ctrl+K anywhere to open search instantly.",
|
||
"desktop_complete_title": "Desktop Mode Ready!",
|
||
"desktop_complete_text": "Try opening apps from the drawer and arranging windows side-by-side. Use widget presets for quick dashboard layouts.",
|
||
"devices_folders_title": "Device Folders",
|
||
"devices_folders_text": "Organize devices into folders. Click a folder to filter the list. Right-click to rename or delete.",
|
||
"devices_search_title": "Search & Filter",
|
||
"devices_search_text": "Search by ID, hostname, or platform. Use the status pills to show only online, offline, or all devices.",
|
||
"devices_table_title": "Device List",
|
||
"devices_table_text": "Click any device row for details. Use the kebab menu on the right for quick actions like connect, edit tags, or delete.",
|
||
"devices_complete_title": "Device Management Ready!",
|
||
"devices_complete_text": "Drag devices between folders to organize them. Double-click a device to open its detail panel.",
|
||
"settings_tabs_title": "Settings Categories",
|
||
"settings_tabs_text": "Navigate between General, Security, Appearance, and other configuration sections.",
|
||
"settings_content_title": "Configuration",
|
||
"settings_content_text": "Each section contains specific server and console settings. Changes are saved when you click Save.",
|
||
"settings_complete_title": "Settings Overview",
|
||
"settings_complete_text": "Check Security settings for 2FA, API keys and user management. Visit Appearance to customize the console look.",
|
||
"help": "Help",
|
||
"tour_console": "Console Tour",
|
||
"tour_desktop": "Desktop Mode Tour",
|
||
"tour_devices": "Devices Tour",
|
||
"tour_remote": "Remote Session Tour",
|
||
"tour_organization": "Organization Setup",
|
||
"tour_cdap": "CDAP Overview",
|
||
"tour_chat": "Chat Basics",
|
||
"tour_settings": "Settings Tour",
|
||
"reset_all": "Reset All Tutorials",
|
||
"remote_toolbar_title": "Remote Toolbar",
|
||
"remote_toolbar_text": "Access display controls, clipboard sync, special keys, and quality settings from the toolbar. Toggle fullscreen with F11.",
|
||
"remote_canvas_title": "Remote Display",
|
||
"remote_canvas_text": "This is the remote screen. Click inside to start controlling the remote device. Mouse and keyboard input are forwarded automatically.",
|
||
"remote_clipboard_title": "Clipboard Sync",
|
||
"remote_clipboard_text": "Copy and paste text between your computer and the remote device. Use Ctrl+C / Ctrl+V as normal while focused on the remote display.",
|
||
"remote_complete_title": "Remote Session Ready!",
|
||
"remote_complete_text": "Use the toolbar buttons for special keys (Ctrl+Alt+Del, PrintScreen) and monitor switching. Press Escape or click Disconnect to end the session.",
|
||
"org_overview_title": "Organizations",
|
||
"org_overview_text": "Organizations let you group users, devices, and policies. Each organization has its own admin, operators, and settings.",
|
||
"org_create_title": "Create Organization",
|
||
"org_create_text": "Click here to create a new organization. Provide a name, slug, and optional description. You will be the owner of the new organization.",
|
||
"org_members_title": "Manage Members",
|
||
"org_members_text": "Invite users by email, assign roles (admin, operator, user), and manage access. Members can see devices assigned to their organization.",
|
||
"org_devices_title": "Assign Devices",
|
||
"org_devices_text": "Add devices to the organization. Devices assigned here will inherit the organization's policies and be visible to its members.",
|
||
"org_policies_title": "Organization Policies",
|
||
"org_policies_text": "Set security policies like password requirements, session timeouts, 2FA enforcement, and device enrollment rules for the organization.",
|
||
"org_complete_title": "Organization Setup Complete!",
|
||
"org_complete_text": "Invite your team and assign devices to start using organization-scoped management. Policies apply automatically to all members.",
|
||
"cdap_devices_title": "CDAP Devices",
|
||
"cdap_devices_text": "View all connected CDAP devices — IoT sensors, PLCs, bridges, and custom agents. Green indicators show live connections.",
|
||
"cdap_widgets_title": "Widget Dashboard",
|
||
"cdap_widgets_text": "Widgets display real-time data from devices. Gauges, toggles, LEDs, charts — each widget type visualizes a different kind of data.",
|
||
"cdap_commands_title": "Send Commands",
|
||
"cdap_commands_text": "Interact with devices by sending commands. Some commands need confirmation. The command log keeps a history of all sent commands.",
|
||
"cdap_terminal_title": "Device Terminal",
|
||
"cdap_terminal_text": "Open a terminal session to CDAP agents for advanced diagnostics or manual configuration. Type commands directly.",
|
||
"cdap_complete_title": "CDAP Overview Complete!",
|
||
"cdap_complete_text": "Explore device widgets, send commands, and use the terminal or file browser for deeper management. CDAP agents report metrics automatically.",
|
||
"chat_contacts_title": "Contacts & Groups",
|
||
"chat_contacts_text": "See your contacts and chat groups. Click any contact to open a conversation. Green dots indicate online users.",
|
||
"chat_send_title": "Send Messages",
|
||
"chat_send_text": "Type your message and press Enter to send. Messages are end-to-end encrypted when both parties support E2E.",
|
||
"chat_file_title": "Share Files",
|
||
"chat_file_text": "Click the attachment icon to share files. Files are encrypted and can be up to 50 MB.",
|
||
"chat_complete_title": "Chat Ready!",
|
||
"chat_complete_text": "Chat with operators and end users in real time. Create groups for team communication. All messages support read receipts.",
|
||
"disable_tutorials": "Disable Tutorials",
|
||
"enable_tutorials": "Enable Tutorials"
|
||
},
|
||
"help_request": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"new_request": "New Help Request",
|
||
"device": "Dispositivo",
|
||
"hostname": "Nombre de host",
|
||
"message": "Message",
|
||
"status": "Estado",
|
||
"pending": "Pending",
|
||
"accepted": "Accepted",
|
||
"resolved": "Resolved",
|
||
"accept": "Accept",
|
||
"resolve": "Resolve",
|
||
"no_requests": "No help requests",
|
||
"notification": "Help request received from",
|
||
"stats_total": "Total",
|
||
"filter_all": "Todos"
|
||
},
|
||
"organizations": {
|
||
"title": "Panel",
|
||
"create": "Crear",
|
||
"edit": "Editar",
|
||
"detail": "Detalle del ticket",
|
||
"name": "Name",
|
||
"slug": "Slug",
|
||
"logo_url": "Logo URL",
|
||
"users": "Usuarios",
|
||
"devices": "Dispositivos",
|
||
"invitations": "Invitations",
|
||
"settings": "Settings",
|
||
"add_user": "Añadir usuario",
|
||
"assign_device": "Asignar dispositivo",
|
||
"create_invitation": "Create Invitation",
|
||
"delete_confirm": "¿Eliminar esta organización? Se eliminarán todos los usuarios, dispositivos y ajustes asociados.",
|
||
"no_orgs": "No organizations yet",
|
||
"no_orgs_hint": "Create your first organization to start managing devices and users.",
|
||
"connection_policy": "Connection Policy",
|
||
"allow_file_transfer": "Allow File Transfer",
|
||
"allow_clipboard": "Allow Clipboard",
|
||
"max_session_duration": "Max Session Duration (min)",
|
||
"role_owner": "Owner",
|
||
"role_admin": "Administrador",
|
||
"role_operator": "Operador",
|
||
"role_user": "Visualizador",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"display_name": "Display Name",
|
||
"email": "Email",
|
||
"role": "Role",
|
||
"last_login": "Last Login",
|
||
"actions": "Actions",
|
||
"device_id": "Device ID",
|
||
"department": "Department",
|
||
"building": "Building",
|
||
"location": "Location",
|
||
"assigned_user": "Assigned User",
|
||
"token": "Token",
|
||
"expires": "Expires",
|
||
"used": "Used",
|
||
"no_users": "No users in this organization.",
|
||
"no_devices": "No devices assigned to this organization.",
|
||
"no_invitations": "No invitations.",
|
||
"user_added": "User added",
|
||
"user_removed": "User removed",
|
||
"user_updated": "User role updated",
|
||
"device_assigned": "Device assigned",
|
||
"device_unassigned": "Device unassigned",
|
||
"invitation_created": "Invitation created",
|
||
"settings_saved": "Settings saved",
|
||
"org_deleted": "Organization deleted",
|
||
"confirm_remove_user": "Remove this user from the organization?",
|
||
"confirm_unassign_device": "Unassign this device from the organization?",
|
||
"confirm_delete_org": "Delete this organization and all associated data?",
|
||
"edit_role": "Edit Role",
|
||
"raw_settings": "Raw Settings",
|
||
"key": "Key",
|
||
"value": "Value",
|
||
"save": "Save Settings",
|
||
"policy_unattended": "Unattended (instant)",
|
||
"policy_attended": "Attended (with confirmation)",
|
||
"policy_ask": "Always ask",
|
||
"expires_hours": "Expiration (hours)",
|
||
"loading_failed": "Failed to load organization data",
|
||
"name_slug_required": "Name and slug are required",
|
||
"org_created": "Organization created",
|
||
"org_updated": "Organization updated",
|
||
"create_new_user": "Create New",
|
||
"add_existing_user": "Add Existing",
|
||
"none_available": "none",
|
||
"select_user": "Select user",
|
||
"org_role": "Organization Role",
|
||
"link_user_hint": "Selected user will be linked to this organization using their server account credentials.",
|
||
"no_available_users": "All server users are already linked to this organization.",
|
||
"user_linked": "User linked to organization"
|
||
},
|
||
"chat": {
|
||
"e2e_enabled": "Cifrado de extremo a extremo",
|
||
"e2e_establishing": "Estableciendo canal seguro...",
|
||
"e2e_established": "Canal seguro establecido",
|
||
"e2e_unsupported": "Cifrado E2E no compatible con este navegador",
|
||
"typing_indicator": "escribiendo...",
|
||
"read_receipt": "Leído",
|
||
"delivered": "Entregado",
|
||
"file_share": "Archivo",
|
||
"file_too_large": "Archivo demasiado grande (máx. 50MB)",
|
||
"file_encrypted": "Transferencia de archivo cifrada",
|
||
"presence_online": "En línea",
|
||
"presence_away": "Ausente",
|
||
"presence_busy": "Ocupado",
|
||
"presence_offline": "Desconectado",
|
||
"key_rotation": "Claves de seguridad renovadas",
|
||
"new_message": "Nuevo mensaje",
|
||
"title": "Panel",
|
||
"contacts": "Contactos",
|
||
"groups": "Grupos",
|
||
"no_contacts": "Aún no hay contactos",
|
||
"no_groups": "Aún no hay grupos",
|
||
"no_messages": "Aún no hay mensajes",
|
||
"no_results": "No se encontraron resultados",
|
||
"select_conversation": "Seleccione una conversación para comenzar a chatear",
|
||
"select_conversation_hint": "Selecciona una conversación para ver los mensajes",
|
||
"type_message": "Escriba un mensaje...",
|
||
"send": "Enviar",
|
||
"attach_file": "Adjuntar archivo",
|
||
"emoji": "Emoji",
|
||
"info": "Información",
|
||
"search_messages": "Buscar mensajes",
|
||
"create_group": "Crear grupo",
|
||
"group_name": "Nombre del grupo",
|
||
"group_name_placeholder": "Introduce el nombre del grupo",
|
||
"group_members": "Miembros",
|
||
"cancel": "Cancelar",
|
||
"create": "Crear",
|
||
"members": "miembros",
|
||
"today": "Hoy",
|
||
"yesterday": "Ayer",
|
||
"react": "Reaccionar",
|
||
"my_presence": "Mi estado",
|
||
"search_placeholder": "Buscar dispositivos..."
|
||
},
|
||
"toast": {
|
||
"device_connected": "Device connected",
|
||
"device_disconnected": "Device disconnected",
|
||
"session_started": "Remote session started",
|
||
"session_ended": "Remote session ended",
|
||
"file_upload_complete": "File upload complete",
|
||
"settings_saved": "Settings saved",
|
||
"error_generic": "An error occurred",
|
||
"connection_lost": "Connection lost",
|
||
"reconnecting": "Reconnecting..."
|
||
},
|
||
"theme": {
|
||
"dark": "Dark",
|
||
"light": "Light",
|
||
"auto": "System",
|
||
"title": "Panel"
|
||
},
|
||
"days": {
|
||
"mon": "Mon",
|
||
"tue": "Tue",
|
||
"wed": "Wed",
|
||
"thu": "Thu",
|
||
"fri": "Fri",
|
||
"sat": "Sat",
|
||
"sun": "Sun"
|
||
},
|
||
"toolkit": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"cat_network": "Network",
|
||
"cat_crypto": "Crypto",
|
||
"cat_encoding": "Encoding",
|
||
"cat_system": "System",
|
||
"host": "Host",
|
||
"port": "Puerto",
|
||
"domain": "Domain",
|
||
"run": "Run",
|
||
"generate": "Generar configuración",
|
||
"encode": "Encode",
|
||
"decode": "Decode",
|
||
"send": "Enviar",
|
||
"refresh": "Actualizar",
|
||
"algorithm": "Algorithm",
|
||
"input_text": "Input Text",
|
||
"enter_text": "Enter text...",
|
||
"length": "Length",
|
||
"options": "Options",
|
||
"source": "Source",
|
||
"lines": "Lines",
|
||
"log_console": "Console",
|
||
"log_go": "Go Server",
|
||
"mac_address": "Dirección MAC",
|
||
"broadcast": "Broadcast",
|
||
"ping_title": "Ping",
|
||
"ping_desc": "Check host reachability and latency",
|
||
"tcp_title": "TCP Port Check",
|
||
"tcp_desc": "Test TCP port connectivity",
|
||
"ssl_title": "SSL Inspector",
|
||
"ssl_desc": "Inspect SSL/TLS certificate details",
|
||
"http_title": "HTTP Health Check",
|
||
"http_desc": "Verify HTTP endpoint status",
|
||
"dns_title": "DNS Lookup",
|
||
"dns_desc": "Resolve hostname to IP address",
|
||
"whois_title": "DNS Records",
|
||
"whois_desc": "Query A, AAAA, MX, TXT, NS records",
|
||
"speed_title": "Speed Test",
|
||
"speed_desc": "Measure download bandwidth",
|
||
"run_speed_test": "Run Speed Test",
|
||
"wol_title": "Wake-on-LAN",
|
||
"wol_desc": "Send magic packet to wake a device",
|
||
"wol_sent": "Magic packet sent",
|
||
"hash_title": "Hash Generator",
|
||
"hash_desc": "Generate cryptographic hashes",
|
||
"password_title": "Password Generator",
|
||
"password_desc": "Actualizar la contraseña de su cuenta",
|
||
"jwt_title": "JWT Decoder",
|
||
"jwt_desc": "Decode and inspect JSON Web Tokens",
|
||
"jwt_token": "JWT Token",
|
||
"base64_title": "Base64",
|
||
"base64_desc": "Encode or decode Base64 data",
|
||
"url_title": "URL Encoder",
|
||
"url_desc": "Encode or decode URL components",
|
||
"processes_title": "Process List",
|
||
"processes_desc": "View running system processes",
|
||
"disk_title": "Disk Usage",
|
||
"disk_desc": "View disk partition usage",
|
||
"db_title": "Database Stats",
|
||
"db_desc": "View database table statistics",
|
||
"docker_title": "Docker Containers",
|
||
"docker_desc": "View running Docker containers",
|
||
"logs_title": "Log Viewer",
|
||
"logs_desc": "View recent log output",
|
||
"ip_address": "Dirección IP",
|
||
"latency": "Latency",
|
||
"ttl": "TTL",
|
||
"status": "Estado",
|
||
"resolved": "Resolved",
|
||
"subject": "Subject",
|
||
"issuer": "Issuer",
|
||
"valid_from": "Valid From",
|
||
"valid_to": "Valid To",
|
||
"days_left": "Days Left",
|
||
"days": "days",
|
||
"protocol": "Protocol",
|
||
"cipher": "Cipher",
|
||
"alt_names": "SANs",
|
||
"chain": "Chain",
|
||
"record_type": "Type",
|
||
"record_value": "Value",
|
||
"hash_value": "Hash",
|
||
"entropy": "Entropy",
|
||
"very_strong": "Very Strong",
|
||
"strong": "Strong",
|
||
"weak": "Weak",
|
||
"expiry": "Expiry",
|
||
"expired": "Expired",
|
||
"valid": "Valid",
|
||
"process_name": "Name",
|
||
"db_type": "Type",
|
||
"db_size": "Size",
|
||
"table_name": "Table",
|
||
"row_count": "Rows",
|
||
"no_data": "No hardware data available",
|
||
"no_docker": "No Docker containers found or Docker not available",
|
||
"no_logs": "No log lines available"
|
||
},
|
||
"policies": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"select_org": "Organización",
|
||
"select_org_placeholder": "Seleccionar organización...",
|
||
"select_org_first": "Seleccione una organización para ver el registro de auditoría de políticas.",
|
||
"configured": "Configurado",
|
||
"connection_title": "Política de conexión",
|
||
"connection_desc": "Controlar cómo se establecen las sesiones remotas",
|
||
"connection_mode": "Modo de conexión",
|
||
"mode_attended": "Asistido (requiere aprobación del usuario)",
|
||
"mode_unattended": "No asistido (permitir siempre)",
|
||
"mode_ask": "Preguntar siempre",
|
||
"max_session": "Duración máx. de sesión (minutos)",
|
||
"idle_lock": "Bloqueo por inactividad (minutos)",
|
||
"wallpaper_policy": "Fondo durante la sesión",
|
||
"wallpaper_show": "Mostrar",
|
||
"wallpaper_hide_session": "Ocultar durante sesión",
|
||
"wallpaper_hide_always": "Ocultar siempre",
|
||
"features_title": "Política de funciones",
|
||
"features_desc": "Habilitar o deshabilitar funciones específicas para dispositivos",
|
||
"allow_file_transfer": "Allow File Transfer",
|
||
"allow_clipboard": "Allow Clipboard",
|
||
"allow_audio": "Permitir transmisión de audio",
|
||
"allow_recording": "Permitir grabación de sesión",
|
||
"security_title": "Política de seguridad",
|
||
"security_desc": "Aplicar requisitos de seguridad para dispositivos de la organización",
|
||
"require_2fa": "Requerir 2FA para acceso no asistido",
|
||
"password_min_length": "Longitud mínima de contraseña",
|
||
"password_require_special": "Requerir caracteres especiales",
|
||
"password_max_age": "Edad máx. de contraseña (días, 0=nunca)",
|
||
"allowed_operators": "Allowed Operators",
|
||
"network_title": "Política de red",
|
||
"network_desc": "Controlar servidores relay y conexiones directas",
|
||
"block_direct_p2p": "Bloquear P2P directo (forzar relay)",
|
||
"allowed_relays": "Servidores relay permitidos (uno por línea)",
|
||
"ip_allowlist": "Lista blanca IP (CIDR, uno por línea)",
|
||
"update_title": "Política de actualización",
|
||
"update_desc": "Controlar actualizaciones automáticas y canales de actualización",
|
||
"auto_update": "Habilitar actualización automática",
|
||
"update_channel": "Canal de actualización",
|
||
"audit_title": "Cambios de políticas",
|
||
"audit_desc": "Actividad reciente de la consola",
|
||
"no_audit": "No se registraron cambios de políticas.",
|
||
"save_success": "Policy saved successfully",
|
||
"save_failed": "Failed to save policy",
|
||
"load_failed": "Failed to load policies"
|
||
},
|
||
"attestation": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"verified": "Verificado",
|
||
"pending": "Pending",
|
||
"failed": "Fallido",
|
||
"device_list": "Registros de atestación",
|
||
"device_list_desc": "Huellas de hardware y estado de verificación de identidad",
|
||
"col_device": "ID de dispositivo",
|
||
"col_hostname": "Nombre de host",
|
||
"col_fingerprint": "Huella",
|
||
"col_status": "Estado",
|
||
"col_last_check": "Última verificación",
|
||
"col_actions": "Acciones",
|
||
"no_records": "No se encontraron registros de atestación.",
|
||
"verify_success": "Device marked as verified",
|
||
"verify_failed": "Failed to verify device",
|
||
"revoke_success": "Device attestation revoked",
|
||
"revoke_failed": "Failed to revoke attestation"
|
||
},
|
||
"fleet": {
|
||
"title": "Panel",
|
||
"tab_resources": "Recursos",
|
||
"tab_tasks": "Tareas",
|
||
"tab_builder": "Constructor",
|
||
"tab_compliance": "Cumplimiento",
|
||
"res_title": "Mapeo de recursos",
|
||
"res_all_types": "Todos los tipos",
|
||
"res_type_printer": "Impresora",
|
||
"res_type_network_drive": "Unidad de red",
|
||
"res_type_dns": "Servidor DNS",
|
||
"res_type_proxy": "Proxy",
|
||
"res_type_vpn": "VPN",
|
||
"res_add": "Añadir recurso",
|
||
"res_name": "Nombre del recurso",
|
||
"res_type": "Tipo",
|
||
"res_address": "Dirección / Ruta",
|
||
"res_target": "Destino",
|
||
"res_scope": "Alcance",
|
||
"res_scope_org": "Organización",
|
||
"res_scope_group": "Grupo",
|
||
"res_scope_device": "Dispositivo",
|
||
"res_scope_value": "Valor del alcance",
|
||
"res_status": "Estado",
|
||
"res_active": "Activo",
|
||
"res_inactive": "Inactivo",
|
||
"res_no_data": "No se encontraron recursos. Haga clic en 'Añadir recurso'.",
|
||
"res_confirm_delete": "¿Está seguro de que desea eliminar este recurso?",
|
||
"task_title": "Programador de tareas",
|
||
"task_all_status": "Todos los estados",
|
||
"task_status_pending": "Pendiente",
|
||
"task_status_running": "En ejecución",
|
||
"task_status_success": "Éxito",
|
||
"task_status_failed": "Fallido",
|
||
"task_search": "Buscar tareas…",
|
||
"task_create": "Crear tarea",
|
||
"task_name": "Nombre de la tarea",
|
||
"task_type": "Tipo",
|
||
"task_type_script": "Script",
|
||
"task_type_install": "Instalación",
|
||
"task_type_update": "Actualización",
|
||
"task_type_restart": "Reinicio",
|
||
"task_type_deploy": "Despliegue",
|
||
"task_type_scan": "Escaneo",
|
||
"task_targets": "Destinos",
|
||
"task_targets_help": "IDs de dispositivos o nombres de grupos, separados por comas",
|
||
"task_schedule": "Programación",
|
||
"task_schedule_once": "Una vez",
|
||
"task_schedule_cron": "Cron",
|
||
"task_schedule_interval": "Intervalo",
|
||
"task_schedule_value": "Valor de programación",
|
||
"task_script": "Script / Comando",
|
||
"task_retries": "Reintentos",
|
||
"task_timeout": "Tiempo límite (s)",
|
||
"task_last_run": "Última ejecución",
|
||
"task_no_data": "No se encontraron tareas. Cree una nueva tarea.",
|
||
"task_confirm_delete": "¿Está seguro de que desea eliminar esta tarea?",
|
||
"task_output": "Salida de la tarea",
|
||
"task_retry": "Reintentar",
|
||
"builder_title": "Constructor de flujos de trabajo",
|
||
"builder_select_workflow": "Seleccionar flujo…",
|
||
"builder_new": "Nuevo",
|
||
"builder_save": "Guardar",
|
||
"builder_export": "Exportar",
|
||
"builder_execute": "Ejecutar",
|
||
"builder_dry_run": "Simulación",
|
||
"builder_triggers": "Disparadores",
|
||
"builder_conditions": "Condiciones",
|
||
"builder_actions": "Acciones",
|
||
"builder_results": "Resultados",
|
||
"builder_transforms": "Transformaciones",
|
||
"builder_properties": "Propiedades",
|
||
"builder_no_selection": "Seleccione un nodo para editar sus propiedades.",
|
||
"builder_node_trigger_manual": "Manual Trigger",
|
||
"builder_node_trigger_schedule": "Schedule",
|
||
"builder_node_trigger_event": "Event Trigger",
|
||
"builder_node_cond_os": "OS Check",
|
||
"builder_node_cond_threshold": "Threshold",
|
||
"builder_node_cond_time_window": "Time Window",
|
||
"builder_node_action_script": "Run Script",
|
||
"builder_node_action_install": "Install SW",
|
||
"builder_node_action_restart": "Restart Svc",
|
||
"builder_node_action_file_deploy": "Deploy File",
|
||
"builder_node_action_message": "Send Message",
|
||
"builder_node_result_log": "Log Output",
|
||
"builder_node_result_alert": "Send Alert",
|
||
"builder_node_result_chain": "Chain Workflow",
|
||
"builder_node_transform_parse": "Parse JSON",
|
||
"builder_node_transform_filter": "Filter",
|
||
"builder_node_transform_delay": "Delay",
|
||
"workflow_name": "Nombre del flujo:",
|
||
"comp_title": "Cumplimiento de software",
|
||
"comp_compliant": "Conforme",
|
||
"comp_warning": "Advertencia",
|
||
"comp_critical": "Crítico",
|
||
"comp_score": "Puntuación media",
|
||
"comp_device": "Dispositivo",
|
||
"comp_hostname": "Nombre de host",
|
||
"comp_os": "SO",
|
||
"comp_score_col": "Puntuación",
|
||
"comp_issues": "Problemas",
|
||
"comp_last_scan": "Último escaneo",
|
||
"comp_scan": "Escanear",
|
||
"comp_scan_all": "Escanear todo",
|
||
"comp_remediate": "Remediar",
|
||
"comp_remediate_confirm": "¿Ejecutar auto-remediación en este dispositivo?",
|
||
"comp_no_data": "Sin datos de cumplimiento. Ejecute un escaneo.",
|
||
"save": "Guardar",
|
||
"cancel": "Cancelar",
|
||
"close": "Cerrar",
|
||
"edit": "Editar",
|
||
"delete": "Eliminar",
|
||
"actions": "Acciones",
|
||
"all_orgs": "Todas las organizaciones",
|
||
"select_org_placeholder": "Seleccionar organización...",
|
||
"all_types": "All Types",
|
||
"type_printer": "Printer",
|
||
"type_network_drive": "Network Drive",
|
||
"type_dns": "DNS Server",
|
||
"type_vpn": "VPN",
|
||
"type_proxy": "Proxy",
|
||
"add_resource": "Add Resource",
|
||
"edit_resource": "Edit Resource",
|
||
"col_name": "Name",
|
||
"col_type": "Type",
|
||
"col_target": "Target",
|
||
"col_scope": "Scope",
|
||
"col_status": "Estado",
|
||
"col_actions": "Acciones",
|
||
"no_resources": "No resources found.",
|
||
"active": "Activo",
|
||
"inactive": "Inactivo",
|
||
"address": "Address / Path",
|
||
"scope_org": "Organization",
|
||
"scope_group": "Group",
|
||
"scope_device": "Dispositivo objetivo",
|
||
"scope_value": "Scope Value",
|
||
"scope_value_hint": "Organization, group, or device ID",
|
||
"confirm_delete": "Are you sure you want to delete this item?",
|
||
"all_statuses": "All Statuses",
|
||
"status_pending": "Pendiente",
|
||
"status_running": "En ejecución",
|
||
"status_success": "Success",
|
||
"status_failed": "Fallido",
|
||
"search_tasks": "Search tasks…",
|
||
"create_task": "Create Task",
|
||
"edit_task": "Edit Task",
|
||
"col_task_name": "Task Name",
|
||
"col_task_type": "Type",
|
||
"col_schedule": "Schedule",
|
||
"col_last_run": "Last Run",
|
||
"no_tasks": "No tasks found.",
|
||
"task_type_file_deploy": "File Deploy",
|
||
"task_type_registry": "Registry",
|
||
"target_devices": "Target Devices",
|
||
"target_hint": "Device IDs or group names",
|
||
"schedule_immediate": "Immediate",
|
||
"schedule_once": "Once",
|
||
"schedule_cron": "Cron",
|
||
"cron_placeholder": "*/5 * * * *",
|
||
"script_content": "Script / Command",
|
||
"retry_count": "Retries",
|
||
"timeout_sec": "Timeout (s)",
|
||
"loading": "Cargando...",
|
||
"no_output": "No output available",
|
||
"error_loading": "Error loading data",
|
||
"select_workflow": "Select workflow…",
|
||
"new_workflow": "New",
|
||
"export": "Exportar",
|
||
"execute": "Execute",
|
||
"dry_run": "Dry Run",
|
||
"node_triggers": "Triggers",
|
||
"node_manual": "Manual Trigger",
|
||
"node_schedule": "Schedule",
|
||
"node_event": "Event Trigger",
|
||
"node_conditions": "Conditions",
|
||
"node_os_check": "OS Check",
|
||
"node_threshold": "Threshold",
|
||
"node_time_window": "Time Window",
|
||
"node_actions": "Actions",
|
||
"node_run_script": "Run Script",
|
||
"node_install": "Install SW",
|
||
"node_restart": "Restart Svc",
|
||
"node_file_deploy": "Deploy File",
|
||
"node_send_message": "Send Message",
|
||
"node_results": "Results",
|
||
"node_log_output": "Log Output",
|
||
"node_send_alert": "Send Alert",
|
||
"node_chain": "Chain Workflow",
|
||
"node_transforms": "Transforms",
|
||
"node_parse_json": "Parse JSON",
|
||
"node_filter": "Filter",
|
||
"node_delay": "Delay",
|
||
"node_properties": "Properties",
|
||
"all_organizations": "All Organizations",
|
||
"scan_all": "Scan All",
|
||
"compliant": "Compliant",
|
||
"non_compliant": "Warning",
|
||
"critical_issues": "Critical",
|
||
"avg_score": "Avg. Score",
|
||
"col_device": "ID de dispositivo",
|
||
"col_hostname": "Nombre de host",
|
||
"col_os": "OS",
|
||
"col_score": "Score",
|
||
"col_issues": "Issues",
|
||
"col_last_scan": "Last Scan",
|
||
"no_compliance_data": "No compliance data available.",
|
||
"confirm_remediate": "Run auto-remediation on this device?"
|
||
},
|
||
"scaling": {
|
||
"title": "Panel",
|
||
"tab_overview": "Resumen",
|
||
"tab_relays": "Nodos de relé",
|
||
"tab_rules": "Reglas de asignación",
|
||
"tab_capacity": "Planificación de capacidad",
|
||
"arch_title": "Arquitectura de red",
|
||
"arch_loading": "Cargando diagrama de arquitectura...",
|
||
"stat_relay_nodes": "Nodos de relé",
|
||
"stat_total_devices": "Dispositivos totales",
|
||
"stat_active_sessions": "Sesiones activas",
|
||
"stat_bandwidth": "Ancho de banda total",
|
||
"relay_health": "Estado de relés",
|
||
"no_relays": "No hay nodos de relé configurados. Agregue su primer nodo para distribuir la carga.",
|
||
"relay_search": "Buscar relés...",
|
||
"relay_add": "Agregar nodo de relé",
|
||
"relay_edit": "Editar nodo de relé",
|
||
"col_name": "Name",
|
||
"col_address": "Dirección",
|
||
"col_location": "Ubicación",
|
||
"col_devices": "Dispositivos",
|
||
"col_sessions": "Sesiones",
|
||
"col_bandwidth": "Ancho de banda",
|
||
"col_status": "Estado",
|
||
"col_actions": "Acciones",
|
||
"col_priority": "Prioridad",
|
||
"col_rule_name": "Nombre de regla",
|
||
"col_match": "Coincidencia",
|
||
"col_target_relay": "Relé destino",
|
||
"col_fallback": "Respaldo",
|
||
"status_online": "En línea",
|
||
"status_degraded": "Degradado",
|
||
"status_offline": "Fuera de línea",
|
||
"status_enabled": "Habilitado",
|
||
"status_disabled": "Deshabilitado",
|
||
"confirm_delete_relay": "¿Está seguro de que desea eliminar este nodo de relé?",
|
||
"confirm_delete_rule": "¿Está seguro de que desea eliminar esta regla de asignación?",
|
||
"rules_hint": "Las reglas de asignación determinan qué servidor de relé maneja grupos de dispositivos específicos. Las reglas se evalúan por prioridad (la más baja primero).",
|
||
"no_rules": "No hay reglas de asignación.",
|
||
"rule_add": "Agregar regla",
|
||
"rule_edit": "Editar regla",
|
||
"rule_match_type": "Tipo de coincidencia",
|
||
"match_subnet": "Subred",
|
||
"match_group": "Grupo de dispositivos",
|
||
"match_tag": "Etiqueta de dispositivo",
|
||
"match_location": "Ubicación",
|
||
"rule_match_value": "Valor de coincidencia",
|
||
"fallback_master": "Servidor maestro",
|
||
"fallback_nearest": "Relé más cercano",
|
||
"relay_max_sessions": "Máx. sesiones",
|
||
"relay_max_bandwidth": "Máx. ancho de banda (Mbps)",
|
||
"cap_tiers": "Niveles de capacidad",
|
||
"cap_loading": "Cargando datos de capacidad...",
|
||
"cap_recommendations": "Recomendaciones",
|
||
"cap_no_recs": "No hay recomendaciones disponibles.",
|
||
"cap_planning": "Planificación de infraestructura",
|
||
"cap_config": "Configuración",
|
||
"cap_max_devices": "Máx. dispositivos",
|
||
"cap_max_sessions": "Máx. sesiones",
|
||
"cap_current": "Actual",
|
||
"cap_utilization": "Utilización",
|
||
"cap_tier_devices": "Capacidad de dispositivos",
|
||
"cap_tier_sessions": "Capacidad de sesiones",
|
||
"cap_tier_bandwidth": "Capacidad de ancho de banda",
|
||
"cap_single_sqlite": "Servidor único (SQLite)",
|
||
"cap_single_pg": "Servidor único (PostgreSQL)",
|
||
"cap_master_3": "Maestro + 3 relés",
|
||
"cap_master_10": "Maestro + 10 relés",
|
||
"rec_no_relays": "No hay nodos configurados. Considere agregar relés para mejor rendimiento y redundancia.",
|
||
"rec_devices_high": "La utilización de dispositivos es alta. Considere agregar más nodos de relé.",
|
||
"rec_sessions_high": "La capacidad de sesiones se acerca al límite. Considere actualizar la infraestructura.",
|
||
"rec_cpu_high": "Algunos nodos reportan alto uso de CPU. Considere balanceo de carga.",
|
||
"rec_all_good": "Todos los sistemas operan dentro de parámetros normales. No se requiere acción.",
|
||
"save": "Guardar",
|
||
"cancel": "Cancelar",
|
||
"edit": "Editar",
|
||
"delete": "Eliminar",
|
||
"close": "Cerrar",
|
||
"relays_info_banner": "This list is informational. The relay servers actually used by clients are configured via the RELAY_SERVERS environment variable on the BetterDesk server.",
|
||
"relay_name_address_required": "Name and address are required.",
|
||
"relay_save_failed": "Failed to save relay node.",
|
||
"relay_delete_failed": "Failed to delete relay node.",
|
||
"relay_saved": "Relay node saved.",
|
||
"relay_deleted": "Relay node deleted.",
|
||
"rule_name_value_required": "Rule name and match value are required.",
|
||
"rule_save_failed": "Failed to save rule.",
|
||
"rule_delete_failed": "Failed to delete rule.",
|
||
"rule_saved": "Rule saved.",
|
||
"rule_deleted": "Rule deleted."
|
||
},
|
||
"cross_platform": {
|
||
"title": "Panel",
|
||
"tab_matrix": "Matriz de compatibilidad",
|
||
"tab_distribution": "Distribución",
|
||
"tab_protocols": "Protocolos",
|
||
"tab_limitations": "Limitaciones",
|
||
"matrix_hint": "Matriz de soporte de funciones para todas las plataformas compatibles. Verde = soporte completo, Amarillo = parcial, Gris = no disponible, Azul = planificado.",
|
||
"col_feature": "Función",
|
||
"legend_full": "Soporte completo",
|
||
"legend_partial": "Soporte parcial",
|
||
"legend_none": "No disponible",
|
||
"legend_planned": "Planificado",
|
||
"platform_breakdown": "Distribución por plataforma",
|
||
"arch_breakdown": "Distribución por arquitectura",
|
||
"version_breakdown": "Distribución por versión",
|
||
"summary": "Resumen",
|
||
"total_devices": "Total de dispositivos",
|
||
"unique_platforms": "Plataformas",
|
||
"unique_archs": "Arquitecturas",
|
||
"unique_versions": "Versiones de cliente",
|
||
"no_devices": "No se encontraron dispositivos con datos de inventario",
|
||
"protocols_hint": "La negociación de capacidades del protocolo asegura que cada cliente reciba solo las funciones que soporta. El servidor adapta su comportamiento basándose en las capacidades reportadas.",
|
||
"capability_negotiation": "Negociación de capacidades",
|
||
"codec_support": "Soporte de códecs (dispositivos en línea)",
|
||
"feature_support": "Soporte de funciones (dispositivos en línea)",
|
||
"no_codec_data": "No hay datos de códecs de dispositivos en línea.",
|
||
"no_feature_data": "No hay datos de funciones de dispositivos en línea.",
|
||
"protobuf_schema": "Esquema Protobuf ClientCapabilities",
|
||
"diagram_client": "Cliente",
|
||
"diagram_server": "Servidor BetterDesk",
|
||
"diagram_peer": "Peer remoto",
|
||
"limitations_hint": "Cada plataforma tiene limitaciones específicas que afectan las funciones disponibles. Revíselas al planificar implementaciones.",
|
||
"feat_desktop_client": "Cliente de escritorio",
|
||
"feat_background_agent": "Agente en segundo plano",
|
||
"feat_remote_target": "Objetivo remoto",
|
||
"feat_screen_capture": "Captura de pantalla",
|
||
"feat_input_injection": "Inyección de entrada",
|
||
"feat_file_transfer": "Transferencia de archivos",
|
||
"feat_clipboard_sync": "Sincronización de portapapeles",
|
||
"feat_audio_streaming": "Transmisión de audio",
|
||
"feat_chat": "Chat",
|
||
"feat_h264": "Códec H.264",
|
||
"feat_vp9": "Códec VP9",
|
||
"feat_av1": "Códec AV1",
|
||
"feat_cdap_agent": "Agente CDAP",
|
||
"platform_windows": "Windows",
|
||
"platform_linux": "Linux",
|
||
"platform_macos": "macOS",
|
||
"platform_android": "Android",
|
||
"platform_ios": "iOS",
|
||
"platform_web": "Navegador web",
|
||
"platform_chromeos": "ChromeOS",
|
||
"status_production": "Producción",
|
||
"status_testing": "Pruebas",
|
||
"status_planned": "Planificado",
|
||
"status_limited": "Limitado",
|
||
"status_experimental": "Experimental",
|
||
"limit_win_uac": "Se requiere elevación UAC para instalación de servicio e inyección de entrada en escritorios seguros.",
|
||
"limit_win_service": "Se ejecuta como servicio NSSM; requiere derechos de administrador para instalar.",
|
||
"limit_win_firewall": "Las reglas del Firewall de Windows deben permitir los puertos 21115-21119 para conexiones relay.",
|
||
"limit_linux_wayland": "Los compositores Wayland restringen la captura programática de pantalla; se requiere API de portal PipeWire.",
|
||
"limit_linux_pipewire": "La captura de audio requiere PipeWire; alternativa PulseAudio disponible pero limitada.",
|
||
"limit_linux_arm": "Compilaciones ARM64 disponibles; algunos códecs pueden usar decodificación por software (más lento).",
|
||
"limit_mac_screen": "Se requiere permiso de grabación de pantalla en Configuración del Sistema > Privacidad y Seguridad.",
|
||
"limit_mac_signing": "El agente debe estar firmado con Apple Developer ID para distribución.",
|
||
"limit_mac_notarize": "Se requiere notarización para macOS Gatekeeper (distribución fuera de App Store).",
|
||
"limit_android_projection": "La API MediaProjection requiere consentimiento del usuario para cada sesión de captura de pantalla.",
|
||
"limit_android_accessibility": "La inyección de entrada requiere AccessibilityService; restringido desde Android 14+.",
|
||
"limit_android_battery": "Servicio en segundo plano limitado por modo Doze; puede necesitar exención de optimización de batería.",
|
||
"limit_ios_capture": "Apple prohíbe la captura de pantalla en segundo plano; solo modo visor soportado.",
|
||
"limit_ios_input": "No se permite inyección de entrada; solo vista remota y chat.",
|
||
"limit_ios_appstore": "Distribución solo a través de App Store; TestFlight para pruebas beta.",
|
||
"limit_web_https": "La API WebCodecs y WebRTC requieren HTTPS; HTTP recurre a JMuxer (códecs limitados).",
|
||
"limit_web_codec": "Soporte de códecs depende del navegador; H.264 ampliamente soportado, VP9/AV1 varía.",
|
||
"limit_web_performance": "Rendimiento limitado por sandbox del navegador; sin aceleración de hardware directa.",
|
||
"limit_chrome_crostini": "Soporte completo de agente solo dentro del contenedor Linux Crostini.",
|
||
"limit_chrome_pwa": "El modo PWA proporciona solo capacidades web; sin funciones nativas de agente.",
|
||
"limit_chrome_input": "Inyección de entrada fuera del contenedor Crostini no soportada."
|
||
},
|
||
"security_audit": {
|
||
"title": "Panel",
|
||
"tab_overview": "Resumen",
|
||
"tab_events": "Events",
|
||
"tab_hardening": "Endurecimiento",
|
||
"tab_vulnerabilities": "Vulnerabilidades",
|
||
"security_score": "Puntuación de seguridad",
|
||
"failed_logins": "Inicios de sesión fallidos (24h)",
|
||
"active_bans": "Bloqueos activos",
|
||
"api_keys": "Claves API",
|
||
"old_keys": "Claves antiguas (>90d)",
|
||
"security_checks": "Verificaciones de seguridad",
|
||
"tls_status": "Estado TLS",
|
||
"pass": "OK",
|
||
"warning": "Advertencia",
|
||
"fail": "Fallo",
|
||
"tls_signal": "Signal TLS",
|
||
"tls_relay": "Relay TLS",
|
||
"tls_api": "API TLS",
|
||
"tls_wss": "WebSocket Secure",
|
||
"enabled": "Activado",
|
||
"disabled": "Desactivado",
|
||
"all_events": "Todos los eventos",
|
||
"event_login_failed": "Inicio de sesión fallido",
|
||
"event_login_success": "Inicio de sesión exitoso",
|
||
"event_peer_banned": "Dispositivo bloqueado",
|
||
"event_ip_banned": "IP bloqueada",
|
||
"event_config_changed": "Configuración cambiada",
|
||
"event_key_created": "Clave creada",
|
||
"refresh": "Actualizar",
|
||
"col_time": "Hora",
|
||
"col_action": "Acción",
|
||
"col_actor": "Actor",
|
||
"col_target": "Target",
|
||
"col_ip": "Dirección IP",
|
||
"col_details": "Detalles",
|
||
"no_events": "No se registraron eventos DLP",
|
||
"hardening_hint": "Prioridades de endurecimiento de seguridad para su implementación BetterDesk. Ordenados por gravedad.",
|
||
"no_hardening": "No hay elementos de endurecimiento disponibles.",
|
||
"vuln_hint": "Resultados del escaneo de vulnerabilidades de dependencias. Ejecute npm audit regularmente.",
|
||
"no_vulns": "No se encontraron vulnerabilidades. Sus dependencias son seguras."
|
||
},
|
||
"languages": {
|
||
"title": "Panel",
|
||
"total_languages": "Total Languages",
|
||
"fully_translated": "Fully Translated",
|
||
"needs_review": "Needs Review",
|
||
"reference_keys": "Reference Keys",
|
||
"no_languages": "No language files found.",
|
||
"badge_reference": "Reference",
|
||
"badge_review": "Needs Review",
|
||
"badge_complete": "Complete",
|
||
"coverage": "coverage",
|
||
"keys": "keys",
|
||
"missing": "missing",
|
||
"extra": "extra",
|
||
"view_missing": "View Missing",
|
||
"fix_missing": "Fix Missing",
|
||
"missing_keys_for": "Missing keys for",
|
||
"missing_keys_count": "keys missing (English fallback values shown)",
|
||
"and_more": "and {n} more...",
|
||
"all_keys_present": "All keys are present!",
|
||
"confirm_fix": "Add missing keys to {code} with English fallback values?",
|
||
"fixed_title": "Keys Fixed",
|
||
"fixed_msg": "Added {n} missing keys to {code} with English fallback.",
|
||
"no_fix_needed": "No missing keys to fix."
|
||
},
|
||
"resource_control": {
|
||
"title": "Panel",
|
||
"tab_overview": "Resumen",
|
||
"tab_usb": "USB Control",
|
||
"tab_optical": "Optical Drives",
|
||
"tab_monitors": "Monitors",
|
||
"tab_disks": "Disk Access",
|
||
"tab_quotas": "Resource Quotas",
|
||
"compliance_by_category": "Compliance by Category",
|
||
"device_compliance": "Device Compliance",
|
||
"search_devices": "Search devices...",
|
||
"col_device": "ID de dispositivo",
|
||
"col_platform": "Plataforma",
|
||
"col_status": "Estado",
|
||
"col_usb": "USB",
|
||
"col_optical": "Optical",
|
||
"col_monitors": "Monitors",
|
||
"col_disks": "Disks",
|
||
"col_quotas": "Quotas",
|
||
"col_actions": "Acciones",
|
||
"stat_total_devices": "Dispositivos totales",
|
||
"stat_compliant": "Compliant",
|
||
"stat_partial": "Partial",
|
||
"stat_noncompliant": "Non-Compliant",
|
||
"stat_compliance_rate": "Compliance Rate",
|
||
"badge_na": "N/A",
|
||
"badge_compliant": "OK",
|
||
"badge_partial": "Partial",
|
||
"badge_noncompliant": "Fail",
|
||
"btn_configure": "Configure",
|
||
"no_devices": "No se encontraron dispositivos con datos de inventario",
|
||
"usb_title": "USB Port Control",
|
||
"usb_hint": "Control USB storage device access for the selected device or organization-wide default policy.",
|
||
"usb_storage_policy": "USB Storage Policy",
|
||
"usb_whitelist": "Whitelisted Devices (one per line)",
|
||
"usb_whitelist_hint": "VID:PID (e.g. 0781:5583)",
|
||
"usb_audit_log": "Log USB device connections",
|
||
"optical_title": "Optical Drive Control",
|
||
"optical_hint": "Control CD/DVD/Blu-ray drive access for the selected device.",
|
||
"optical_policy": "Optical Drive Policy",
|
||
"optical_audit_log": "Log optical drive access",
|
||
"monitors_title": "Monitor Management",
|
||
"monitors_hint": "Configure monitor settings including maximum count, resolution enforcement, brightness and power schedules.",
|
||
"monitors_max_count": "Maximum Monitors (0 = unlimited)",
|
||
"monitors_max_hint": "0 means no limit",
|
||
"monitors_resolution": "Max Resolution",
|
||
"monitors_brightness": "Brightness Limit",
|
||
"monitors_power_schedule": "Power Schedule",
|
||
"monitors_power_hint": "e.g. off:22:00-06:00",
|
||
"disks_title": "Disk Access Control",
|
||
"disks_hint": "Configure disk access policies including read-only mode, encryption enforcement, and partition visibility.",
|
||
"disks_readonly": "Force read-only mode",
|
||
"disks_encryption": "Require encryption (BitLocker/LUKS)",
|
||
"disks_smart": "Enable S.M.A.R.T. monitoring",
|
||
"disks_hidden": "Hidden Partitions",
|
||
"disks_hidden_hint": "Comma-separated drive letters or mount points",
|
||
"quotas_title": "Resource Quotas",
|
||
"quotas_hint": "Set per-user CPU, RAM, bandwidth, and disk quotas for the selected device.",
|
||
"quotas_cpu": "CPU Limit",
|
||
"quotas_ram": "RAM Limit",
|
||
"quotas_bandwidth": "Bandwidth Limit (Mbps)",
|
||
"quotas_bandwidth_hint": "0 = unlimited",
|
||
"quotas_disk_quota": "Disk Quota (GB)",
|
||
"quotas_disk_hint": "0 = unlimited",
|
||
"quotas_process_whitelist": "Process Whitelist (one per line)",
|
||
"quotas_process_hint": "e.g. chrome.exe, code.exe",
|
||
"policy_allowed": "Allowed",
|
||
"policy_blocked": "Blocked",
|
||
"policy_whitelist": "Whitelist Only",
|
||
"policy_any": "Any"
|
||
},
|
||
"sdk_studio": {
|
||
"title": "Panel",
|
||
"subtitle": "Resumen de su servidor RustDesk",
|
||
"new_flow": "New Flow",
|
||
"open_flow": "Open Flow",
|
||
"save_flow": "Save Flow",
|
||
"import_flow": "Import Flow",
|
||
"run_flow": "Run",
|
||
"debug": "Debug",
|
||
"deploy": "Deploy",
|
||
"undo": "Undo",
|
||
"redo": "Redo",
|
||
"untitled": "Untitled Flow",
|
||
"code_mode": "Code Mode",
|
||
"toggle_grid": "Toggle Grid",
|
||
"zoom_in": "Zoom In",
|
||
"zoom_out": "Zoom Out",
|
||
"zoom_fit": "Fit to Screen",
|
||
"palette": "Node Palette",
|
||
"search_nodes": "Search nodes...",
|
||
"cat_sources": "Sources",
|
||
"cat_processing": "Processing",
|
||
"cat_outputs": "Outputs",
|
||
"empty_title": "No se encontraron dispositivos",
|
||
"empty_desc": "Drag nodes from the palette to start building a flow",
|
||
"browse_templates": "Browse Templates",
|
||
"inspector": "Inspector",
|
||
"select_node": "Select a node to inspect its properties",
|
||
"console": "Console",
|
||
"clear_console": "Clear",
|
||
"console_ready": "Studio ready",
|
||
"label": "Status",
|
||
"configuration": "Configuration",
|
||
"connections": "Connections",
|
||
"inputs": "Inputs",
|
||
"outputs": "Outputs",
|
||
"delete_node": "Delete Node",
|
||
"nodes": "Nodes",
|
||
"wires": "Wires",
|
||
"status_ready": "Ready",
|
||
"status_deployed": "Deployed",
|
||
"flow_name": "Flow Name",
|
||
"flow_desc": "Description",
|
||
"loading": "Cargando...",
|
||
"no_flows": "No saved flows yet",
|
||
"confirm_delete": "Are you sure you want to delete this item?",
|
||
"templates": "Templates",
|
||
"node_modbus_tcp": "Modbus TCP",
|
||
"node_modbus_rtu": "Modbus RTU",
|
||
"node_snmp_poll": "SNMP Poll",
|
||
"node_rest_poll": "REST Poll",
|
||
"node_mqtt_subscribe": "MQTT Subscribe",
|
||
"node_webhook": "Webhook",
|
||
"node_device_telemetry": "Device Telemetry",
|
||
"node_database_query": "Database Query",
|
||
"node_file_watch": "File Watch",
|
||
"node_filter": "Filter",
|
||
"node_transform": "Transform",
|
||
"node_aggregate": "Aggregate",
|
||
"node_delay": "Delay",
|
||
"node_debounce": "Debounce",
|
||
"node_switch": "Switch",
|
||
"node_merge": "Merge",
|
||
"node_script": "Script",
|
||
"node_widget_update": "Widget Update",
|
||
"node_alert": "Alert",
|
||
"node_command": "Command",
|
||
"node_log": "Log",
|
||
"node_rest_call": "REST Call",
|
||
"node_mqtt_publish": "MQTT Publish",
|
||
"node_database_write": "Database Write",
|
||
"node_email": "Email",
|
||
"node_modbus_write": "Modbus Write"
|
||
},
|
||
"updates": {
|
||
"tab_title": "Updates",
|
||
"title": "Panel",
|
||
"desc": "Descargue una copia de seguridad completa de la configuración de su consola, usuarios, grupos y ajustes. Los datos de peers del servidor Go se incluyen cuando el backend BetterDesk está activo.",
|
||
"current_version": "Installed version",
|
||
"latest_version": "Latest version",
|
||
"status": "Estado",
|
||
"check_now": "Verificar ahora",
|
||
"checking": "Verificando...",
|
||
"up_to_date": "Up to date",
|
||
"update_available": "Update available",
|
||
"changelog": "Release Notes",
|
||
"no_changelog": "No release notes available",
|
||
"files_changed": "Files changed",
|
||
"files": "Archivos",
|
||
"changes_unavailable": "Could not load file change list. You can still install the update.",
|
||
"create_backup": "Create backup before updating",
|
||
"install": "Install Update",
|
||
"install_confirm": "Are you sure you want to install this update? The console will restart after the update.",
|
||
"installing": "Installing update…",
|
||
"creating_backup": "Creating backup…",
|
||
"downloading": "Downloading files…",
|
||
"install_success": "Update installed successfully. Console is restarting…",
|
||
"install_failed": "Update installation failed",
|
||
"restarting": "Waiting for console to restart…",
|
||
"restart_complete": "Console restarted successfully",
|
||
"restart_timeout": "Console did not restart in time. Please check manually.",
|
||
"no_version": "No update version selected. Check for updates first.",
|
||
"backups_title": "Update Backups",
|
||
"backups_desc": "Pre-update backups created automatically before each update",
|
||
"no_backups": "No update backups found",
|
||
"restore": "Restore",
|
||
"restore_confirm": "¿Está seguro de que desea restaurar desde esta copia de seguridad? Las secciones seleccionadas serán sobrescritas.",
|
||
"restore_success": "Copia de seguridad restaurada correctamente. Algunos cambios pueden requerir recargar la página.",
|
||
"baseline_set": "Baseline set",
|
||
"commits_behind": "commits behind",
|
||
"total_files": "Total files",
|
||
"applied": "Applied",
|
||
"failed": "Failed",
|
||
"skipped": "Skipped",
|
||
"removed": "Removed",
|
||
"auto": "Auto",
|
||
"manual": "Manual",
|
||
"component_console": "Web Console",
|
||
"component_server": "Go Server",
|
||
"component_agent": "Agent",
|
||
"component_scripts": "Scripts & Docker",
|
||
"component_other": "Other",
|
||
"server_rebuild_warning": "Go Server source changed — binary rebuild required. Use the ALL-IN-ONE script or compile manually.",
|
||
"include_server": "Include Go Server (compile & deploy binary)",
|
||
"checking_go": "Checking Go…",
|
||
"go_not_found": "Go not installed",
|
||
"go_check_failed": "Could not check Go availability",
|
||
"server_building": "Compiling Go server… This may take a few minutes.",
|
||
"server_built": "Server binary compiled",
|
||
"server_build_failed": "Server compilation failed",
|
||
"server_deployed": "Server binary deployed",
|
||
"server_deploy_failed": "Server deploy failed",
|
||
"server_build_note": "Server compilation may take 1-5 minutes. The page will remain unresponsive during compilation.",
|
||
"server_source_downloading": "Downloading server source…",
|
||
"delete": "Delete",
|
||
"delete_confirm": "Permanently delete backup {name}? This cannot be undone.",
|
||
"delete_success": "Backup deleted",
|
||
"delete_failed": "Failed to delete backup",
|
||
"retention_label": "Keep N most recent backups",
|
||
"retention_hint": "Older backups are deleted automatically after each update. Use 0 to keep all backups.",
|
||
"retention_saved": "Retention setting saved",
|
||
"retention_invalid": "Retention must be an integer between 0 and 1000",
|
||
"retention_required_for_prune": "Set a retention value greater than 0 first",
|
||
"prune_now": "Apply now",
|
||
"prune_confirm": "Keep only the {n} most recent backups and delete the rest?",
|
||
"prune_done": "Pruned {n} backup(s)",
|
||
"total_size": "Total size",
|
||
"backups_count": "backup(s)",
|
||
"strategy_label": "Update method",
|
||
"strategy_download": "Download pre-built binary",
|
||
"strategy_compile": "Compile from source",
|
||
"both_available": "Download & Compile",
|
||
"download_available": "Download available",
|
||
"no_method": "No update method",
|
||
"no_release": "No release",
|
||
"available": "Available",
|
||
"server_downloading": "Downloading server binary…",
|
||
"server_downloaded": "Server binary downloaded",
|
||
"server_download_failed": "Server binary download failed",
|
||
"server_download_note": "A pre-built binary will be downloaded from GitHub Releases. This usually takes less than a minute.",
|
||
"install_go_hint": "Install Go from https://go.dev/dl/ to enable compilation, or publish a release with pre-built binaries",
|
||
"strategy_install_go": "Auto-install Go and compile",
|
||
"strategy_install_go_hint": "Downloads the official Go toolchain (~120 MB) into the console data directory, then compiles the server. Use this when Go is not installed on the host.",
|
||
"auto_strategy": "Auto",
|
||
"auto_strategy_hint": "The console will pick the best available method (download → compile → auto-install Go).",
|
||
"auto_available": "Auto-rebuild ready",
|
||
"toolchain_ready": "Toolchain installed",
|
||
"toolchain_will_install": "Go toolchain will be installed automatically",
|
||
"toolchain_downloading": "Downloading Go toolchain…",
|
||
"toolchain_failed": "Go toolchain install failed",
|
||
"modal_title": "Installing update",
|
||
"modal_done_title": "Update complete",
|
||
"modal_close": "Close",
|
||
"modal_reload_now": "Reload console",
|
||
"phase_confirm": "Confirmation",
|
||
"phase_backup": "Backup",
|
||
"phase_console": "Console files",
|
||
"phase_server": "Go server",
|
||
"phase_restart": "Restart",
|
||
"phase_done": "Done",
|
||
"preparing": "Preparing…",
|
||
"backup_skipped": "Backup skipped (per user choice)",
|
||
"server_skipped": "Go server skipped",
|
||
"server_not_selected": "Go server not selected",
|
||
"server_processing": "Processing Go server update…",
|
||
"no_restart_needed": "No restart required",
|
||
"complete": "Update applied",
|
||
"complete_summary": "The update has been applied successfully.",
|
||
"complete_with_errors": "The update finished, but some steps failed. See details below.",
|
||
"modal_done_with_errors_title": "Update finished with errors",
|
||
"console_will_restart": "Console process will restart now…",
|
||
"restart_complete_msg": "The console finished restarting. Click reload to load the new version. The page will reload automatically in 8 seconds.",
|
||
"refresh_recommended": "Static assets changed — reload the page to see the new UI.",
|
||
"confirm_title": "Apply update",
|
||
"confirm_with_backup": "A pre-update backup will be created automatically.",
|
||
"confirm_no_backup": "No backup will be created (proceed at your own risk)."
|
||
},
|
||
"permissions": {
|
||
"title": "Permissions",
|
||
"subtitle": "Manage role-based permissions and custom overrides",
|
||
"info_title": "How permissions work",
|
||
"info_desc": "Each role has default permissions. You can add or remove individual permissions per role by toggling them below. Custom overrides are highlighted and can be reverted to defaults at any time.",
|
||
"select_role": "Select role",
|
||
"select_role_placeholder": "Choose a role...",
|
||
"reset_overrides": "Reset all overrides",
|
||
"granted": "Granted",
|
||
"overrides": "Overrides",
|
||
"level": "Level",
|
||
"super_admin_tag": "Full access",
|
||
"server_level_tag": "Server-level",
|
||
"custom": "Custom",
|
||
"default": "Default",
|
||
"revert": "Revert to default",
|
||
"saved": "Permission updated",
|
||
"reverted": "Reverted to default",
|
||
"all_reverted": "All overrides reverted",
|
||
"confirm_reset": "Reset all custom overrides for this role to defaults?",
|
||
"empty_title": "Select a role",
|
||
"empty_desc": "Choose a role from the dropdown above to view and manage its permissions.",
|
||
"locked_title": "Super Admin",
|
||
"locked_desc": "Super Admin has all permissions by default and cannot be customized.",
|
||
"cat_device": "Devices",
|
||
"cat_user": "Users",
|
||
"cat_server": "Server",
|
||
"cat_org": "Organizations",
|
||
"cat_audit": "Audit & Monitoring",
|
||
"cat_cdap": "CDAP",
|
||
"cat_enrollment": "Enrollment",
|
||
"cat_chat": "Chat",
|
||
"cat_branding": "Branding",
|
||
"perm_device_view": "View devices",
|
||
"perm_device_connect": "Connect to devices",
|
||
"perm_device_edit": "Edit devices",
|
||
"perm_device_delete": "Delete devices",
|
||
"perm_device_ban": "Ban / unban devices",
|
||
"perm_device_change_id": "Change device ID",
|
||
"perm_user_view": "View users",
|
||
"perm_user_create": "Create users",
|
||
"perm_user_edit": "Edit users",
|
||
"perm_user_delete": "Delete users",
|
||
"perm_server_config": "Server configuration",
|
||
"perm_server_keys": "Manage API keys",
|
||
"perm_org_create": "Create organizations",
|
||
"perm_org_edit": "Edit organizations",
|
||
"perm_org_delete": "Delete organizations",
|
||
"perm_org_manage_users": "Manage organization users",
|
||
"perm_org_manage_devices": "Manage organization devices",
|
||
"perm_audit_view": "View audit logs",
|
||
"perm_metrics_view": "View metrics",
|
||
"perm_blocklist_edit": "Edit blocklist",
|
||
"perm_cdap_view": "View CDAP devices",
|
||
"perm_cdap_command": "Send CDAP commands",
|
||
"perm_cdap_terminal": "CDAP terminal access",
|
||
"perm_cdap_files": "CDAP file access",
|
||
"perm_enrollment_manage": "Manage enrollment",
|
||
"perm_enrollment_approve": "Approve enrollment",
|
||
"perm_chat_access": "Chat access",
|
||
"perm_branding_edit": "Edit branding"
|
||
},
|
||
"notifications": {
|
||
"title": "Notifications",
|
||
"empty": "No new notifications",
|
||
"mark_all_read": "Mark all read",
|
||
"see_all": "See all help requests",
|
||
"help_request": "Help request",
|
||
"just_now": "just now"
|
||
}
|
||
}
|