Documentación

Todo lo que necesitas para configurar, usar y solucionar problemas de Simple Locale en el día a día.

¿Cómo funciona Simple Locale?

Simple Locale traduce en vivo los nombres de todos los objetos (categorías, variables, tarjetas, enlaces) dentro de la categoría que tú eliges en tu visualización, incluyendo el contenido de variables de texto creadas específicamente para ello, p. ej. textos de ayuda o HTMLBoxes completos. Si un enlace apunta a una variable de cadena que se encuentra fuera de la categoría de su visualización, el contenido de esa variable de cadena también se traducirá.

La traducción en sí la gestiona automáticamente un servicio de idiomas en segundo plano: de fábrica, un proveedor gratuito sin ninguna configuración, y opcionalmente Google Cloud Translate y/o DeepL para cuotas gratuitas mayores y más idiomas. Si un servicio falla o se agota su cuota, el siguiente de la cadena entra automáticamente en acción.

Cada texto se traduce una sola vez y luego se guarda de forma permanente - un nuevo escaneo solo traduce entradas nuevas o aún vacías, nunca las que ya existen. Esto también aplica a las traducciones que corriges manualmente en el formulario de configuración: nunca se sobrescriben automáticamente.

El cambio de idioma se realiza mediante una tarjeta propia y compacta con un menú desplegable integrado directamente en tu visualización - no se necesita ninguna variable adicional.

La tarjeta de selección de idioma tal como aparece en la visualización.
La tarjeta de selección de idioma tal como aparece en la visualización.
El mismo mosaico en el tamaño pequeño de 2×1.
El mismo mosaico en el tamaño pequeño de 2×1.
Una edición especial, también de 2×1: icono y plantilla propios – aquí los idiomas como banderas en lugar de una lista desplegable.
Una edición especial, también de 2×1: icono y plantilla propios – aquí los idiomas como banderas en lugar de una lista desplegable.

Configuración en IP-Symcon

⚠️ Importante antes de empezar: haz una copia de seguridad de tu sistema Symcon. Esto vale en general antes de instalar o configurar cualquier módulo, no solo Simple Locale - así podrás volver sin estrés al último estado que funcionaba si algo sale mal.

Instala el módulo desde la Module Store: allí aparece como Simple Locale, sin el añadido «for IP-Symcon». O añade el módulo manualmente en Module Control mediante la URL de GitHub https://github.com/AllardLiao/SimpleLocaleForIPS.

Seleccione la categoría de su visualización donde desea que aparezca el mosaico de selección de idioma, haga clic con el botón derecho allí y seleccione "Crear instancia". En el diálogo que aparece, busca "Simple Locale" y selecciona el módulo - la instancia se coloca justo ahí como su propia tarjeta compacta.

El área de configuración de la instancia de un vistazo: las secciones "Configuración", "Traducción" y "Licencia", seguidas de los botones de acción y los paneles "Información del producto" y "Condiciones de uso".
El área de configuración de la instancia de un vistazo: las secciones "Configuración", "Traducción" y "Licencia", seguidas de los botones de acción y los paneles "Información del producto" y "Condiciones de uso".

En la configuración de la instancia, selecciona en "Visualización de mosaicos" tu propia instancia de visualización - normalmente la misma en la que se encuentra la tarjeta de Simple Locale. La categoría de inicio propia de esa instancia de visualización se usa automáticamente como raíz de traducción. Sin una instancia seleccionada, la traducción permanece inactiva.

El área de configuración de la instancia: visualización en mosaico, idioma base, idioma activo y el panel de proveedores de traducción.
El área de configuración de la instancia: visualización en mosaico, idioma base, idioma activo y el panel de proveedores de traducción.

💡 Consejo: Merece la pena el esfuerzo de conseguir una clave de Google Cloud Translate o DeepL; nuestra experiencia con el proveedor gratuito MyMemory lo deja claro. Introdúcela y aplica los cambios antes de elegir tu primer idioma de destino: a partir de ahí, la lista muestra los idiomas que Google o DeepL admiten realmente, en lugar de la lista básica integrada, más reducida. Y una clave de API merece la pena ya durante la prueba: las traducciones, los ajustes y la caché integrada se conservan cuando más adelante actives una clave de licencia en la misma instancia. No empiezas de cero, y la mejor calidad de traducción perdura, incluso cuando un cupo se agote y se vuelva automáticamente a MyMemory.

Haz clic una vez en "Volver a escanear la visualización" para que Simple Locale encuentre tus objetos e inicie la primera traducción. Después, un horario (reescaneo automático, función Pro) o tú mismo, haciendo clic de nuevo cuando lo necesites, se encargan de mantenerlo actualizado.

