Documentation

Tout ce qu'il faut pour configurer, utiliser et dépanner Simple Locale au quotidien.

Comment fonctionne Simple Locale ?

Simple Locale traduit en direct les noms de tous les objets (catégories, variables, tuiles, liens) au sein d' catégorie que vous choisissez dans votre visualisation - y compris le contenu de variables de texte créées spécifiquement à cet effet, par ex. des textes d'aide ou des HTMLBox entières. Si un lien pointe vers une variable de type chaîne de caractères en dehors de la catégorie de votre visualisation, le contenu de cette variable sera également traduit.

La traduction elle-même est prise en charge automatiquement par un service linguistique en arrière-plan : un fournisseur gratuit dès le départ, sans aucune configuration, avec en option Google Cloud Translate et/ou DeepL pour des quotas gratuits plus élevés et davantage de langues. Si un service échoue ou que son quota est épuisé, le suivant dans la chaîne prend automatiquement le relais.

Chaque texte n'est traduit qu'une seule fois puis enregistré durablement - un nouveau balayage ne traduit que les entrées nouvelles ou encore vides, jamais celles déjà existantes. Cela vaut aussi pour les traductions que vous corrigez manuellement dans le formulaire de configuration : elles ne sont jamais écrasées automatiquement.

Le changement de langue se fait via une tuile compacte dédiée avec un menu déroulant intégré directement dans votre visualisation - aucune variable supplémentaire n'est nécessaire.

La tuile de sélection de langue telle qu'elle apparaît dans la visualisation.
La tuile de sélection de langue telle qu'elle apparaît dans la visualisation.
La même tuile au petit format 2×1.
La même tuile au petit format 2×1.
Une édition spéciale, également en 2×1 : icône et modèle propres – ici les langues sous forme de drapeaux plutôt qu'en liste déroulante.
Une édition spéciale, également en 2×1 : icône et modèle propres – ici les langues sous forme de drapeaux plutôt qu'en liste déroulante.

Mise en place dans IP-Symcon

⚠️ Important avant de commencer : faites une sauvegarde de votre système Symcon. Cela vaut de manière générale avant toute installation ou configuration de module, pas seulement pour Simple Locale - vous pourrez ainsi toujours revenir sans stress au dernier état fonctionnel en cas de problème.

Installez le module via le Module Store : il y figure sous le nom Simple Locale, sans le complément « for IP-Symcon ». Ou ajoutez le module manuellement dans Module Control via l'URL GitHub https://github.com/AllardLiao/SimpleLocaleForIPS.

Sélectionnez la catégorie de votre visualisation où vous souhaitez que la vignette de sélection de langue apparaisse, cliquez dessus avec le bouton droit et sélectionnez « Créer une instance ». Dans la boîte de dialogue qui suit, recherchez « Simple Locale » et sélectionnez le module - l'instance se place directement à cet endroit sous forme de tuile compacte.

La zone de configuration de l'instance en un coup d'œil : les sections « Configuration », « Traduction » et « Licence », suivies des boutons d'action et des panneaux « Informations produit » et « Conditions d'utilisation ».
La zone de configuration de l'instance en un coup d'œil : les sections « Configuration », « Traduction » et « Licence », suivies des boutons d'action et des panneaux « Informations produit » et « Conditions d'utilisation ».

Dans la configuration de l'instance, sélectionnez sous « Visualisation en tuiles » votre propre instance de visualisation - généralement celle où se trouve la tuile Simple Locale elle-même. La catégorie de départ propre à cette instance de visualisation est automatiquement utilisée comme racine de traduction. Sans instance sélectionnée, la traduction reste inactive.

La zone de configuration de l'instance : visualisation en tuiles, langue source, langue active et le panneau des fournisseurs de traduction.
La zone de configuration de l'instance : visualisation en tuiles, langue source, langue active et le panneau des fournisseurs de traduction.

💡 Conseil : L'effort d'obtenir une clé Google Cloud Translate ou DeepL en vaut la peine - notre expérience avec le fournisseur gratuit MyMemory le montre clairement. Saisissez-la et appliquez les modifications avant de choisir votre première langue cible : la liste affiche ensuite les langues réellement prises en charge par Google ou DeepL, et non la liste de base intégrée, plus restreinte. Et une clé d'API en vaut la peine dès la période d'essai : les traductions, les réglages et le cache intégré sont conservés lorsque vous activez plus tard une clé de licence dans la même instance. Vous ne repartez pas de zéro, et la meilleure qualité de traduction perdure, même une fois un quota épuisé et le retour automatique à MyMemory.

