diff --git a/core/class/ajaxSystem.class.php b/core/class/ajaxSystem.class.php
index 4152c5b..482056a 100644
--- a/core/class/ajaxSystem.class.php
+++ b/core/class/ajaxSystem.class.php
@@ -33,8 +33,11 @@ public static function templateWidget() {
'test' => array(
array('operation' => '#value# == "ARMED"', 'state_light' => ''),
array('operation' => '#value# == "DISARMED"', 'state_light' => ''),
+ array('operation' => '#value# == "ARMED_NIGHT_MODE_OFF"', 'state_light' => ''),
+ array('operation' => '#value# == "DISARMED_NIGHT_MODE_ON"', 'state_light' => ''),
array('operation' => '#value# == "DISARMED_NIGHT_MODE_OFF"', 'state_light' => ''),
array('operation' => '#value# == "NIGHT_MODE"', 'state_light' => ''),
+ array('operation' => '#value# == "ARMED_NIGHT_MODE_ON"', 'state_light' => ''),
array('operation' => '#value# == "PANIC"', 'state_light' => '')
)
);
diff --git a/core/config/devices/FireProtect2.json b/core/config/devices/FireProtect2.json
new file mode 100644
index 0000000..68246d2
--- /dev/null
+++ b/core/config/devices/FireProtect2.json
@@ -0,0 +1,77 @@
+{
+ "name" : "Détecteur de fumée 2",
+ "commands" : [
+ {
+ "name": "Etat",
+ "type": "info",
+ "subtype": "string",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "state"
+ },
+ {
+ "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": "Température",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 1,
+ "logicalId": "temperature",
+ "generic_type": "TEMPERATURE",
+ "unite" : "°C"
+ },
+ {
+ "name": "Trafiqué",
+ "type": "info",
+ "subtype": "binary",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "tampered",
+ "configuration": {
+ "repeatEventManagement": "always"
+ }
+ },
+ {
+ "name": "En ligne",
+ "type": "info",
+ "subtype": "binary",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "online",
+ "configuration": {
+ "repeatEventManagement": "always"
+ }
+ },
+ {
+ "name": "Signal",
+ "type": "info",
+ "subtype": "string",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "signalLevel"
+ }
+ ]
+ }
\ No newline at end of file
diff --git a/core/config/devices/FireProtect2.png b/core/config/devices/FireProtect2.png
new file mode 100644
index 0000000..ef025e8
Binary files /dev/null and b/core/config/devices/FireProtect2.png differ
diff --git a/core/config/devices/FireProtect2Plus.json b/core/config/devices/FireProtect2Plus.json
new file mode 100644
index 0000000..b58331d
--- /dev/null
+++ b/core/config/devices/FireProtect2Plus.json
@@ -0,0 +1,77 @@
+{
+ "name" : "Détecteur de fumée 2 plus",
+ "commands" : [
+ {
+ "name": "Etat",
+ "type": "info",
+ "subtype": "string",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "state"
+ },
+ {
+ "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": "Température",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 1,
+ "logicalId": "temperature",
+ "generic_type": "TEMPERATURE",
+ "unite" : "°C"
+ },
+ {
+ "name": "Trafiqué",
+ "type": "info",
+ "subtype": "binary",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "tampered",
+ "configuration": {
+ "repeatEventManagement": "always"
+ }
+ },
+ {
+ "name": "En ligne",
+ "type": "info",
+ "subtype": "binary",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "online",
+ "configuration": {
+ "repeatEventManagement": "always"
+ }
+ },
+ {
+ "name": "Signal",
+ "type": "info",
+ "subtype": "string",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "signalLevel"
+ }
+ ]
+ }
\ No newline at end of file
diff --git a/core/config/devices/FireProtect2Plus.png b/core/config/devices/FireProtect2Plus.png
new file mode 100644
index 0000000..ef025e8
Binary files /dev/null and b/core/config/devices/FireProtect2Plus.png differ
diff --git a/core/config/devices/FireProtect2Plus_black.png b/core/config/devices/FireProtect2Plus_black.png
new file mode 100644
index 0000000..f57d8b2
Binary files /dev/null and b/core/config/devices/FireProtect2Plus_black.png differ
diff --git a/core/config/devices/FireProtect2Plus_white.png b/core/config/devices/FireProtect2Plus_white.png
new file mode 100644
index 0000000..e00d0b7
Binary files /dev/null and b/core/config/devices/FireProtect2Plus_white.png differ
diff --git a/core/config/devices/FireProtect2_black.png b/core/config/devices/FireProtect2_black.png
new file mode 100644
index 0000000..f57d8b2
Binary files /dev/null and b/core/config/devices/FireProtect2_black.png differ
diff --git a/core/config/devices/FireProtect2_white.png b/core/config/devices/FireProtect2_white.png
new file mode 100644
index 0000000..e00d0b7
Binary files /dev/null and b/core/config/devices/FireProtect2_white.png differ
diff --git a/core/config/devices/LifeQuality.json b/core/config/devices/LifeQuality.json
index f180774..bc9733c 100644
--- a/core/config/devices/LifeQuality.json
+++ b/core/config/devices/LifeQuality.json
@@ -1,6 +1,59 @@
{
- "name" : "Life Quality",
- "commands" : [
-
- ]
- }
\ No newline at end of file
+ "name": "Life Quality",
+ "commands": [
+ {
+ "name": "Temperature",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 1,
+ "unite": "°C",
+ "generic_type": "TEMPERATURE",
+ "logicalId": "actualTemperature",
+ "configuration": {
+ "calculValueOffset": "#value# / 10"
+ }
+ },
+ {
+ "name": "Humidity",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 1,
+ "unite": "%",
+ "generic_type": "HUMIDITY",
+ "logicalId": "actualHumidity",
+ "configuration": {
+ "calculValueOffset": "#value# / 10"
+ }
+ },
+ {
+ "name": "CO2",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 1,
+ "unite": "ppm",
+ "generic_type": "CO2",
+ "logicalId": "actualCO2"
+ },
+ {
+ "name": "Battery",
+ "type": "info",
+ "subtype": "numeric",
+ "isVisible": 1,
+ "isHistorized": 0,
+ "unite": "%",
+ "generic_type": "BATTERY",
+ "logicalId": "batteryChargeLevelPercentage"
+ },
+ {
+ "name": "Signal",
+ "type": "info",
+ "subtype": "string",
+ "isVisible": 0,
+ "isHistorized": 0,
+ "logicalId": "signalLevel"
+ }
+ ]
+}
diff --git a/docs/de_DE/changelog.md b/docs/de_DE/changelog.md
index 08fa515..ef54862 100644
--- a/docs/de_DE/changelog.md
+++ b/docs/de_DE/changelog.md
@@ -4,8 +4,12 @@
>
>Zur Erinnerung: Wenn keine Informationen zur Aktualisierung vorliegen, liegt dies daran, dass es sich nur um die Aktualisierung von Dokumentation, Übersetzung oder Text handelt
+-
+-
-- )
+# 02/07/2025
+
+- Ajout du hub Superior Hub Hybrid (4G)
# 17/06/2025
diff --git a/docs/en_US/changelog.md b/docs/en_US/changelog.md
index c9d511b..19ef033 100644
--- a/docs/en_US/changelog.md
+++ b/docs/en_US/changelog.md
@@ -4,8 +4,12 @@
>
>As a reminder, if there is no information on the update, it is because it concerns only the update of documentation, translation or text
+-
+-
-- )
+# 02/07/2025
+
+- Ajout du hub Superior Hub Hybrid (4G)
# 17/06/2025
diff --git a/docs/es_ES/changelog.md b/docs/es_ES/changelog.md
index e315fea..43a20fb 100644
--- a/docs/es_ES/changelog.md
+++ b/docs/es_ES/changelog.md
@@ -4,8 +4,12 @@
>
>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
+-
+-
-- )
+# 02/07/2025
+
+- Ajout du hub Superior Hub Hybrid (4G)
# 17/06/2025
diff --git a/docs/fr_FR/changelog.md b/docs/fr_FR/changelog.md
index bb3e9b4..11e14d1 100644
--- a/docs/fr_FR/changelog.md
+++ b/docs/fr_FR/changelog.md
@@ -4,6 +4,11 @@
>
>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
+# 25/11/2025
+
+- Ajout du Fire Protect 2
+- Ajout du Fire Protect 2 plus
+
# 02/07/2025
- Ajout du hub Superior Hub Hybrid (4G)
diff --git a/docs/i18n/de_DE.json b/docs/i18n/de_DE.json
index dec00a5..74a6b99 100644
--- a/docs/i18n/de_DE.json
+++ b/docs/i18n/de_DE.json
@@ -2,7 +2,10 @@
"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",
- "Ajout du hub Superior Hub Hybrid (4G": "",
+ "Ajout du Fire Protect 2": "",
+ "Ajout du Fire Protect 2 plus": "",
+ "02\/07\/2025": "02\/07\/2025",
+ "Ajout du hub Superior Hub Hybrid (4G": "Ajout du hub Superior Hub Hybrid (4G",
"17\/06\/2025": "17\/06\/2025",
"Ajout du waterstop": "Ajout du waterstop",
"Meilleur gestion des requetes au cloud": "Bessere Verwaltung von Cloud-Anfragen",
diff --git a/docs/i18n/en_US.json b/docs/i18n/en_US.json
index 1004ae8..cbf4057 100644
--- a/docs/i18n/en_US.json
+++ b/docs/i18n/en_US.json
@@ -2,7 +2,10 @@
"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",
- "Ajout du hub Superior Hub Hybrid (4G": "",
+ "Ajout du Fire Protect 2": "",
+ "Ajout du Fire Protect 2 plus": "",
+ "02\/07\/2025": "02\/07\/2025",
+ "Ajout du hub Superior Hub Hybrid (4G": "Ajout du hub Superior Hub Hybrid (4G",
"17\/06\/2025": "17\/06\/2025",
"Ajout du waterstop": "Ajout du waterstop",
"Meilleur gestion des requetes au cloud": "Better cloud query management",
diff --git a/docs/i18n/es_ES.json b/docs/i18n/es_ES.json
index 5407afe..3d33647 100644
--- a/docs/i18n/es_ES.json
+++ b/docs/i18n/es_ES.json
@@ -2,7 +2,10 @@
"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",
- "Ajout du hub Superior Hub Hybrid (4G": "",
+ "Ajout du Fire Protect 2": "",
+ "Ajout du Fire Protect 2 plus": "",
+ "02\/07\/2025": "02\/07\/2025",
+ "Ajout du hub Superior Hub Hybrid (4G": "Ajout du hub Superior Hub Hybrid (4G",
"17\/06\/2025": "17\/06\/2025",
"Ajout du waterstop": "Ajout du waterstop",
"Meilleur gestion des requetes au cloud": "Mejor gestión de las solicitudes en la nube",
diff --git a/docs/i18n/fr_FR.json b/docs/i18n/fr_FR.json
index 2db06d2..f3a008d 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",
+ "Ajout du Fire Protect 2": "Ajout du Fire Protect 2",
+ "Ajout du Fire Protect 2 plus": "Ajout du Fire Protect 2 plus",
+ "02\/07\/2025": "02\/07\/2025",
"Ajout du hub Superior Hub Hybrid (4G": "Ajout du hub Superior Hub Hybrid (4G",
"17\/06\/2025": "17\/06\/2025",
"Ajout du waterstop": "Ajout du waterstop",
diff --git a/docs/i18n/pt_PT.json b/docs/i18n/pt_PT.json
index 38eb5f7..7004506 100644
--- a/docs/i18n/pt_PT.json
+++ b/docs/i18n/pt_PT.json
@@ -2,7 +2,10 @@
"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",
- "Ajout du hub Superior Hub Hybrid (4G": "",
+ "Ajout du Fire Protect 2": "",
+ "Ajout du Fire Protect 2 plus": "",
+ "02\/07\/2025": "02\/07\/2025",
+ "Ajout du hub Superior Hub Hybrid (4G": "Ajout du hub Superior Hub Hybrid (4G",
"17\/06\/2025": "17\/06\/2025",
"Ajout du waterstop": "Ajout du waterstop",
"Meilleur gestion des requetes au cloud": "Melhor gerenciamento de solicitações de nuvem",
diff --git a/docs/pt_PT/changelog.md b/docs/pt_PT/changelog.md
index 9ffd667..f37dfc1 100644
--- a/docs/pt_PT/changelog.md
+++ b/docs/pt_PT/changelog.md
@@ -4,8 +4,12 @@
>
>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
+-
+-
-- )
+# 02/07/2025
+
+- Ajout du hub Superior Hub Hybrid (4G)
# 17/06/2025