From 2ff735cb80f500a491a8bc7d42d70f78437e08f8 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Tue, 13 Jan 2026 00:21:56 +0000 Subject: [PATCH 01/17] [Jenkins] Updated translation --- docs/de_DE/changelog.md | 5 +++++ docs/en_US/changelog.md | 5 +++++ docs/es_ES/changelog.md | 5 +++++ docs/i18n/de_DE.json | 4 +++- docs/i18n/en_US.json | 4 +++- docs/i18n/es_ES.json | 4 +++- docs/i18n/fr_FR.json | 4 +++- docs/i18n/pt_PT.json | 4 +++- docs/pt_PT/changelog.md | 5 +++++ 9 files changed, 35 insertions(+), 5 deletions(-) diff --git a/docs/de_DE/changelog.md b/docs/de_DE/changelog.md index 4c157a8..c309a72 100644 --- a/docs/de_DE/changelog.md +++ b/docs/de_DE/changelog.md @@ -4,6 +4,11 @@ > >Zur Erinnerung: Wenn keine Informationen zur Aktualisierung vorliegen, liegt dies daran, dass es sich nur um die Aktualisierung von Dokumentation, Übersetzung oder Text handelt +# 12.01.2026 + +- Bug-Fix +- Verbesserte Gerätesynchronisation + # 25/11/2025 - Ajout du Fire Protect 2 diff --git a/docs/en_US/changelog.md b/docs/en_US/changelog.md index 09473d5..2aaff50 100644 --- a/docs/en_US/changelog.md +++ b/docs/en_US/changelog.md @@ -4,6 +4,11 @@ > >As a reminder, if there is no information on the update, it is because it concerns only the update of documentation, translation or text +# 12/01/2026 + +- Bug fix +- Improved equipment synchronization + # 25/11/2025 - Ajout du Fire Protect 2 diff --git a/docs/es_ES/changelog.md b/docs/es_ES/changelog.md index e1ab203..c25f3d5 100644 --- a/docs/es_ES/changelog.md +++ b/docs/es_ES/changelog.md @@ -4,6 +4,11 @@ > >Como recordatorio, si no hay información sobre la actualización es porque se trata solo de la actualización de la documentación, la traducción o el texto +# 12/01/2026 + +- Arreglo del fallo +- Sincronización mejorada de equipos + # 25/11/2025 - Ajout du Fire Protect 2 diff --git a/docs/i18n/de_DE.json b/docs/i18n/de_DE.json index faa5f5e..08e526d 100644 --- a/docs/i18n/de_DE.json +++ b/docs/i18n/de_DE.json @@ -2,6 +2,9 @@ "changelog.md": { "Changelog Ajax Systems": "Änderungsprotokoll Ajax-Systeme", "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte": "Zur Erinnerung: Wenn keine Informationen zur Aktualisierung vorliegen, liegt dies daran, dass es sich nur um die Aktualisierung von Dokumentation, Übersetzung oder Text handelt", + "12\/01\/2026": "12.01.2026", + "Correction de bug": "Bug-Fix", + "Amélioration de la synchronisation des équipements": "Verbesserte Gerätesynchronisation", "25\/11\/2025": "25\/11\/2025", "Ajout du Fire Protect 2": "Ajout du Fire Protect 2", "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus", @@ -30,7 +33,6 @@ "03\/01\/2024": "01.03.2024", "Préparation pour jeedom 4.4": "Vorbereitung auf Jeedom 4.4", "Amélioration de la gestion du SIA": "Verbessertes SIA-Management", - "Correction de bug": "Bug-Fix", "06\/06\/2023": "06.06.2023", "Ajout hub fibra": "Fasernabe hinzufügen", "23\/08\/2022": "23.08.2022", diff --git a/docs/i18n/en_US.json b/docs/i18n/en_US.json index de272b1..d722a66 100644 --- a/docs/i18n/en_US.json +++ b/docs/i18n/en_US.json @@ -2,6 +2,9 @@ "changelog.md": { "Changelog Ajax Systems": "Changelog Ajax Systems", "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte": "As a reminder, if there is no information on the update, it is because it concerns only the update of documentation, translation or text", + "12\/01\/2026": "12\/01\/2026", + "Correction de bug": "Bug fix", + "Amélioration de la synchronisation des équipements": "Improved equipment synchronization", "25\/11\/2025": "25\/11\/2025", "Ajout du Fire Protect 2": "Ajout du Fire Protect 2", "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus", @@ -30,7 +33,6 @@ "03\/01\/2024": "03\/01\/2024", "Préparation pour jeedom 4.4": "Preparing for jeedom 4.4", "Amélioration de la gestion du SIA": "Improved SIA management", - "Correction de bug": "Bug fix", "06\/06\/2023": "06\/06\/2023", "Ajout hub fibra": "Add fibra hub", "23\/08\/2022": "08\/23\/2022", diff --git a/docs/i18n/es_ES.json b/docs/i18n/es_ES.json index f632476..f928c80 100644 --- a/docs/i18n/es_ES.json +++ b/docs/i18n/es_ES.json @@ -2,6 +2,9 @@ "changelog.md": { "Changelog Ajax Systems": "Registro de cambios de sistemas Ajax", "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte": "Como recordatorio, si no hay información sobre la actualización es porque se trata solo de la actualización de la documentación, la traducción o el texto", + "12\/01\/2026": "12\/01\/2026", + "Correction de bug": "Arreglo del fallo", + "Amélioration de la synchronisation des équipements": "Sincronización mejorada de equipos", "25\/11\/2025": "25\/11\/2025", "Ajout du Fire Protect 2": "Ajout du Fire Protect 2", "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus", @@ -30,7 +33,6 @@ "03\/01\/2024": "01\/03\/2024", "Préparation pour jeedom 4.4": "Preparándose para el apuro 4.4", "Amélioration de la gestion du SIA": "Gestión mejorada de SIA", - "Correction de bug": "Arreglo del fallo", "06\/06\/2023": "06\/06\/2023", "Ajout hub fibra": "Agregar concentrador de fibra", "23\/08\/2022": "23\/08\/2022", diff --git a/docs/i18n/fr_FR.json b/docs/i18n/fr_FR.json index c6e230e..2487600 100644 --- a/docs/i18n/fr_FR.json +++ b/docs/i18n/fr_FR.json @@ -3,6 +3,9 @@ "Changelog Ajax Systems": "Changelog Ajax Systems", "IMPORTANT": "IMPORTANT", "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte": "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte", + "12\/01\/2026": "12\/01\/2026", + "Correction de bug": "Correction de bug", + "Amélioration de la synchronisation des équipements": "Amélioration de la synchronisation des équipements", "25\/11\/2025": "25\/11\/2025", "Ajout du Fire Protect 2": "Ajout du Fire Protect 2", "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus", @@ -31,7 +34,6 @@ "03\/01\/2024": "03\/01\/2024", "Préparation pour jeedom 4.4": "Préparation pour jeedom 4.4", "Amélioration de la gestion du SIA": "Amélioration de la gestion du SIA", - "Correction de bug": "Correction de bug", "06\/06\/2023": "06\/06\/2023", "Ajout hub fibra": "Ajout hub fibra", "23\/08\/2022": "23\/08\/2022", diff --git a/docs/i18n/pt_PT.json b/docs/i18n/pt_PT.json index b8fa01e..0829bdd 100644 --- a/docs/i18n/pt_PT.json +++ b/docs/i18n/pt_PT.json @@ -2,6 +2,9 @@ "changelog.md": { "Changelog Ajax Systems": "Sistemas Ajax de registro de mudanças", "Pour rappel s'il n'y a pas d'information sur la mise à jour, c'est que celle-ci concerne uniquement de la mise à jour de documentation, de traduction ou de texte": "Recorde-se que, se não existe informação sobre a atualização, é porque se trata apenas de atualização de documentação, tradução ou texto", + "12\/01\/2026": "12\/01\/2026", + "Correction de bug": "Correção de bug", + "Amélioration de la synchronisation des équipements": "Sincronização de equipamentos aprimorada", "25\/11\/2025": "25\/11\/2025", "Ajout du Fire Protect 2": "Ajout du Fire Protect 2", "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus", @@ -30,7 +33,6 @@ "03\/01\/2024": "01\/03\/2024", "Préparation pour jeedom 4.4": "Preparando-se para Jeedom 4.4", "Amélioration de la gestion du SIA": "Melhor gestão da SIA", - "Correction de bug": "Correção de bug", "06\/06\/2023": "06\/06\/2023", "Ajout hub fibra": "Adicionar cubo de fibra", "23\/08\/2022": "23\/08\/2022", diff --git a/docs/pt_PT/changelog.md b/docs/pt_PT/changelog.md index f9a3d27..f4728cd 100644 --- a/docs/pt_PT/changelog.md +++ b/docs/pt_PT/changelog.md @@ -4,6 +4,11 @@ > >Recorde-se que, se não existe informação sobre a atualização, é porque se trata apenas de atualização de documentação, tradução ou texto +# 12/01/2026 + +- Correção de bug +- Sincronização de equipamentos aprimorada + # 25/11/2025 - Ajout du Fire Protect 2 From 57fa1b4c7ae45d74ba8941c5cbb6e9cfa9924c94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Tue, 24 Feb 2026 14:32:00 +0100 Subject: [PATCH 02/17] bugfix state for tow way switch --- core/config/devices/LightSwitchTwoWay.json | 46 +++++++++++++++++++--- core/php/jeeAjaxSystem.php | 20 ++++++++++ 2 files changed, 60 insertions(+), 6 deletions(-) diff --git a/core/config/devices/LightSwitchTwoWay.json b/core/config/devices/LightSwitchTwoWay.json index 0df030e..521cc93 100644 --- a/core/config/devices/LightSwitchTwoWay.json +++ b/core/config/devices/LightSwitchTwoWay.json @@ -2,12 +2,20 @@ "name" : "Va et vient", "commands" : [ { - "name": "Etat", + "name": "Etat 1", "type": "info", "subtype": "binary", "isVisible": 0, "isHistorized": 0, - "logicalId": "channelStatus" + "logicalId": "channelStatus_1" + }, + { + "name": "Etat 2", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "channelStatus_2" }, { "name": "Source evenement", @@ -34,26 +42,52 @@ "logicalId": "eventCode" }, { - "name": "On", + "name": "On 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_ON", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + }, + { + "name": "Off 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_OFF", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + }, + { + "name": "On 2", "type": "action", "subtype": "other", "isVisible": 1, "isHistorized": 0, "logicalId": "SWITCH_ON", - "value" :"Etat", + "value" :"Etat 2", "template":{ "dashboard" : "prise", "mobile" : "prise" } }, { - "name": "Off", + "name": "Off 2", "type": "action", "subtype": "other", "isVisible": 1, "isHistorized": 0, "logicalId": "SWITCH_OFF", - "value" :"Etat", + "value" :"Etat 2", "template":{ "dashboard" : "prise", "mobile" : "prise" diff --git a/core/php/jeeAjaxSystem.php b/core/php/jeeAjaxSystem.php index f0af6d7..532f365 100644 --- a/core/php/jeeAjaxSystem.php +++ b/core/php/jeeAjaxSystem.php @@ -70,6 +70,26 @@ if ($convert_key == 'realState') { $value = ($value == 0) ? 1 : 0; } + if($ajaxSystem->getConfiguration('device') == 'LightSwitchTwoWay' && $key == 'channelStatus'){ + switch ($value) { + case 0: + $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 0); + $ajaxSystem->checkAndUpdateCmd('channelStatus_2', 0); + break; + case 1: + $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 1); + $ajaxSystem->checkAndUpdateCmd('channelStatus_2', 0); + break; + case 2: + $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 0); + $ajaxSystem->checkAndUpdateCmd('channelStatus_2', 1); + break; + case 3: + $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 1); + $ajaxSystem->checkAndUpdateCmd('channelStatus_2', 1); + break; + } + } $ajaxSystem->checkAndUpdateCmd($convert_key, $value); if ($ajaxSystem->getConfiguration('device') == 'Socket') { $current = $ajaxSystem->getCmd('info', 'currentMA'); From 312e333d8e3d66c58c566a861bc5899f7de34ba9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Wed, 25 Feb 2026 11:02:45 +0100 Subject: [PATCH 03/17] begin handle multiple channel --- core/class/ajaxSystem.class.php | 4 ++++ core/config/devices/LightSwitchTwoWay.json | 20 ++++++++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 02727a2..36ce175 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -385,6 +385,10 @@ public function execute($_options = array()) { 'command' => $this->getLogicalId(), 'deviceType' => $eqLogic->getConfiguration('device') ); + if($this->getConfiguration('AdditionalParam',null) != null){ + $command['AdditionalParam'] = $this->getConfiguration('AdditionalParam',null); + } + log::add('ajaxSystem','debug','Command send to ajax : '.json_encode($command)); ajaxSystem::request('/user/{userId}/hubs/' . $eqLogic->getConfiguration('hub_id') . '/devices/' . $eqLogic->getLogicalId() . '/command', $command, 'POST'); } else if ($eqLogic->getConfiguration('type') == 'group') { if ($this->getLogicalId() == 'ARM') { diff --git a/core/config/devices/LightSwitchTwoWay.json b/core/config/devices/LightSwitchTwoWay.json index 521cc93..5fb6511 100644 --- a/core/config/devices/LightSwitchTwoWay.json +++ b/core/config/devices/LightSwitchTwoWay.json @@ -52,6 +52,11 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } } }, { @@ -65,6 +70,11 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } } }, { @@ -78,6 +88,11 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_2" + } } }, { @@ -91,6 +106,11 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_2" + } } } ] From 0485907fb61fc43c4a264e94bdc92cfd17a81708 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Thu, 26 Feb 2026 10:45:21 +0100 Subject: [PATCH 04/17] Update index.md --- docs/fr_FR/index.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/docs/fr_FR/index.md b/docs/fr_FR/index.md index 46e0186..7061744 100644 --- a/docs/fr_FR/index.md +++ b/docs/fr_FR/index.md @@ -35,14 +35,6 @@ Pour la mise en place du lien entre votre Jeedom et votre alarme Ajax il faut al > > Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme. Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud -### Configuration de la remontée d'événements - -Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur : ajax@jeedom.com - ->**NOTE** -> ->L'invitation reste et restera toujours en attente c'est normal - ## Equipement Une fois la configuration sur "Plugin" -> "Gestion de plugin" -> "Ajax Système" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax. From dc2e13e91d14e29994cd3de61317876d47f7e1e6 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 27 Feb 2026 00:21:58 +0000 Subject: [PATCH 05/17] [Jenkins] Updated translation --- docs/de_DE/index.md | 8 -------- docs/en_US/index.md | 8 -------- docs/es_ES/index.md | 8 -------- docs/i18n/de_DE.json | 4 ---- docs/i18n/en_US.json | 4 ---- docs/i18n/es_ES.json | 4 ---- docs/i18n/fr_FR.json | 4 ---- docs/i18n/pt_PT.json | 4 ---- docs/pt_PT/index.md | 8 -------- 9 files changed, 52 deletions(-) diff --git a/docs/de_DE/index.md b/docs/de_DE/index.md index 2b57e77..b43509d 100644 --- a/docs/de_DE/index.md +++ b/docs/de_DE/index.md @@ -35,14 +35,6 @@ Um die Verbindung zwischen Ihrem Jeedom und Ihrem Ajax-Alarm herzustellen, gehen > > Sobald die Verbindung hergestellt ist, werden alle Anforderungen über unsere Cloud gesendet. In der Cloud wird Ihr Zugriffstoken jedoch zu keinem Zeitpunkt gespeichert, sodass nicht nur mit der Jeedom-Cloud auf Ihren Alarm reagiert werden kann. Für jede Aktion benötigen Sie unbedingt die Kombination aus dem Zugriffstoken Ihres Jeedom und einem Schlüssel, der nur unserer Cloud bekannt ist -### Konfiguration der Ereignisberichterstattung - -Gehen Sie in der Ajax-Anwendung zum Hub und dann in den Einstellungen (kleines Zahnrad oben rechts) zum Benutzer und fügen Sie den Benutzer hinzu : ajax@jeedom.com - ->**HINWEIS** -> ->Die Einladung bleibt und bleibt immer ausstehend, das ist normal - ## Ausrüstung Sobald die Konfiguration auf "Plugin" -> "Plugin-Verwaltung" -> "Ajax-System" steht, müssen Sie nur noch synchronisieren, Jeedom erstellt automatisch alle Ajax-Geräte, die mit Ihrem Ajax-Konto verknüpft sind. diff --git a/docs/en_US/index.md b/docs/en_US/index.md index bfcd284..2b81775 100644 --- a/docs/en_US/index.md +++ b/docs/en_US/index.md @@ -35,14 +35,6 @@ To set up the link between your Jeedom and your Ajax alarm, go to "Plugin" -> "P > > Once the link is made all the requests go through our cloud but at no time does the cloud store your access token, so it is not possible with only the jeedom cloud to act on your alarm. For any action on this, you absolutely need the combination of your Jeedom's access token and a key known only to our cloud -### Configuration of event reporting - -From the Ajax application, go to the hub then in settings (small cogwheel at the top right) go to user and add the user : ajax@jeedom.com - ->**NOTE** -> ->The invitation remains and will always remain pending, this is normal - ## Equipment Once the configuration is on "Plugin" -> "Plugin management" -> "Ajax System" you just have to synchronize, Jeedom will automatically create all Ajax equipment linked to your Ajax account. diff --git a/docs/es_ES/index.md b/docs/es_ES/index.md index b303d88..5bad29d 100644 --- a/docs/es_ES/index.md +++ b/docs/es_ES/index.md @@ -35,14 +35,6 @@ Para configurar el enlace entre su Jeedom y su alarma Ajax, vaya a "Complemento" > > Una vez realizado el enlace todas las solicitudes pasan por nuestra nube pero en ningún momento la nube almacena su token de acceso, por lo que no es posible con solo la nube jeedom actuar en su alarma. Para cualquier acción al respecto, es absolutamente necesario la combinación del token de acceso de Jeedom y una clave conocida solo en nuestra nube -### Configuración de informes de eventos - -Desde la aplicación Ajax, vaya al concentrador y luego en la configuración (pequeña rueda dentada en la parte superior derecha) vaya al usuario y agregue el usuario : ajax@jeedom.com - ->**NOTA** -> ->La invitación permanece y siempre estará pendiente, esto es normal - ## Equipo Una vez que la configuración está en "Complemento" -> "Administración de complementos" -> "Sistema Ajax", solo tiene que sincronizar, Jeedom creará automáticamente todos los equipos Ajax vinculados a su cuenta Ajax. diff --git a/docs/i18n/de_DE.json b/docs/i18n/de_DE.json index 08e526d..a5c7b87 100644 --- a/docs/i18n/de_DE.json +++ b/docs/i18n/de_DE.json @@ -85,10 +85,6 @@ "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement": "Das Aktualisierungstoken ermöglicht die Wiederherstellung eines neuen Zugriffstokens mit einer Lebensdauer von nur wenigen Stunden", "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme": "Sobald die Verbindung hergestellt ist, werden alle Anforderungen über unsere Cloud gesendet. In der Cloud wird Ihr Zugriffstoken jedoch zu keinem Zeitpunkt gespeichert, sodass nicht nur mit der Jeedom-Cloud auf Ihren Alarm reagiert werden kann", "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud": "Für jede Aktion benötigen Sie unbedingt die Kombination aus dem Zugriffstoken Ihres Jeedom und einem Schlüssel, der nur unserer Cloud bekannt ist", - "Configuration de la remontée d'événements": "Konfiguration der Ereignisberichterstattung", - "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur": "Gehen Sie in der Ajax-Anwendung zum Hub und dann in den Einstellungen (kleines Zahnrad oben rechts) zum Benutzer und fügen Sie den Benutzer hinzu", - "ajax@jeedom.com": "ajax@jeedom.com", - "L'invitation reste et restera toujours en attente c'est normal": "Die Einladung bleibt und bleibt immer ausstehend, das ist normal", "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax": "Sobald die Konfiguration auf \"Plugin\" -> \"Plugin-Verwaltung\" -> \"Ajax-System\" steht, müssen Sie nur noch synchronisieren, Jeedom erstellt automatisch alle Ajax-Geräte, die mit Ihrem Ajax-Konto verknüpft sind", "Détecteur de mouvement": "Bewegungsmelder", "Petit specificité pour le detecteur de mouvement celui-ci ne remonte pas la detection de mouvement en permanance": "Kleine Besonderheit beim Bewegungsmelder, es geht nicht um die permanente Bewegungserkennung", diff --git a/docs/i18n/en_US.json b/docs/i18n/en_US.json index d722a66..bf7c4a3 100644 --- a/docs/i18n/en_US.json +++ b/docs/i18n/en_US.json @@ -85,10 +85,6 @@ "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement": "The refresh token makes it possible to recover a new access token which has a lifespan of only a few hours", "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme": "Once the link is made all the requests go through our cloud but at no time does the cloud store your access token, so it is not possible with only the jeedom cloud to act on your alarm", "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud": "For any action on this, you absolutely need the combination of your Jeedom's access token and a key known only to our cloud", - "Configuration de la remontée d'événements": "Configuration of event reporting", - "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur": "From the Ajax application, go to the hub then in settings (small cogwheel at the top right) go to user and add the user", - "ajax@jeedom.com": "ajax@jeedom.com", - "L'invitation reste et restera toujours en attente c'est normal": "The invitation remains and will always remain pending, this is normal", "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax": "Once the configuration is on \"Plugin\" -> \"Plugin management\" -> \"Ajax System\" you just have to synchronize, Jeedom will automatically create all Ajax equipment linked to your Ajax account", "Détecteur de mouvement": "Movement detector", "Petit specificité pour le detecteur de mouvement celui-ci ne remonte pas la detection de mouvement en permanance": "Small specificity for the motion detector, it does not go up to the detection of movement permanently", diff --git a/docs/i18n/es_ES.json b/docs/i18n/es_ES.json index f928c80..a0e31ea 100644 --- a/docs/i18n/es_ES.json +++ b/docs/i18n/es_ES.json @@ -85,10 +85,6 @@ "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement": "El token de actualización permite recuperar un nuevo token de acceso que tiene una vida útil de solo unas pocas horas", "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme": "Una vez realizado el enlace todas las solicitudes pasan por nuestra nube pero en ningún momento la nube almacena su token de acceso, por lo que no es posible con solo la nube jeedom actuar en su alarma", "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud": "Para cualquier acción al respecto, es absolutamente necesario la combinación del token de acceso de Jeedom y una clave conocida solo en nuestra nube", - "Configuration de la remontée d'événements": "Configuración de informes de eventos", - "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur": "Desde la aplicación Ajax, vaya al concentrador y luego en la configuración (pequeña rueda dentada en la parte superior derecha) vaya al usuario y agregue el usuario", - "ajax@jeedom.com": "ajax@jeedom.com", - "L'invitation reste et restera toujours en attente c'est normal": "La invitación permanece y siempre estará pendiente, esto es normal", "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax": "Una vez que la configuración está en \"Complemento\" -> \"Administración de complementos\" -> \"Sistema Ajax\", solo tiene que sincronizar, Jeedom creará automáticamente todos los equipos Ajax vinculados a su cuenta Ajax", "Détecteur de mouvement": "Detector de movimiento", "Petit specificité pour le detecteur de mouvement celui-ci ne remonte pas la detection de mouvement en permanance": "Pequeña especificidad para el detector de movimiento, no sube a la detección de movimiento de forma permanente", diff --git a/docs/i18n/fr_FR.json b/docs/i18n/fr_FR.json index 2487600..d2b56f8 100644 --- a/docs/i18n/fr_FR.json +++ b/docs/i18n/fr_FR.json @@ -84,10 +84,6 @@ "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement": "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement", "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme": "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme", "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud": "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud", - "Configuration de la remontée d'événements": "Configuration de la remontée d'événements", - "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur": "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur", - "ajax@jeedom.com": "ajax@jeedom.com", - "L'invitation reste et restera toujours en attente c'est normal": "L'invitation reste et restera toujours en attente c'est normal", "Equipement": "Equipement", "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax": "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax", "Détecteur de mouvement": "Détecteur de mouvement", diff --git a/docs/i18n/pt_PT.json b/docs/i18n/pt_PT.json index 0829bdd..8ab3e20 100644 --- a/docs/i18n/pt_PT.json +++ b/docs/i18n/pt_PT.json @@ -85,10 +85,6 @@ "Le refresh token permet de récupérer un nouveau token d'accès qui a une durée de vie de quelques heures seulement": "O token de atualização torna possível recuperar um novo token de acesso que tem uma vida útil de apenas algumas horas", "Une fois le lien fait toute les requetes passent par notre cloud mais à aucun moment le cloud ne stock votre token d'accès, il n'est donc pas possible avec seulement le cloud jeedom d'agir sur votre alarme": "Uma vez feito o link, todas as solicitações passam por nossa nuvem, mas em nenhum momento a nuvem armazena seu token de acesso, portanto não é possível apenas com a nuvem jeedom atuar no seu alarme", "Pour toute action sur celle-ci il faut absolument la combinaison du token d'accès de votre Jeedom et d'une clef connu uniquement de notre cloud": "Para qualquer ação sobre isso, você absolutamente precisa da combinação de seu token de acesso Jeedom e uma chave conhecida apenas por nossa nuvem", - "Configuration de la remontée d'événements": "Configuração de relatórios de eventos", - "Il faut depuis l'application Ajax aller sur le hub puis dans parametres (petite roue crantée en haut à droite) aller sur utilisateur et la rajouter l'utilisateur": "No aplicativo Ajax, vá para o hub e, em seguida, nas configurações (pequena engrenagem no canto superior direito), vá para o usuário e adicione o usuário", - "ajax@jeedom.com": "ajax@jeedom.com", - "L'invitation reste et restera toujours en attente c'est normal": "O convite permanece e sempre ficará pendente, isso é normal", "Une fois la configuration sur \"Plugin\" -> \"Gestion de plugin\" -> \"Ajax Système\" il vous suffit de faire synchroniser, Jeedom va automatiquement créer tous les équipements Ajax reliés à votre compte Ajax": "Uma vez que a configuração está em \"Plugin\" -> \"Gerenciamento de Plugin\" -> \"Sistema Ajax\" você apenas tem que sincronizar, Jeedom irá criar automaticamente todos os equipamentos Ajax vinculados à sua conta Ajax", "Détecteur de mouvement": "Detector de movimento", "Petit specificité pour le detecteur de mouvement celui-ci ne remonte pas la detection de mouvement en permanance": "Pequena especificidade para o detector de movimento, não vai até a detecção de movimento de forma permanente", diff --git a/docs/pt_PT/index.md b/docs/pt_PT/index.md index 58e8f80..9744a40 100644 --- a/docs/pt_PT/index.md +++ b/docs/pt_PT/index.md @@ -35,14 +35,6 @@ Para configurar o link entre seu Jeedom e seu alarme Ajax, vá para "Plugin" -> > > Uma vez feito o link, todas as solicitações passam por nossa nuvem, mas em nenhum momento a nuvem armazena seu token de acesso, portanto não é possível apenas com a nuvem jeedom atuar no seu alarme. Para qualquer ação sobre isso, você absolutamente precisa da combinação de seu token de acesso Jeedom e uma chave conhecida apenas por nossa nuvem -### Configuração de relatórios de eventos - -No aplicativo Ajax, vá para o hub e, em seguida, nas configurações (pequena engrenagem no canto superior direito), vá para o usuário e adicione o usuário : ajax@jeedom.com - ->**NOTA** -> ->O convite permanece e sempre ficará pendente, isso é normal - ## Equipamento Uma vez que a configuração está em "Plugin" -> "Gerenciamento de Plugin" -> "Sistema Ajax" você apenas tem que sincronizar, Jeedom irá criar automaticamente todos os equipamentos Ajax vinculados à sua conta Ajax. From 0065613243282ca2518a4ece027fcdb60b48e5c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Fri, 27 Feb 2026 10:53:54 +0100 Subject: [PATCH 06/17] bugfix --- core/class/ajaxSystem.class.php | 5 ++++- core/config/devices/LightSwitchTwoWay.json | 8 ++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 36ce175..1a684ac 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -382,12 +382,15 @@ public function execute($_options = array()) { } } else if ($eqLogic->getConfiguration('type') == 'device') { $command = array( - 'command' => $this->getLogicalId(), + 'command' => explode(" ", $this->getLogicalId())[0], 'deviceType' => $eqLogic->getConfiguration('device') ); if($this->getConfiguration('AdditionalParam',null) != null){ $command['AdditionalParam'] = $this->getConfiguration('AdditionalParam',null); } + if(!isset($command['command']) || $command['command'] == ''){ + $command['command'] = $this->getLogicalId(); + } log::add('ajaxSystem','debug','Command send to ajax : '.json_encode($command)); ajaxSystem::request('/user/{userId}/hubs/' . $eqLogic->getConfiguration('hub_id') . '/devices/' . $eqLogic->getLogicalId() . '/command', $command, 'POST'); } else if ($eqLogic->getConfiguration('type') == 'group') { diff --git a/core/config/devices/LightSwitchTwoWay.json b/core/config/devices/LightSwitchTwoWay.json index 5fb6511..bce5678 100644 --- a/core/config/devices/LightSwitchTwoWay.json +++ b/core/config/devices/LightSwitchTwoWay.json @@ -47,7 +47,7 @@ "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_ON", + "logicalId": "SWITCH_ON 1", "value" :"Etat 1", "template":{ "dashboard" : "prise", @@ -65,7 +65,7 @@ "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_OFF", + "logicalId": "SWITCH_OFF 1", "value" :"Etat 1", "template":{ "dashboard" : "prise", @@ -83,7 +83,7 @@ "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_ON", + "logicalId": "SWITCH_ON 2", "value" :"Etat 2", "template":{ "dashboard" : "prise", @@ -101,7 +101,7 @@ "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_OFF", + "logicalId": "SWITCH_OFF 2", "value" :"Etat 2", "template":{ "dashboard" : "prise", From 9201118ee76dadd970f2c137d04aabc2bc7cb3be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Fri, 27 Feb 2026 10:58:56 +0100 Subject: [PATCH 07/17] bugfix --- core/class/ajaxSystem.class.php | 6 ++++++ core/config/devices/LightSwitchTwoWay.json | 10 ---------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 1a684ac..9bb9e0d 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -391,6 +391,12 @@ public function execute($_options = array()) { if(!isset($command['command']) || $command['command'] == ''){ $command['command'] = $this->getLogicalId(); } + if(isset(explode(" ", $this->getLogicalId())[1]) && explode(" ", $this->getLogicalId())[1] != ""){ + if(!isset($command['AdditionalParam'])){ + $command['AdditionalParam'] = array(); + } + $command['AdditionalParam']['ChannelsAdditionalParam'] = "CHANNEL_".explode(" ", $this->getLogicalId())[1]; + } log::add('ajaxSystem','debug','Command send to ajax : '.json_encode($command)); ajaxSystem::request('/user/{userId}/hubs/' . $eqLogic->getConfiguration('hub_id') . '/devices/' . $eqLogic->getLogicalId() . '/command', $command, 'POST'); } else if ($eqLogic->getConfiguration('type') == 'group') { diff --git a/core/config/devices/LightSwitchTwoWay.json b/core/config/devices/LightSwitchTwoWay.json index bce5678..8e41c37 100644 --- a/core/config/devices/LightSwitchTwoWay.json +++ b/core/config/devices/LightSwitchTwoWay.json @@ -88,11 +88,6 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" - }, - "configuration" :{ - "AdditionalParam" : { - "ChannelsAdditionalParam" : "CHANNEL_2" - } } }, { @@ -106,11 +101,6 @@ "template":{ "dashboard" : "prise", "mobile" : "prise" - }, - "configuration" :{ - "AdditionalParam" : { - "ChannelsAdditionalParam" : "CHANNEL_2" - } } } ] From 2e15a3fb62a7d93eec9038786dc5c2d38cc176ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Mon, 2 Mar 2026 11:34:56 +0100 Subject: [PATCH 08/17] Update ajaxSystem.class.php --- core/class/ajaxSystem.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 9bb9e0d..a9d3927 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -395,7 +395,7 @@ public function execute($_options = array()) { if(!isset($command['AdditionalParam'])){ $command['AdditionalParam'] = array(); } - $command['AdditionalParam']['ChannelsAdditionalParam'] = "CHANNEL_".explode(" ", $this->getLogicalId())[1]; + $command['AdditionalParam']['ChannelsAdditionalParam'] = array("CHANNEL_".explode(" ", $this->getLogicalId())[1]); } log::add('ajaxSystem','debug','Command send to ajax : '.json_encode($command)); ajaxSystem::request('/user/{userId}/hubs/' . $eqLogic->getConfiguration('hub_id') . '/devices/' . $eqLogic->getLogicalId() . '/command', $command, 'POST'); From 70aaec45f01828712db61cf1ce1abb6bf5446ad2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Thu, 5 Mar 2026 10:04:35 +0100 Subject: [PATCH 09/17] add device --- .../devices/LightSwitchTwoChannelTwoWay.json | 107 ++++++++++++++++++ .../devices/LightSwitchTwoChannelTwoWay.png | Bin 0 -> 3318 bytes core/config/devices/LightSwitchTwoGang.json | 107 ++++++++++++++++++ core/config/devices/LightSwitchTwoGang.png | Bin 0 -> 3318 bytes core/config/devices/LightSwitchTwoWay.json | 62 ++-------- 5 files changed, 223 insertions(+), 53 deletions(-) create mode 100644 core/config/devices/LightSwitchTwoChannelTwoWay.json create mode 100644 core/config/devices/LightSwitchTwoChannelTwoWay.png create mode 100644 core/config/devices/LightSwitchTwoGang.json create mode 100644 core/config/devices/LightSwitchTwoGang.png diff --git a/core/config/devices/LightSwitchTwoChannelTwoWay.json b/core/config/devices/LightSwitchTwoChannelTwoWay.json new file mode 100644 index 0000000..77221c3 --- /dev/null +++ b/core/config/devices/LightSwitchTwoChannelTwoWay.json @@ -0,0 +1,107 @@ +{ + "name" : "Interrupteur double va et vient", + "commands" : [ + { + "name": "Etat 1", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "channelStatus_1" + }, + { + "name": "Etat 2", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "channelStatus_2" + }, + { + "name": "Source evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "sourceObjectName" + }, + { + "name": "Evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "event" + }, + { + "name": "Code evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "eventCode" + }, + { + "name": "On 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_ON 1", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } + } + }, + { + "name": "Off 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_OFF 1", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } + } + }, + { + "name": "On 2", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_ON 2", + "value" :"Etat 2", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + }, + { + "name": "Off 2", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_OFF 2", + "value" :"Etat 2", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + } + ] + } diff --git a/core/config/devices/LightSwitchTwoChannelTwoWay.png b/core/config/devices/LightSwitchTwoChannelTwoWay.png new file mode 100644 index 0000000000000000000000000000000000000000..3eddf6537c3b0504f11b8d4fd4020cdbcc20fe48 GIT binary patch literal 3318 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 literal 0 HcmV?d00001 diff --git a/core/config/devices/LightSwitchTwoGang.json b/core/config/devices/LightSwitchTwoGang.json new file mode 100644 index 0000000..27f6fa3 --- /dev/null +++ b/core/config/devices/LightSwitchTwoGang.json @@ -0,0 +1,107 @@ +{ + "name" : "Interrupteur double", + "commands" : [ + { + "name": "Etat 1", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "channelStatus_1" + }, + { + "name": "Etat 2", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "channelStatus_2" + }, + { + "name": "Source evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "sourceObjectName" + }, + { + "name": "Evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "event" + }, + { + "name": "Code evenement", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "eventCode" + }, + { + "name": "On 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_ON 1", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } + } + }, + { + "name": "Off 1", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_OFF 1", + "value" :"Etat 1", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + }, + "configuration" :{ + "AdditionalParam" : { + "ChannelsAdditionalParam" : "CHANNEL_1" + } + } + }, + { + "name": "On 2", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_ON 2", + "value" :"Etat 2", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + }, + { + "name": "Off 2", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "SWITCH_OFF 2", + "value" :"Etat 2", + "template":{ + "dashboard" : "prise", + "mobile" : "prise" + } + } + ] + } diff --git a/core/config/devices/LightSwitchTwoGang.png b/core/config/devices/LightSwitchTwoGang.png new file mode 100644 index 0000000000000000000000000000000000000000..3eddf6537c3b0504f11b8d4fd4020cdbcc20fe48 GIT binary patch literal 3318 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 literal 0 HcmV?d00001 diff --git a/core/config/devices/LightSwitchTwoWay.json b/core/config/devices/LightSwitchTwoWay.json index 8e41c37..53cf3fa 100644 --- a/core/config/devices/LightSwitchTwoWay.json +++ b/core/config/devices/LightSwitchTwoWay.json @@ -2,20 +2,12 @@ "name" : "Va et vient", "commands" : [ { - "name": "Etat 1", + "name": "Etat", "type": "info", "subtype": "binary", "isVisible": 0, "isHistorized": 0, - "logicalId": "channelStatus_1" - }, - { - "name": "Etat 2", - "type": "info", - "subtype": "binary", - "isVisible": 0, - "isHistorized": 0, - "logicalId": "channelStatus_2" + "logicalId": "channelStatus" }, { "name": "Source evenement", @@ -42,66 +34,30 @@ "logicalId": "eventCode" }, { - "name": "On 1", - "type": "action", - "subtype": "other", - "isVisible": 1, - "isHistorized": 0, - "logicalId": "SWITCH_ON 1", - "value" :"Etat 1", - "template":{ - "dashboard" : "prise", - "mobile" : "prise" - }, - "configuration" :{ - "AdditionalParam" : { - "ChannelsAdditionalParam" : "CHANNEL_1" - } - } - }, - { - "name": "Off 1", - "type": "action", - "subtype": "other", - "isVisible": 1, - "isHistorized": 0, - "logicalId": "SWITCH_OFF 1", - "value" :"Etat 1", - "template":{ - "dashboard" : "prise", - "mobile" : "prise" - }, - "configuration" :{ - "AdditionalParam" : { - "ChannelsAdditionalParam" : "CHANNEL_1" - } - } - }, - { - "name": "On 2", + "name": "On", "type": "action", "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_ON 2", - "value" :"Etat 2", + "logicalId": "SWITCH_ON", + "value" :"Etat", "template":{ "dashboard" : "prise", "mobile" : "prise" } }, { - "name": "Off 2", + "name": "Off", "type": "action", "subtype": "other", "isVisible": 1, "isHistorized": 0, - "logicalId": "SWITCH_OFF 2", - "value" :"Etat 2", + "logicalId": "SWITCH_OFF", + "value" :"Etat", "template":{ "dashboard" : "prise", "mobile" : "prise" } } ] - } + } \ No newline at end of file From 4defbe1e4a91d29278466ba9044b1fee1239f75e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Tue, 10 Mar 2026 09:17:39 +0100 Subject: [PATCH 10/17] Update jeeAjaxSystem.php --- core/php/jeeAjaxSystem.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/php/jeeAjaxSystem.php b/core/php/jeeAjaxSystem.php index 532f365..66586e0 100644 --- a/core/php/jeeAjaxSystem.php +++ b/core/php/jeeAjaxSystem.php @@ -70,7 +70,7 @@ if ($convert_key == 'realState') { $value = ($value == 0) ? 1 : 0; } - if($ajaxSystem->getConfiguration('device') == 'LightSwitchTwoWay' && $key == 'channelStatus'){ + if($ajaxSystem->getConfiguration('device') == 'LightSwitchTwoChannelTwoWay' && $key == 'channelStatus'){ switch ($value) { case 0: $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 0); From f0b1aaaf8de21b21d07041e8c9a08b338a3eaffa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Tue, 10 Mar 2026 10:28:11 +0100 Subject: [PATCH 11/17] Update jeeAjaxSystem.php --- core/php/jeeAjaxSystem.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/php/jeeAjaxSystem.php b/core/php/jeeAjaxSystem.php index 66586e0..c63ee8f 100644 --- a/core/php/jeeAjaxSystem.php +++ b/core/php/jeeAjaxSystem.php @@ -70,7 +70,7 @@ if ($convert_key == 'realState') { $value = ($value == 0) ? 1 : 0; } - if($ajaxSystem->getConfiguration('device') == 'LightSwitchTwoChannelTwoWay' && $key == 'channelStatus'){ + if(in_array($ajaxSystem->getConfiguration('device'),array('LightSwitchTwoChannelTwoWay','LightSwitchTwoGang')) && $key == 'channelStatus'){ switch ($value) { case 0: $ajaxSystem->checkAndUpdateCmd('channelStatus_1', 0); From 6bd3aacb6a85fa022e173f3a4d5b7d9dafcf5707 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Thu, 12 Mar 2026 08:47:36 +0100 Subject: [PATCH 12/17] Update ajaxSystem.class.php --- core/class/ajaxSystem.class.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index a9d3927..a7d82d9 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -395,7 +395,10 @@ public function execute($_options = array()) { if(!isset($command['AdditionalParam'])){ $command['AdditionalParam'] = array(); } - $command['AdditionalParam']['ChannelsAdditionalParam'] = array("CHANNEL_".explode(" ", $this->getLogicalId())[1]); + $command['AdditionalParam'][] = array( + 'additionalParamType' => 'CHANNELS', + 'channels' => array("CHANNEL_".explode(" ", $this->getLogicalId())[1]) + ); } log::add('ajaxSystem','debug','Command send to ajax : '.json_encode($command)); ajaxSystem::request('/user/{userId}/hubs/' . $eqLogic->getConfiguration('hub_id') . '/devices/' . $eqLogic->getLogicalId() . '/command', $command, 'POST'); From dbbacbbc4a7c28c23c5e823111d0564b91839d04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Fri, 13 Mar 2026 10:55:03 +0100 Subject: [PATCH 13/17] Update ajaxSystem.class.php --- core/class/ajaxSystem.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index a7d82d9..56f9017 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -395,7 +395,7 @@ public function execute($_options = array()) { if(!isset($command['AdditionalParam'])){ $command['AdditionalParam'] = array(); } - $command['AdditionalParam'][] = array( + $command['AdditionalParam'] = array( 'additionalParamType' => 'CHANNELS', 'channels' => array("CHANNEL_".explode(" ", $this->getLogicalId())[1]) ); From bf486aca2feb87393b842e5810ee7a8e0217a44a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Mon, 13 Apr 2026 10:57:06 +0200 Subject: [PATCH 14/17] fix additionalParam typo --- core/class/ajaxSystem.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 56f9017..03a8865 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -393,7 +393,7 @@ public function execute($_options = array()) { } if(isset(explode(" ", $this->getLogicalId())[1]) && explode(" ", $this->getLogicalId())[1] != ""){ if(!isset($command['AdditionalParam'])){ - $command['AdditionalParam'] = array(); + $command['additionalParam'] = array(); } $command['AdditionalParam'] = array( 'additionalParamType' => 'CHANNELS', From 9cdd9bc6217ba4a33d0dda7cb660782d8d4d3623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Mon, 13 Apr 2026 11:02:28 +0200 Subject: [PATCH 15/17] bugfix translation --- .github/workflows/translations.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/translations.yml diff --git a/.github/workflows/translations.yml b/.github/workflows/translations.yml new file mode 100644 index 0000000..d214266 --- /dev/null +++ b/.github/workflows/translations.yml @@ -0,0 +1,18 @@ +name: translate + +on: + workflow_dispatch: + push: + branches: + - beta + +jobs: + auto-translate: + runs-on: ubuntu-latest + steps: + - uses: jeedom/jeetranslate@main + with: + deepl_api_key: ${{ secrets.DEEPL_API_KEY }} + include_empty_translation: false + target_languages: "en_US,es_ES,de_DE,it_IT,pt_PT" + use_core_translations: true \ No newline at end of file From 5386f55b63190e8cac711bf3b4d4b81d69959523 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Tue, 14 Apr 2026 14:42:20 +0200 Subject: [PATCH 16/17] Update ajaxSystem.class.php --- core/class/ajaxSystem.class.php | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php index 03a8865..cecd5f3 100644 --- a/core/class/ajaxSystem.class.php +++ b/core/class/ajaxSystem.class.php @@ -392,10 +392,7 @@ public function execute($_options = array()) { $command['command'] = $this->getLogicalId(); } if(isset(explode(" ", $this->getLogicalId())[1]) && explode(" ", $this->getLogicalId())[1] != ""){ - if(!isset($command['AdditionalParam'])){ - $command['additionalParam'] = array(); - } - $command['AdditionalParam'] = array( + $command['additionalParam'] = array( 'additionalParamType' => 'CHANNELS', 'channels' => array("CHANNEL_".explode(" ", $this->getLogicalId())[1]) ); From 1a992f81ccfe47ba1da00f136661731b09a5b3ea Mon Sep 17 00:00:00 2001 From: zoic21 <1536036+zoic21@users.noreply.github.com> Date: Wed, 15 Apr 2026 08:22:19 +0000 Subject: [PATCH 17/17] Auto update translation done by jeedom/jeetranslate workflow --- core/i18n/de_DE.json | 129 +++++++++++++++++++++--------------------- core/i18n/en_US.json | 127 ++++++++++++++++++++--------------------- core/i18n/es_ES.json | 127 ++++++++++++++++++++--------------------- core/i18n/it_IT.json | 127 ++++++++++++++++++++--------------------- core/i18n/pt_PT.json | 127 ++++++++++++++++++++--------------------- plugin_info/info.json | 88 ++++++++++++++-------------- 6 files changed, 353 insertions(+), 372 deletions(-) diff --git a/core/i18n/de_DE.json b/core/i18n/de_DE.json index 1e47839..dd7db6e 100644 --- a/core/i18n/de_DE.json +++ b/core/i18n/de_DE.json @@ -1,84 +1,81 @@ { - "plugins\/ajaxSystem\/plugin_info\/configuration.php": { - "Configuration connection cloud": "Konfiguration der Cloud-Verbindung", - "Connection": "Verbindung", - "Se connecter": "Einloggen", - "Synchronisation": "Synchronisation", - "Synchroniser mes équipements": "Synchronisiere meine Ausrüstung", - "Connexion de Jeedom à Ajax": "Jeedom mit Ajax verbinden", - "Synchronisation réussie": "Synchronisation erfolgreich" + "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { + "401 - Accès non autorisé": "401 - Nicht autorisierter Zugriff", + "Aucune méthode correspondante à : ": "Keine Methode entsprechend:" + }, + "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { + "Erreur lors de la mise à jour des données de :": "Fehler beim Aktualisieren der Daten von:", + "Erreur lors de la requete à Ajax System : ": "Fehler beim Anfordern von Ajax System:", + "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Zugriffstoken können nicht aktualisiert werden, Aktualisierungstoken leer:" + }, + "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { + "Configuration OK": "Konfiguration OK", + "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Sie sind nicht berechtigt, diese Aktion auszuführen. Ungültiger API-Schlüssel" + }, + "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "Afficher": "Anzeige", + "Aucune": "Irgendein", + "Commande information liée": "Befehlsbezogene Informationen", + "Historiser": "Historisieren", + "Icône": "Symbol", + "Inverser": "Umkehren", + "Max.": "Max.", + "Min.": "Mindest.", + "Nom de la commande": "Bestellname", + "Synchronisation réussie": "Synchronisation erfolgreich", + "Unité": "Einheit" }, "plugins\/ajaxSystem\/desktop\/modal\/login.php": { "401 - Accès non autorisé": "401 - Nicht autorisierter Zugriff", - "Nom d'utilisateur (email)": "Benutzername (E-Mail)", + "Connexion réussie": "Erfolgreiche Verbindung", "Mot de passe": "Passwort", - "Valider": "Bestätigen", - "Connexion réussie": "Erfolgreiche Verbindung" + "Nom d'utilisateur (email)": "Benutzername (E-Mail)", + "Valider": "Bestätigen" }, "plugins\/ajaxSystem\/desktop\/php\/ajaxSystem.php": { "401 - Accès non autorisé": "401 - Nicht autorisierter Zugriff", - "Gestion": "Verwaltung", - "Configuration": "Aufbau", - "Synchronisation": "Synchronisation", - "Mes équipement Ajax System": "Meine Ajax System Ausrüstung", - "Rechercher": "Suche", - "Configuration avancée": "Erweiterte Konfiguration", - "Sauvegarder": "Speichern", - "Supprimer": "Entfernen", - "Équipement": "Ausrüstung", - "Commandes": "Aufträge", - "Général": "Allgemeines", - "Nom de l'équipement": "Ausrüstungsname", - "Objet parent": "Übergeordnetes Objekt", + "Action": "Aktion", + "Activer": "Aktivieren Sie", + "Ajouter une commande": "Bestellung hinzufügen", "Aucun": "Nein", + "Blanc": "Weiß", "Catégorie": "Kategorie", - "Options": "Optionen", - "Activer": "Aktivieren Sie", - "Visible": "Sichtbar", - "Type": "Art", - "Inconnu": "Unbekannt", + "Commandes": "Aufträge", + "Configuration": "Aufbau", + "Configuration avancée": "Erweiterte Konfiguration", "Couleur": "Farbe", - "Blanc": "Weiß", - "Noir": "Schwarz", - "Numéro de l'équipement": "Gerätenummer", - "Identifiant": "Nutzername", - "IP": "IPs", + "Etat": "Bundesland", "Firmware": "Firmware", - "Ajouter une commande": "Bestellung hinzufügen", + "Gestion": "Verwaltung", + "Général": "Allgemeines", + "IP": "IPs", "Id": "Ich würde", - "Nom": "Nachname", + "Identifiant": "Nutzername", + "Inconnu": "Unbekannt", "Logical ID": "Logische ID", + "Mes équipement Ajax System": "Meine Ajax System Ausrüstung", + "Noir": "Schwarz", + "Nom": "Nachname", + "Nom de l'équipement": "Ausrüstungsname", + "Numéro de l'équipement": "Gerätenummer", + "Objet parent": "Übergeordnetes Objekt", + "Options": "Optionen", "Paramètres": "Die Einstellungen", - "Etat": "Bundesland", - "Action": "Aktion" - }, - "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { - "Synchronisation réussie": "Synchronisierung erfolgreich", - "Nom de la commande": "Bestellname", - "Commande information liée": "Befehlsbezogene Informationen", - "Aucune": "Irgendein", - "Icône": "Symbol", - "Afficher": "Anzeige", - "Historiser": "Historisieren", - "Inverser": "Umkehren", - "Min.": "Mindest.", - "Max.": "Max.", - "Unité": "Einheit" - }, - "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { - "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Sie sind nicht berechtigt, diese Aktion auszuführen. Ungültiger API-Schlüssel", - "Configuration OK": "Konfiguration OK" - }, - "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { - "401 - Accès non autorisé": "401 - Nicht autorisierter Zugriff", - "Aucune méthode correspondante à : ": "Keine Methode entsprechend:" - }, - "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { - "Erreur lors de la requete à Ajax System : ": "Fehler beim Anfordern von Ajax System:", - "Erreur lors de la mise à jour des données de :": "Fehler beim Aktualisieren der Daten von:", - "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Zugriffstoken können nicht aktualisiert werden, Aktualisierungstoken leer:" + "Rechercher": "Suche", + "Sauvegarder": "Speichern", + "Supprimer": "Entfernen", + "Synchronisation": "Synchronisation", + "Type": "Art", + "Visible": "Sichtbar", + "Équipement": "Ausrüstung" }, - "info.json": { - "Plugin servant à se connecter à une alarme Ajax": "Plugin zum Herstellen einer Verbindung mit einem Ajax-Alarm" + "plugins\/ajaxSystem\/plugin_info\/configuration.php": { + "Configuration connection cloud": "Konfiguration der Cloud-Verbindung", + "Connection": "Verbindung", + "Connexion de Jeedom à Ajax": "Jeedom mit Ajax verbinden", + "Se connecter": "Einloggen", + "Synchronisation": "Synchronisation", + "Synchronisation réussie": "Synchronisation erfolgreich", + "Synchroniser mes équipements": "Synchronisiere meine Ausrüstung" } } \ No newline at end of file diff --git a/core/i18n/en_US.json b/core/i18n/en_US.json index e82a6ee..2a3b537 100644 --- a/core/i18n/en_US.json +++ b/core/i18n/en_US.json @@ -1,84 +1,81 @@ { - "plugins\/ajaxSystem\/plugin_info\/configuration.php": { - "Configuration connection cloud": "Cloud connection configuration", - "Connection": "Login", - "Se connecter": "To log in", - "Synchronisation": "Synchronization", - "Synchroniser mes équipements": "Synchronize my equipment", - "Connexion de Jeedom à Ajax": "Connecting Jeedom to Ajax", - "Synchronisation réussie": "Synchronization successful" + "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { + "401 - Accès non autorisé": "401 - Unauthorized Access", + "Aucune méthode correspondante à : ": "No method corresponding to:" + }, + "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { + "Erreur lors de la mise à jour des données de :": "Error updating data from:", + "Erreur lors de la requete à Ajax System : ": "Error when requesting Ajax System:", + "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Unable to update access tokens, refresh token empty:" + }, + "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { + "Configuration OK": "Setup OK", + "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "You are not authorized to perform this action. Invalid API key" + }, + "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "Afficher": "Display", + "Aucune": "Any", + "Commande information liée": "Command related information", + "Historiser": "Historize", + "Icône": "Icon", + "Inverser": "Reverse", + "Max.": "High", + "Min.": "Low", + "Nom de la commande": "Order name", + "Synchronisation réussie": "Synchronization successful", + "Unité": "Unit" }, "plugins\/ajaxSystem\/desktop\/modal\/login.php": { "401 - Accès non autorisé": "401 - Unauthorized Access", - "Nom d'utilisateur (email)": "Username (email)", + "Connexion réussie": "Successful connection", "Mot de passe": "Password", - "Valider": "Validate", - "Connexion réussie": "Successful connection" + "Nom d'utilisateur (email)": "Username (email)", + "Valider": "Validate" }, "plugins\/ajaxSystem\/desktop\/php\/ajaxSystem.php": { "401 - Accès non autorisé": "401 - Unauthorized Access", - "Gestion": "Management", - "Configuration": "Configuration", - "Synchronisation": "Synchronization", - "Mes équipement Ajax System": "My Ajax System equipment", - "Rechercher": "Search", - "Configuration avancée": "Advanced configuration", - "Sauvegarder": "Save", - "Supprimer": "Remove", - "Équipement": "Equipment", - "Commandes": "Orders", - "Général": "General", - "Nom de l'équipement": "Equipment name", - "Objet parent": "Parent object", + "Action": "Stock", + "Activer": "Activate", + "Ajouter une commande": "Add an order", "Aucun": "No", + "Blanc": "White", "Catégorie": "Category", - "Options": "Options", - "Activer": "Activate", - "Visible": "Visible", - "Type": "Kind", - "Inconnu": "Unknown", + "Commandes": "Orders", + "Configuration": "Configuration", + "Configuration avancée": "Advanced configuration", "Couleur": "Color", - "Blanc": "White", - "Noir": "Black", - "Numéro de l'équipement": "Equipment number", - "Identifiant": "Username", - "IP": "IPs", + "Etat": "State", "Firmware": "Firmware", - "Ajouter une commande": "Add an order", + "Gestion": "Management", + "Général": "General", + "IP": "IPs", "Id": "ID", - "Nom": "Last name", + "Identifiant": "Username", + "Inconnu": "Unknown", "Logical ID": "Logical ID", + "Mes équipement Ajax System": "My Ajax System equipment", + "Noir": "Black", + "Nom": "Last name", + "Nom de l'équipement": "Equipment name", + "Numéro de l'équipement": "Equipment number", + "Objet parent": "Parent object", + "Options": "Options", "Paramètres": "Settings", - "Etat": "State", - "Action": "Stock" + "Rechercher": "Search", + "Sauvegarder": "Save", + "Supprimer": "Remove", + "Synchronisation": "Synchronization", + "Type": "Kind", + "Visible": "Visible", + "Équipement": "Equipment" }, - "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "plugins\/ajaxSystem\/plugin_info\/configuration.php": { + "Configuration connection cloud": "Cloud connection configuration", + "Connection": "Login", + "Connexion de Jeedom à Ajax": "Connecting Jeedom to Ajax", + "Se connecter": "To log in", + "Synchronisation": "Synchronization", "Synchronisation réussie": "Synchronization successful", - "Nom de la commande": "Order name", - "Commande information liée": "Command related information", - "Aucune": "Any", - "Icône": "Icon", - "Afficher": "Display", - "Historiser": "Historize", - "Inverser": "Reverse", - "Min.": "Low", - "Max.": "High", - "Unité": "Unit" - }, - "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { - "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "You are not authorized to perform this action. Invalid API key", - "Configuration OK": "Setup OK" - }, - "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { - "401 - Accès non autorisé": "401 - Unauthorized Access", - "Aucune méthode correspondante à : ": "No method corresponding to:" - }, - "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { - "Erreur lors de la requete à Ajax System : ": "Error when requesting Ajax System:", - "Erreur lors de la mise à jour des données de :": "Error updating data from:", - "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Unable to update access tokens, refresh token empty:" - }, - "info.json": { - "Plugin servant à se connecter à une alarme Ajax": "Plugin used to connect to an Ajax alarm" + "Synchroniser mes équipements": "Synchronize my equipment" } } \ No newline at end of file diff --git a/core/i18n/es_ES.json b/core/i18n/es_ES.json index ead4b1e..e356b1e 100644 --- a/core/i18n/es_ES.json +++ b/core/i18n/es_ES.json @@ -1,84 +1,81 @@ { - "plugins\/ajaxSystem\/plugin_info\/configuration.php": { - "Configuration connection cloud": "Configuración de la conexión a la nube", - "Connection": "Conexión", - "Se connecter": "Conectarse", - "Synchronisation": "Sincronización", - "Synchroniser mes équipements": "Sincronizar mi equipo", - "Connexion de Jeedom à Ajax": "Conectando Jeedom con Ajax", - "Synchronisation réussie": "Sincronización exitosa" + "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { + "401 - Accès non autorisé": "401 - Acceso no autorizado", + "Aucune méthode correspondante à : ": "Ningún método correspondiente a:" + }, + "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { + "Erreur lors de la mise à jour des données de :": "Error al actualizar datos de:", + "Erreur lors de la requete à Ajax System : ": "Error al solicitar el sistema Ajax:", + "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "No se pueden actualizar los tokens de acceso, el token de actualización está vacío:" + }, + "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { + "Configuration OK": "Configuración OK", + "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "No está autorizado para realizar esta acción. Clave de API no válida" + }, + "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "Afficher": "Monitor", + "Aucune": "Alguna", + "Commande information liée": "Información relacionada con el comando", + "Historiser": "Historizar", + "Icône": "Icono", + "Inverser": "Contrarrestar", + "Max.": "Máx.", + "Min.": "Mín.", + "Nom de la commande": "Nombre de la orden", + "Synchronisation réussie": "Sincronización exitosa", + "Unité": "Unidad" }, "plugins\/ajaxSystem\/desktop\/modal\/login.php": { "401 - Accès non autorisé": "401 - Acceso no autorizado", - "Nom d'utilisateur (email)": "Nombre de usuario (correo electrónico)", + "Connexion réussie": "Conexión exitosa", "Mot de passe": "Contraseña", - "Valider": "Validar", - "Connexion réussie": "Conexión exitosa" + "Nom d'utilisateur (email)": "Nombre de usuario (correo electrónico)", + "Valider": "Validar" }, "plugins\/ajaxSystem\/desktop\/php\/ajaxSystem.php": { "401 - Accès non autorisé": "401 - Acceso no autorizado", - "Gestion": "Gestión", - "Configuration": "Configuración", - "Synchronisation": "Sincronización", - "Mes équipement Ajax System": "Mi equipo del sistema Ajax", - "Rechercher": "Buscar", - "Configuration avancée": "Configuración avanzada", - "Sauvegarder": "Ahorrar", - "Supprimer": "Eliminar", - "Équipement": "Equipo", - "Commandes": "Pedidos", - "Général": "General", - "Nom de l'équipement": "Nombre del equipo", - "Objet parent": "Objeto padre", + "Action": "Acción", + "Activer": "Activar", + "Ajouter une commande": "Añadir un pedido", "Aucun": "No", + "Blanc": "Blanco, Blanca", "Catégorie": "Categoría", - "Options": "Opciones", - "Activer": "Activar", - "Visible": "Visible", - "Type": "Tipo", - "Inconnu": "Desconocido", + "Commandes": "Pedidos", + "Configuration": "Configuración", + "Configuration avancée": "Configuración avanzada", "Couleur": "Color", - "Blanc": "Blanco, Blanca", - "Noir": "Negro", - "Numéro de l'équipement": "Número de equipo", - "Identifiant": "Nombre de usuario", - "IP": "IP", + "Etat": "Estado", "Firmware": "Firmware", - "Ajouter une commande": "Añadir un pedido", + "Gestion": "Gestión", + "Général": "General", + "IP": "IP", "Id": "Identificación", - "Nom": "Apellido", + "Identifiant": "Nombre de usuario", + "Inconnu": "Desconocido", "Logical ID": "ID lógica", + "Mes équipement Ajax System": "Mi equipo del sistema Ajax", + "Noir": "Negro", + "Nom": "Apellido", + "Nom de l'équipement": "Nombre del equipo", + "Numéro de l'équipement": "Número de equipo", + "Objet parent": "Objeto padre", + "Options": "Opciones", "Paramètres": "Configuraciones", - "Etat": "Estado", - "Action": "Acción" + "Rechercher": "Buscar", + "Sauvegarder": "Ahorrar", + "Supprimer": "Eliminar", + "Synchronisation": "Sincronización", + "Type": "Tipo", + "Visible": "Visible", + "Équipement": "Equipo" }, - "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "plugins\/ajaxSystem\/plugin_info\/configuration.php": { + "Configuration connection cloud": "Configuración de la conexión a la nube", + "Connection": "Conexión", + "Connexion de Jeedom à Ajax": "Conectando Jeedom con Ajax", + "Se connecter": "Conectarse", + "Synchronisation": "Sincronización", "Synchronisation réussie": "Sincronización exitosa", - "Nom de la commande": "Nombre de la orden", - "Commande information liée": "Información relacionada con el comando", - "Aucune": "Alguna", - "Icône": "Icono", - "Afficher": "Monitor", - "Historiser": "Historizar", - "Inverser": "Contrarrestar", - "Min.": "Mín.", - "Max.": "Máx.", - "Unité": "Unidad" - }, - "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { - "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "No está autorizado para realizar esta acción. Clave de API no válida", - "Configuration OK": "Configuración OK" - }, - "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { - "401 - Accès non autorisé": "401 - Acceso no autorizado", - "Aucune méthode correspondante à : ": "Ningún método correspondiente a:" - }, - "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { - "Erreur lors de la requete à Ajax System : ": "Error al solicitar el sistema Ajax:", - "Erreur lors de la mise à jour des données de :": "Error al actualizar datos de:", - "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "No se pueden actualizar los tokens de acceso, el token de actualización está vacío:" - }, - "info.json": { - "Plugin servant à se connecter à une alarme Ajax": "Complemento utilizado para conectarse a una alarma Ajax" + "Synchroniser mes équipements": "Sincronizar mi equipo" } } \ No newline at end of file diff --git a/core/i18n/it_IT.json b/core/i18n/it_IT.json index 6b33107..334f4ee 100644 --- a/core/i18n/it_IT.json +++ b/core/i18n/it_IT.json @@ -1,84 +1,81 @@ { - "plugins\/ajaxSystem\/plugin_info\/configuration.php": { - "Configuration connection cloud": "Configuration connection cloud", - "Connection": "Connection", - "Se connecter": "Se connecter", - "Synchronisation": "Synchronisation", - "Synchroniser mes équipements": "Synchroniser mes équipements", - "Connexion de Jeedom à Ajax": "Connexion de Jeedom à Ajax", - "Synchronisation réussie": "Synchronisation réussie" + "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { + "401 - Accès non autorisé": "401 - Accès non autorisé", + "Aucune méthode correspondante à : ": "Aucune méthode correspondante à :" + }, + "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { + "Erreur lors de la mise à jour des données de :": "Erreur lors de la mise à jour des données de :", + "Erreur lors de la requete à Ajax System : ": "Erreur lors de la requete à Ajax System :", + "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Impossible de mettre à jour les tokens d\\'accès, refresh token vide :" + }, + "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { + "Configuration OK": "Configuration OK", + "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide" + }, + "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "Afficher": "Afficher", + "Aucune": "Aucune", + "Commande information liée": "Commande information liée", + "Historiser": "Historiser", + "Icône": "Icône", + "Inverser": "Inverser", + "Max.": "Max.", + "Min.": "Min.", + "Nom de la commande": "Nom de la commande", + "Synchronisation réussie": "Synchronisation réussie", + "Unité": "Unité" }, "plugins\/ajaxSystem\/desktop\/modal\/login.php": { "401 - Accès non autorisé": "401 - Accès non autorisé", - "Nom d'utilisateur (email)": "Nom d'utilisateur (email)", + "Connexion réussie": "Connexion réussie", "Mot de passe": "Mot de passe", - "Valider": "Valider", - "Connexion réussie": "Connexion réussie" + "Nom d'utilisateur (email)": "Nom d'utilisateur (email)", + "Valider": "Valider" }, "plugins\/ajaxSystem\/desktop\/php\/ajaxSystem.php": { "401 - Accès non autorisé": "401 - Accès non autorisé", - "Gestion": "Gestion", - "Configuration": "Configuration", - "Synchronisation": "Synchronisation", - "Mes équipement Ajax System": "Mes équipement Ajax System", - "Rechercher": "Rechercher", - "Configuration avancée": "Configuration avancée", - "Sauvegarder": "Sauvegarder", - "Supprimer": "Supprimer", - "Équipement": "Équipement", - "Commandes": "Commandes", - "Général": "Général", - "Nom de l'équipement": "Nom de l'équipement", - "Objet parent": "Objet parent", + "Action": "Action", + "Activer": "Activer", + "Ajouter une commande": "Ajouter une commande", "Aucun": "Aucun", + "Blanc": "Blanc", "Catégorie": "Catégorie", - "Options": "Options", - "Activer": "Activer", - "Visible": "Visible", - "Type": "Type", - "Inconnu": "Inconnu", + "Commandes": "Commandes", + "Configuration": "Configuration", + "Configuration avancée": "Configuration avancée", "Couleur": "Couleur", - "Blanc": "Blanc", - "Noir": "Noir", - "Numéro de l'équipement": "Numéro de l'équipement", - "Identifiant": "Identifiant", - "IP": "IP", + "Etat": "Etat", "Firmware": "Firmware", - "Ajouter une commande": "Ajouter une commande", + "Gestion": "Gestion", + "Général": "Général", + "IP": "IP", "Id": "Id", - "Nom": "Nom", + "Identifiant": "Identifiant", + "Inconnu": "Inconnu", "Logical ID": "Logical ID", + "Mes équipement Ajax System": "Mes équipement Ajax System", + "Noir": "Noir", + "Nom": "Nom", + "Nom de l'équipement": "Nom de l'équipement", + "Numéro de l'équipement": "Numéro de l'équipement", + "Objet parent": "Objet parent", + "Options": "Options", "Paramètres": "Paramètres", - "Etat": "Etat", - "Action": "Action" + "Rechercher": "Rechercher", + "Sauvegarder": "Sauvegarder", + "Supprimer": "Supprimer", + "Synchronisation": "Synchronisation", + "Type": "Type", + "Visible": "Visible", + "Équipement": "Équipement" }, - "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "plugins\/ajaxSystem\/plugin_info\/configuration.php": { + "Configuration connection cloud": "Configuration connection cloud", + "Connection": "Connection", + "Connexion de Jeedom à Ajax": "Connexion de Jeedom à Ajax", + "Se connecter": "Se connecter", + "Synchronisation": "Synchronisation", "Synchronisation réussie": "Synchronisation réussie", - "Nom de la commande": "Nom de la commande", - "Commande information liée": "Commande information liée", - "Aucune": "Aucune", - "Icône": "Icône", - "Afficher": "Afficher", - "Historiser": "Historiser", - "Inverser": "Inverser", - "Min.": "Min.", - "Max.": "Max.", - "Unité": "Unité" - }, - "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { - "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide", - "Configuration OK": "Configuration OK" - }, - "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { - "401 - Accès non autorisé": "401 - Accès non autorisé", - "Aucune méthode correspondante à : ": "Aucune méthode correspondante à :" - }, - "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { - "Erreur lors de la requete à Ajax System : ": "Erreur lors de la requete à Ajax System :", - "Erreur lors de la mise à jour des données de :": "Erreur lors de la mise à jour des données de :", - "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Impossible de mettre à jour les tokens d\\'accès, refresh token vide :" - }, - "info.json": { - "Plugin servant à se connecter à une alarme Ajax": "Plugin servant a se connecter a une alarme Ajax" + "Synchroniser mes équipements": "Synchroniser mes équipements" } } \ No newline at end of file diff --git a/core/i18n/pt_PT.json b/core/i18n/pt_PT.json index cfbad6e..68f5080 100644 --- a/core/i18n/pt_PT.json +++ b/core/i18n/pt_PT.json @@ -1,84 +1,81 @@ { - "plugins\/ajaxSystem\/plugin_info\/configuration.php": { - "Configuration connection cloud": "Configuração de conexão de nuvem", - "Connection": "Conexão", - "Se connecter": "Entrar", - "Synchronisation": "Sincronização", - "Synchroniser mes équipements": "Sincronizar meu equipamento", - "Connexion de Jeedom à Ajax": "Conectando Jeedom ao Ajax", - "Synchronisation réussie": "Sincronização bem sucedida" + "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { + "401 - Accès non autorisé": "401 - Acesso não autorizado", + "Aucune méthode correspondante à : ": "Nenhum método correspondente a:" + }, + "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { + "Erreur lors de la mise à jour des données de :": "Erro ao atualizar dados de:", + "Erreur lors de la requete à Ajax System : ": "Erro ao solicitar Sistema Ajax:", + "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Não foi possível atualizar os tokens de acesso, atualize o token vazio:" + }, + "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { + "Configuration OK": "Configuração OK", + "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Você não está autorizado a realizar esta ação. Chave de API inválida" + }, + "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "Afficher": "Exibição", + "Aucune": "Algum", + "Commande information liée": "Informações relacionadas ao comando", + "Historiser": "Historize", + "Icône": "Ícone", + "Inverser": "Marcha ré", + "Max.": "Máx.", + "Min.": "Mín.", + "Nom de la commande": "Nome do pedido", + "Synchronisation réussie": "Sincronização bem sucedida", + "Unité": "Unidade" }, "plugins\/ajaxSystem\/desktop\/modal\/login.php": { "401 - Accès non autorisé": "401 - Acesso não autorizado", - "Nom d'utilisateur (email)": "Nome de usuário (e-mail)", + "Connexion réussie": "Conexão bem sucedida", "Mot de passe": "Senha", - "Valider": "Validar", - "Connexion réussie": "Conexão bem sucedida" + "Nom d'utilisateur (email)": "Nome de usuário (e-mail)", + "Valider": "Validar" }, "plugins\/ajaxSystem\/desktop\/php\/ajaxSystem.php": { "401 - Accès non autorisé": "401 - Acesso não autorizado", - "Gestion": "Gestão", - "Configuration": "Configuração", - "Synchronisation": "Sincronização", - "Mes équipement Ajax System": "Meu equipamento Ajax System", - "Rechercher": "Procurar", - "Configuration avancée": "Configuração avançada", - "Sauvegarder": "Salve ", - "Supprimer": "Remover", - "Équipement": "Equipamento", - "Commandes": "Pedidos", - "Général": "Em geral", - "Nom de l'équipement": "Nome do equipamento", - "Objet parent": "Objeto pai", + "Action": "Açao", + "Activer": "Ativar", + "Ajouter une commande": "Adicionar um pedido", "Aucun": "Não", + "Blanc": "Branco", "Catégorie": "Categoria", - "Options": "Opções", - "Activer": "Ativar", - "Visible": "Visível", - "Type": "Modelo", - "Inconnu": "Desconhecido", + "Commandes": "Pedidos", + "Configuration": "Configuração", + "Configuration avancée": "Configuração avançada", "Couleur": "Cor", - "Blanc": "Branco", - "Noir": "Preto", - "Numéro de l'équipement": "Número do equipamento", - "Identifiant": "Nome do usuário", - "IP": "IPs", + "Etat": "Estado", "Firmware": "Firmware", - "Ajouter une commande": "Adicionar um pedido", + "Gestion": "Gestão", + "Général": "Em geral", + "IP": "IPs", "Id": "Identidade", - "Nom": "Sobrenome", + "Identifiant": "Nome do usuário", + "Inconnu": "Desconhecido", "Logical ID": "ID lógico", + "Mes équipement Ajax System": "Meu equipamento Ajax System", + "Noir": "Preto", + "Nom": "Sobrenome", + "Nom de l'équipement": "Nome do equipamento", + "Numéro de l'équipement": "Número do equipamento", + "Objet parent": "Objeto pai", + "Options": "Opções", "Paramètres": "Definições", - "Etat": "Estado", - "Action": "Açao" + "Rechercher": "Procurar", + "Sauvegarder": "Salve ", + "Supprimer": "Remover", + "Synchronisation": "Sincronização", + "Type": "Modelo", + "Visible": "Visível", + "Équipement": "Equipamento" }, - "plugins\/ajaxSystem\/desktop\/js\/ajaxSystem.js": { + "plugins\/ajaxSystem\/plugin_info\/configuration.php": { + "Configuration connection cloud": "Configuração de conexão de nuvem", + "Connection": "Conexão", + "Connexion de Jeedom à Ajax": "Conectando Jeedom ao Ajax", + "Se connecter": "Entrar", + "Synchronisation": "Sincronização", "Synchronisation réussie": "Sincronização bem sucedida", - "Nom de la commande": "Nome do pedido", - "Commande information liée": "Informações relacionadas ao comando", - "Aucune": "Algum", - "Icône": "Ícone", - "Afficher": "Exibição", - "Historiser": "Historize", - "Inverser": "Marcha ré", - "Min.": "Mín.", - "Max.": "Máx.", - "Unité": "Unidade" - }, - "plugins\/ajaxSystem\/core\/php\/jeeAjaxSystem.php": { - "Vous n\\'etes pas autorisé à effectuer cette action. Clef API invalide.": "Você não está autorizado a realizar esta ação. Chave de API inválida", - "Configuration OK": "Configuração OK" - }, - "plugins\/ajaxSystem\/core\/ajax\/ajaxSystem.ajax.php": { - "401 - Accès non autorisé": "401 - Acesso não autorizado", - "Aucune méthode correspondante à : ": "Nenhum método correspondente a:" - }, - "plugins\/ajaxSystem\/core\/class\/ajaxSystem.class.php": { - "Erreur lors de la requete à Ajax System : ": "Erro ao solicitar Sistema Ajax:", - "Erreur lors de la mise à jour des données de :": "Erro ao atualizar dados de:", - "Impossible de mettre à jour les tokens d\\'accès, refresh token vide : ": "Não foi possível atualizar os tokens de acesso, atualize o token vazio:" - }, - "info.json": { - "Plugin servant à se connecter à une alarme Ajax": "Plugin usado para conectar a um alarme Ajax" + "Synchroniser mes équipements": "Sincronizar meu equipamento" } } \ No newline at end of file diff --git a/plugin_info/info.json b/plugin_info/info.json index 617ec65..2aa82dd 100644 --- a/plugin_info/info.json +++ b/plugin_info/info.json @@ -1,48 +1,44 @@ { - "id": "ajaxSystem", - "name": "Ajax Systems", - "description": { - "fr_FR": "Plugin servant à se connecter à une alarme Ajax", - "en_US": "Plugin used to connect to an Ajax alarm", - "es_ES": "Complemento utilizado para conectarse a una alarma Ajax", - "de_DE": "Plugin zum Herstellen einer Verbindung mit einem Ajax-Alarm", - "ru_RU": "Plugin servant a se connecter a une alarme Ajax", - "id_ID": "Plugin servant a se connecter a une alarme Ajax", - "it_IT": "Plugin servant a se connecter a une alarme Ajax", - "ja_JP": "Plugin servant a se connecter a une alarme Ajax", - "pt_PT": "Plugin usado para conectar a um alarme Ajax", - "tr": "Plugin servant a se connecter a une alarme Ajax" - }, - "licence": "AGPL", - "author": "Jeedom SAS", - "require": "4.4", - "category": "security", - "hasDependency": false, - "hasOwnDeamon": false, - "maxDependancyInstallTime": 0, - "language": [ - "fr_FR", - "en_US", - "es_ES", - "de_DE", - "ru_RU", - "id_ID", - "it_IT", - "ja_JP", - "pt_PT", - "tr" - ], - "compatibility": [ - "miniplus", - "smart", - "rpi", - "docker", - "diy", - "mobile", - "v4" - ], - "changelog": "https:\/\/doc.jeedom.com\/#language#\/plugins\/security\/ajaxSystem\/changelog", - "documentation": "https:\/\/doc.jeedom.com\/#language#\/plugins\/security\/ajaxSystem\/", - "changelog_beta": "https:\/\/doc.jeedom.com\/#language#\/plugins\/security\/ajaxSystem\/beta\/changelog", - "documentation_beta": "https:\/\/doc.jeedom.com\/#language#\/plugins\/security\/ajaxSystem\/beta" + "id": "ajaxSystem", + "name": "Ajax Systems", + "description": { + "fr_FR": "Plugin servant à se connecter à une alarme Ajax", + "en_US": "Plugin used to connect to an Ajax alarm", + "es_ES": "Complemento utilizado para conectarse a una alarma Ajax", + "de_DE": "Plugin zum Herstellen einer Verbindung mit einem Ajax-Alarm", + "ru_RU": "Plugin servant a se connecter a une alarme Ajax", + "id_ID": "Plugin servant a se connecter a une alarme Ajax", + "it_IT": "Plugin servant a se connecter a une alarme Ajax", + "ja_JP": "Plugin servant a se connecter a une alarme Ajax", + "pt_PT": "Plugin usado para conectar a um alarme Ajax", + "tr": "Plugin servant a se connecter a une alarme Ajax" + }, + "licence": "AGPL", + "author": "Jeedom SAS", + "require": "4.4", + "category": "security", + "hasDependency": false, + "hasOwnDeamon": false, + "maxDependancyInstallTime": 0, + "language": [ + "de_DE", + "en_US", + "es_ES", + "fr_FR", + "it_IT", + "pt_PT" + ], + "compatibility": [ + "miniplus", + "smart", + "rpi", + "docker", + "diy", + "mobile", + "v4" + ], + "changelog": "https://doc.jeedom.com/#language#/plugins/security/ajaxSystem/changelog", + "documentation": "https://doc.jeedom.com/#language#/plugins/security/ajaxSystem/", + "changelog_beta": "https://doc.jeedom.com/#language#/plugins/security/ajaxSystem/beta/changelog", + "documentation_beta": "https://doc.jeedom.com/#language#/plugins/security/ajaxSystem/beta" } \ No newline at end of file