Cliquez une fois sur « Réanalyser la visualisation » pour que Simple Locale trouve vos objets et lance la première traduction. Ensuite, une planification (réanalyse automatique, fonction Pro) ou un simple nouveau clic lorsque nécessaire permet de la maintenir à jour.

💡 Conseil pour le premier scan : commencez par une seule langue cible et lisez la visualisation avec celle-ci. Simple Locale relève délibérément aussi les objets masqués dans la visualisation - le fait qu'un élément soit visible peut changer à tout moment. Mais on y trouve souvent des scripts, des actions ou des variables auxiliaires que personne ne lira jamais. Excluez ces lignes après le premier passage via la case « Traduction active » (édition Pro) - la colonne « Chemin » vous indique où se situe une ligne dans l'arborescence - et n'activez les autres langues cibles qu'ensuite : chaque langue supplémentaire ne traduira plus que ce que quelqu'un voit réellement. Plus de détails dans la FAQ.

Les tableaux de traduction après le premier scan : dans la colonne « Traduction active », les trois scripts d'action sont décochés - ils restent au texte d'origine dans toutes les langues et ne consomment plus aucune traduction.
Les tableaux de traduction après le premier scan : dans la colonne « Traduction active », les trois scripts d'action sont décochés - ils restent au texte d'origine dans toutes les langues et ne consomment plus aucune traduction.

Si vous disposez d'une clé de licence, saisissez-la dans le panneau "Licence", appliquez les modifications et cliquez sur le bouton "Activer/mettre à jour la licence". Les icônes et tuiles pouvant faire partie de l'édition sont également rechargées depuis notre serveur.

Les boutons d'action de l'instance : « Activer la licence », « Réanalyser la visualisation et compléter les traductions manquantes », « Supprimer les traductions des éléments qui ne sont plus dans la visualisation », « Vider le cache de traduction » et « Vérifier les fournisseurs de traduction ».
Les boutons d'action de l'instance : « Activer la licence », « Réanalyser la visualisation et compléter les traductions manquantes », « Supprimer les traductions des éléments qui ne sont plus dans la visualisation », « Vider le cache de traduction » et « Vérifier les fournisseurs de traduction ».

Chaque objet peut être exclu définitivement de la traduction, quelle que soit la langue - par ID d'objet, via la case « Traduction active » dans le tableau de traduction correspondant, par exemple pour les noms des occupants du logement, qui doivent rester identiques dans toutes les langues. (Fait partie de l'édition Pro - plus de détails dans la FAQ.)

⚠️ Une seule instance Simple Locale par arborescence de visualisation. Deux instances actives qui partagent la même arborescence - ou même seulement quelques variables de type chaîne - se contrarient mutuellement : à chaque changement de langue, chacune écrit sa propre traduction dans les mêmes objets, et chacune prend l'écriture de l'autre pour une modification externe. Pour les « textes personnalisés », c'est particulièrement délicat, car leurs variables de type chaîne sont surveillées en direct : l'instance A écrit sa traduction, l'instance B la considère comme un nouveau texte source, la retraduit et la réécrit, ce qui déclenche à son tour l'instance A. Il en résulte des traductions de traductions qui s'éloignent un peu plus de l'original à chaque tour, et un flot continu de requêtes API qui épuise rapidement n'importe quel quota journalier. Si vous souhaitez traduire plusieurs visualisations, attribuez à chaque instance sa propre arborescence, sans recoupement.

Langues et fournisseurs de traduction

La « Langue de scan » en haut est le paramètre par défaut attribué à une nouvelle ligne détectée lors de sa première analyse. Chaque ligne des sections « Noms des objets », « Textes personnalisés », « Légendes », « Automatisations » et « Salutation » possède également sa propre colonne « Langue source » modifiable (fonctionnalité Pro modification manuelle des traductions sans cette fonctionnalité, cette colonne est uniquement visible à titre informatif). Ceci permet une correspondance précise avec les installations multilingues : par exemple, un module tiers qui fournit en permanence ses propres noms et valeurs d'objets en anglais, tandis que le reste de l'installation est analysé en allemand.

Les langues cibles sont choisies dans une liste intégrée ou, dès qu'une clé Google ou DeepL est configurée, dans leur liste de langues respective, plus large et chargée en direct.

Sans fournisseur payant, le service gratuit continue de traduire de façon fiable. Avec une ou deux clés configurées (Google/DeepL), l'ordre exact d'enchaînement dépend de votre édition - voir les détails sur la page tarifs et dans la FAQ.