💡 Consejo para el primer escaneo: empieza con una sola lengua de destino y lee así la visualización. Simple Locale registra a propósito también los objetos ocultos en la visualización - que algo sea visible puede cambiar en cualquier momento. Entre ellos, sin embargo, suele haber scripts, acciones o variables auxiliares que nadie llegará a leer nunca. Excluye esas filas tras la primera pasada mediante la casilla "Traducción activa" (edición Pro) - la columna "Ruta" te muestra dónde está cada fila en el árbol - y activa solo después las demás lenguas de destino: así cada idioma adicional traducirá únicamente lo que alguien ve de verdad. Más detalles en las preguntas frecuentes.

Las tablas de traducción tras el primer escaneo: en la columna "Traducción activa" los tres scripts de acción están desmarcados; se quedan en el original en todos los idiomas y ya no consumen ninguna traducción.
Las tablas de traducción tras el primer escaneo: en la columna "Traducción activa" los tres scripts de acción están desmarcados; se quedan en el original en todos los idiomas y ya no consumen ninguna traducción.

Si dispone de una clave de licencia, introdúzcala en el panel "Licencia", aplique los cambios y haga clic en el botón "Activar/actualizar licencia". Esto también descargará los iconos y mosaicos correspondientes a su edición desde nuestro servidor.

Los botones de acción de la instancia: "Activar licencia", "Volver a escanear la visualización y completar traducciones pendientes", "Eliminar traducciones de elementos que ya no están en la visualización", "Vaciar caché de traducción" y "Comprobar proveedores de traducción".
Los botones de acción de la instancia: "Activar licencia", "Volver a escanear la visualización y completar traducciones pendientes", "Eliminar traducciones de elementos que ya no están en la visualización", "Vaciar caché de traducción" y "Comprobar proveedores de traducción".

Cada objeto se puede excluir de forma permanente de la traducción, sea cual sea el idioma - por ID de objeto, mediante la casilla "Traducción activa" en la tabla de traducción correspondiente, por ejemplo para los nombres de los habitantes de la casa, que deben permanecer iguales en todos los idiomas. (Parte de la edición Pro - más detalles en las preguntas frecuentes.)

⚠️ Solo una instancia de Simple Locale por árbol de visualización. Dos instancias activas que comparten el mismo árbol, o incluso solo algunas variables de cadena, trabajan una contra otra: en cada cambio de idioma cada una escribe su propia traducción en los mismos objetos y cada una interpreta la escritura de la otra como un cambio externo. En los "textos propios" esto resulta especialmente delicado, porque sus variables de cadena se vigilan en directo: la instancia A escribe su traducción, la instancia B la toma como nuevo texto original, la traduce de nuevo y la vuelve a escribir, lo que a su vez activa a la instancia A. El resultado son traducciones de traducciones que se alejan cada vez más del original y un flujo continuo de peticiones a la API que agota cualquier cuota diaria en poco tiempo. Si quieres traducir varias visualizaciones, asigna a cada instancia su propio árbol sin solapamientos.

Idiomas y proveedores de traducción

El campo "Idioma de escaneo" en la parte superior es la configuración predeterminada asignada a una fila recién descubierta durante su primer escaneo. Cada fila en "Nombres de objetos", "Textos personalizados", "Etiquetas", "Automatizaciones" y "Saludo" también tiene su propia columna editable de "Idioma de origen" (función Pro Edición manual de traducciones; sin esta función, solo es visible con fines informativos). Esto permite una asignación precisa de instalaciones con varios idiomas; por ejemplo, un módulo de terceros que entrega permanentemente sus propios nombres y valores de objetos en inglés, mientras que el resto de la instalación se escanea en alemán.

Los idiomas de destino se eligen de una lista integrada o, en cuanto se configura una clave de Google o DeepL, de su respectiva lista de idiomas, más amplia y cargada en vivo.

Sin un proveedor de pago, el servicio gratuito sigue traduciendo con fiabilidad. Con una o dos claves configuradas (Google/DeepL), el orden exacto de encadenamiento depende de tu edición - encontrarás los detalles en la página de precios y en las FAQ.

Cambiar de proveedor (por ejemplo, de Google a DeepL) ya no tiene consecuencias: Simple Locale mantiene los códigos de idioma internamente en una única notación y los convierte para cada proveedor. Los idiomas de destino ya elegidos se conservan y el mismo idioma deja de aparecer dos veces en la lista. Queda una particularidad: Google no conoce variantes regionales; un idioma de destino como "en-gb" se traduce allí como "en".

El panel "Proveedor de traducción": añade una clave API de Google y/o DeepL, elige el proveedor preferido - sin introducir nada, el proveedor gratuito traduce de inmediato.
El panel "Proveedor de traducción": añade una clave API de Google y/o DeepL, elige el proveedor preferido - sin introducir nada, el proveedor gratuito traduce de inmediato.

Cómo obtener una clave de API de Google Cloud Translate

  1. Inicia sesión en console.cloud.google.com con una cuenta de Google y crea un proyecto nuevo (o elige uno existente).
  2. En "APIs y servicios" → "Biblioteca", busca "Cloud Translation API" y actívala.
  3. Configura una cuenta de facturación (tarjeta de crédito) - Google la exige incluso dentro de la cuota gratuita mensual (actualmente 500.000 caracteres); sin un método de pago registrado se deniega el acceso.
  4. En "APIs y servicios" → "Credenciales" → "Crear credenciales" → "Clave de API", genera una clave nueva (lo ideal es restringirla a la Cloud Translation API) y pégala en el campo "Google Cloud Translate API-Key" de la configuración de la instancia.

Cómo obtener una clave de API de DeepL

  1. Regístrate en deepl.com/pro-api para "DeepL API Free" o "DeepL API Pro" - Free es suficiente para la mayoría de las instalaciones y es gratuita hasta una cuota única (actualmente 1.000.000 de caracteres, ya no es una cuota mensual recurrente - después es necesario actualizar a "DeepL API Pro").
  2. En tu cuenta de DeepL, en "Cuenta" → "Claves de API para DeepL API", copia la clave y pégala en el campo "DeepL API-Key" de la configuración de la instancia.

Las claves gratuitas de DeepL siempre terminan en :fx - Simple Locale lo detecta automáticamente y se conecta al servidor gratuito correspondiente, sin que tengas que configurar nada más.

La tarjeta

El propio selector de idioma aparece como una tarjeta compacta directamente en tu visualización - sin variable adicional, sin ventana emergente aparte. Su aspecto se puede personalizar en la sección "Ajustes de la tarjeta" de la configuración de la instancia.

El panel "Ajustes de la tarjeta": mostrar/ocultar iconos en la tarjeta, ver estadísticas de traducción, o usar tu propia tarjeta de selección de idioma mediante HTML (edición Pro).
El panel "Ajustes de la tarjeta": mostrar/ocultar iconos en la tarjeta, ver estadísticas de traducción, o usar tu propia tarjeta de selección de idioma mediante HTML (edición Pro).

En el aspecto predeterminado integrado, la tarjeta muestra un desplegable de idioma con bandera y nombre del idioma, opcionalmente el icono de Simple Locale y un símbolo de información (ⓘ), además de una pequeña línea de estadísticas ("1 traducciones/h, 125 caracteres/h") - cada uno de estos elementos se puede mostrar u ocultar por separado.

Si prefieres algo más personalizado, desde la edición Pro puedes diseñar tu propia tarjeta mediante HTML - por ejemplo, solo dos banderas pulsables sin desplegable, icono ni estadísticas, como en el ejemplo de abajo.

La tarjeta predeterminada integrada con todas las opciones activadas: icono, desplegable de idioma, símbolo de información y línea de estadísticas.
La tarjeta predeterminada integrada con todas las opciones activadas: icono, desplegable de idioma, símbolo de información y línea de estadísticas.
Una tarjeta creada a medida mediante HTML (edición Pro) - reducida aquí a dos banderas pulsables, sin desplegable ni estadísticas.
Una tarjeta creada a medida mediante HTML (edición Pro) - reducida aquí a dos banderas pulsables, sin desplegable ni estadísticas.

Versión de prueba y licencia

La versión de prueba tiene todas las funciones de la edición Pro: un idioma de destino de libre elección, durante 30 días, a partir de la primera configuración guardada. Así no pruebas con un idioma simbólico, sino con uno que podrás seguir usando después.

Está incluido todo: reescaneo automático programado, Google y DeepL encadenados por delante del proveedor gratuito, tu propia tabla de traducción con prioridad, el glosario con unidades y puntos cardinales predefinidos, la edición manual de las traducciones, la traducción desactivable por objeto y tu propia baldosa de selección de idioma. Solo está limitado el número de idiomas de destino.

Instala el módulo «Simple Locale» desde la Module Store de IP-Symcon, crea una instancia y ¡adelante! El periodo de prueba empieza con la primera configuración guardada.