Changer de fournisseur (par exemple de Google à DeepL) est désormais sans conséquence : Simple Locale conserve les codes de langue en interne dans une seule notation et les convertit pour chaque fournisseur. Les langues cibles déjà choisies sont conservées et une même langue n'apparaît plus deux fois dans la liste. Une particularité subsiste : Google ne connaît pas les variantes régionales - une langue cible telle que « en-gb » y est traduite comme « en ».

Le panneau « Fournisseur de traduction » : ajoutez une clé API Google et/ou DeepL, choisissez le fournisseur préféré - sans rien renseigner, le fournisseur gratuit traduit immédiatement.
Le panneau « Fournisseur de traduction » : ajoutez une clé API Google et/ou DeepL, choisissez le fournisseur préféré - sans rien renseigner, le fournisseur gratuit traduit immédiatement.

Obtenir une clé API Google Cloud Translate

  1. Connectez-vous sur console.cloud.google.com avec un compte Google et créez un nouveau projet (ou choisissez-en un existant).
  2. Dans "APIs et services" → "Bibliothèque", recherchez "Cloud Translation API" et activez-la.
  3. Configurez un compte de facturation (carte bancaire) - Google l'exige même dans le cadre du quota gratuit mensuel (actuellement 500 000 caractères) ; sans moyen de paiement enregistré, l'accès est refusé.
  4. Dans "APIs et services" → "Identifiants" → "Créer des identifiants" → "Clé API", générez une nouvelle clé (idéalement en la restreignant à la Cloud Translation API) et collez-la dans le champ "Google Cloud Translate API-Key" de la configuration de l'instance.

Obtenir une clé API DeepL

  1. Inscrivez-vous sur deepl.com/pro-api pour "DeepL API Free" ou "DeepL API Pro" - Free suffit pour la plupart des installations et est gratuit jusqu'à un quota unique (actuellement 1 000 000 de caractères, ce n'est plus un quota mensuel renouvelable - une mise à niveau vers "DeepL API Pro" est nécessaire ensuite).
  2. Dans votre compte DeepL, sous "Compte" → "Clés API pour DeepL API", copiez la clé et collez-la dans le champ "DeepL API-Key" de la configuration de l'instance.

Les clés DeepL gratuites se terminent toujours par :fx - Simple Locale le détecte automatiquement et contacte alors le serveur gratuit correspondant, sans réglage supplémentaire de votre part.

La tuile

Le sélecteur de langue apparaît lui-même comme une tuile compacte directement dans votre visualisation - pas de variable supplémentaire, pas de fenêtre séparée nécessaire. Son apparence peut être personnalisée dans la section « Paramètres de la tuile » de la configuration de l'instance.

Le panneau « Paramètres de la tuile » : afficher/masquer les icônes dans la tuile, afficher les statistiques de traduction, ou fournir votre propre tuile de sélection de langue via HTML (édition Pro).
Le panneau « Paramètres de la tuile » : afficher/masquer les icônes dans la tuile, afficher les statistiques de traduction, ou fournir votre propre tuile de sélection de langue via HTML (édition Pro).

Dans l'apparence par défaut intégrée, la tuile affiche un menu déroulant de langue avec drapeau et nom de la langue, éventuellement l'icône Simple Locale et un symbole d'information (ⓘ), ainsi qu'une petite ligne de statistiques (« 1 traductions/h, 125 caractères/h ») - chacun de ces éléments peut être affiché ou masqué individuellement.

Pour quelque chose de plus personnalisé, à partir de l'édition Pro, vous pouvez concevoir votre propre tuile via HTML - par exemple seulement deux drapeaux cliquables, sans menu déroulant, icône ni statistiques, comme dans l'exemple ci-dessous.

La tuile par défaut intégrée avec toutes les options activées : icône, menu déroulant de langue, symbole d'information et ligne de statistiques.
La tuile par défaut intégrée avec toutes les options activées : icône, menu déroulant de langue, symbole d'information et ligne de statistiques.
Une tuile conçue sur mesure via HTML (édition Pro) - réduite ici à deux drapeaux cliquables, sans menu déroulant ni statistiques.
Une tuile conçue sur mesure via HTML (édition Pro) - réduite ici à deux drapeaux cliquables, sans menu déroulant ni statistiques.

Version d'essai et licence

La version d'essai dispose de toutes les fonctions de l'édition Pro : une langue cible librement choisie, pendant 30 jours, à compter de la première configuration enregistrée. Vous n'essayez donc pas avec une langue de figuration, mais avec une langue que vous pourrez continuer à utiliser ensuite.