Pasados los 30 días, la visualización vuelve de forma visible a los textos originales y, al cambiar de idioma, aparece un aviso sobre la compra de una licencia en lugar de la traducción. Es la prueba más honesta de que el módulo hace algo: ves de inmediato lo que falta sin él.

La versión completa está disponible en tres ediciones que se diferencian en el número de idiomas, el encadenamiento de proveedores y funciones adicionales - consulta la comparación exacta en la página de precios. Tras la compra, introduce tu clave en el campo "Clave de licencia" y haz clic en "Activar/actualizar licencia".

¿Ya tienes una licencia y quieres pasar a una edición superior? Hazlo en la página de actualización sin comprar desde cero. ¿Perdiste tu clave? La página de reenvío te envía de nuevo todas tus claves por correo.

Las condiciones de licencia completas están en la página de licencia.

Consejos y errores habituales

En los enlaces (links), el propio enlace también tiene su propio campo Name (Nombre) - este debe rellenarse también, no solo el nombre del objeto enlazado.
En los enlaces (links), el propio enlace también tiene su propio campo Name (Nombre) - este debe rellenarse también, no solo el nombre del objeto enlazado.

Comandos PHP para tus propios scripts

Para tus propias tarjetas HTMLBox o scripts fuera de los objetos renombrados directamente en vivo, Simple Locale ofrece los siguientes comandos:

string SLOC_TranslateText(int $InstanceID, int $ObjectID);

Devuelve el contenido traducido de una variable de "texto propio" monitorizada en el idioma actualmente activo (con el texto original como alternativa).

void SLOC_Rescan(int $InstanceID);

Vuelve a leer la categoría de inicio de la visualización en mosaico seleccionada y traduce las entradas nuevas o aún pendientes - equivale al botón "Volver a escanear la visualización".

string SLOC_TranslateExternalText(int $InstanceID, string $Text, string $SourceLanguage);

Traduce en vivo cualquier texto que le pases al idioma actualmente activo de esta instancia - útil para tus propios módulos con su propia tarjeta.

string SLOC_GetCurrentLanguageCode(int $InstanceID);

Devuelve el código del idioma actualmente activo (p. ej. "en") - útil para reconstruir tu propio contenido solo cuando realmente cambia el idioma.

string SLOC_GetAvailableLanguages(int $InstanceID);

Devuelve la lista de idiomas actualmente seleccionables como JSON (código, nombre visible y si es el idioma activo) - la base para construir tu propio mosaico de selección de idioma totalmente independiente. Requiere la edición Pro (función "Mosaico de selección de idioma propio").

void SLOC_SetLanguage(int $InstanceID, string $LanguageCode);

Establece el idioma activo desde tu propio mosaico/script, exactamente igual que un clic en el menú desplegable integrado (incluidas las comprobaciones de periodo de prueba/límite de frecuencia). Requiere la edición Pro (función "Mosaico de selección de idioma propio").

Marcadores para tus propias baldosas

Tus propias plantillas de baldosa y los diseños incluidos en una edición pueden usar dos marcadores. Simple Locale los sustituye por JSON válido al entregar la baldosa, así que puedes escribirlos directamente en una asignación de JavaScript.

<!--AVAILABLE_LANGUAGES-->

Devuelve todos los idiomas configurados como lista JSON, cada uno con su código, su nombre visible y si está activo en ese momento.

[{"code":"de","name":"Deutsch","current":true},{"code":"en","name":"English","current":false}]
<!--ACTIVE_LANGUAGE-->

Devuelve el código del idioma activo como cadena JSON.

"de"
var langs = <!--AVAILABLE_LANGUAGES-->; var active = <!--ACTIVE_LANGUAGE-->;

Ambos marcadores no dependen de ninguna edición y están disponibles también durante el periodo de prueba. En eso se diferencian del comando PHP de nombre parecido SLOC_GetAvailableLanguages(), que requiere la edición Pro.

Ambos marcadores se rellenan una sola vez, al cargar la baldosa, y después no cambian. Si quieres que tu plantilla siga el idioma activo en vivo, define esta función: Simple Locale la llama en cada cambio de idioma:

window.slocOnLanguageChange = function (activeLanguage, availableLanguages) { … };

El enganche es una función global y se escribe exactamente así, en minúsculas: slocOnLanguageChange. Los controles de la baldosa llevan además sus propias clases CSS con el prefijo sloc- (sloc-select-row, sloc-globe, sloc-tile-icon …), con las que das estilo a la baldosa en tu propia plantilla.

¿Tu pregunta no está aquí?

Consulta las FAQ o escríbenos directamente a través del soporte.

Ir a soporte