Tout est inclus : réanalyse automatique planifiée, Google et DeepL chaînés devant le fournisseur gratuit, votre propre table de traduction prioritaire, le glossaire avec unités et points cardinaux préremplis, l'édition manuelle des traductions, la traduction désactivable par objet et votre propre tuile de sélection de langue. Seul le nombre de langues cibles est limité.

Installez le module « Simple Locale » depuis le Module Store d'IP-Symcon, créez une instance et c'est parti ! La période d'essai démarre à la première configuration enregistrée.

Au bout de 30 jours, la visualisation revient visiblement aux textes d'origine et un changement de langue affiche un message sur l'achat d'une licence au lieu de la traduction. C'est la preuve la plus honnête que le module fait quelque chose : vous voyez immédiatement ce qui manque sans lui.

La version complète existe en trois éditions qui diffèrent par le nombre de langues, l'enchaînement des fournisseurs et les fonctions supplémentaires - voir la comparaison exacte sur la page tarifs. Après l'achat, saisissez votre clé dans le champ « Clé de licence » et cliquez sur « Activer/mettre à jour la licence ».

Vous avez déjà une licence et souhaitez passer à une édition supérieure ? Faites-le sur la page de mise à niveau sans tout racheter. Clé égarée ? La page de renvoi vous renvoie toutes vos clés par e-mail.

Les conditions de licence complètes se trouvent sur la page de licence.

Conseils et pièges fréquents

Pour les liens, le lien lui-même possède aussi son propre champ Name (Nom) - celui-ci doit également être renseigné, pas seulement le nom de l'objet lié.
Pour les liens, le lien lui-même possède aussi son propre champ Name (Nom) - celui-ci doit également être renseigné, pas seulement le nom de l'objet lié.

Commandes PHP pour vos propres scripts

Pour vos propres tuiles HTMLBox ou scripts en dehors des objets directement renommés en direct, Simple Locale propose les commandes suivantes :

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

Renvoie le contenu traduit d'une variable « texte personnalisé » suivie, dans la langue actuellement active (repli sur le texte original).

void SLOC_Rescan(int $InstanceID);

Relit la catégorie de départ de la visualisation en tuiles sélectionnée et traduit les entrées nouvellement trouvées ou encore ouvertes - équivalent au bouton « Réanalyser la visualisation ».

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

Traduit en direct un texte quelconque que vous transmettez, dans la langue actuellement active de cette instance - pratique pour vos propres modules dotés de leur propre tuile.

string SLOC_GetCurrentLanguageCode(int $InstanceID);

Renvoie le code de la langue actuellement active (par ex. « en ») - utile pour ne reconstruire votre propre contenu qu'en cas de changement de langue réel.

string SLOC_GetAvailableLanguages(int $InstanceID);

Renvoie la liste des langues actuellement sélectionnables au format JSON (code, nom affiché et indication de la langue active) - la base pour construire votre propre tuile de sélection de langue totalement indépendante. Nécessite l'édition Pro (fonctionnalité « Tuile de sélection de langue personnalisée »).

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

Définit la langue active depuis votre propre tuile/script, exactement comme un clic dans le menu déroulant intégré (y compris les vérifications de période d'essai/limite de fréquence). Nécessite l'édition Pro (fonctionnalité « Tuile de sélection de langue personnalisée »).

Balises pour vos propres tuiles

Vos propres modèles de tuile et les designs livrés avec une édition peuvent utiliser deux balises. Simple Locale les remplace par du JSON valide au moment de livrer la tuile : vous pouvez donc les écrire directement dans une affectation JavaScript.

<!--AVAILABLE_LANGUAGES-->

Renvoie toutes les langues configurées sous forme de liste JSON, avec pour chacune son code, son nom affiché et si elle est active à cet instant.

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

Renvoie le code de la langue active sous forme de chaîne JSON.

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

Les deux balises ne sont liées à aucune édition et sont également disponibles pendant la période d'essai. C'est ce qui les distingue de la commande PHP au nom voisin SLOC_GetAvailableLanguages(), qui exige l'édition Pro.

Les deux balises sont remplies une seule fois, au chargement de la tuile, et ne changent plus ensuite. Si votre modèle doit suivre la langue active en direct, définissez cette fonction : Simple Locale l'appelle à chaque changement de langue :

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

Le point d'accroche est une fonction globale et s'écrit exactement ainsi, en minuscules : slocOnLanguageChange. Les commandes de la tuile portent en outre leurs propres classes CSS préfixées par sloc- (sloc-select-row, sloc-globe, sloc-tile-icon …), avec lesquelles vous mettez en forme la tuile dans votre propre modèle.

Question sans réponse ?

Consultez la FAQ ou écrivez-nous directement via le support.

Accéder au support