From e5b33fd6d82136c9bd687c2231cc79dcfc02d197 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 5 Feb 2024 19:16:09 +0100 Subject: [PATCH 01/37] Update netatmo.class.php Add json request sent to netatmo in log (mode debug) --- core/class/netatmo.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 34466fd..5f8bc7f 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -1,6 +1,6 @@ setPost(json_encode($_data)); } $return = json_decode($request_http->exec(30,1),true); From 587cb3dafd226b8c5c325d62522fa212dc07a297 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Tue, 6 Feb 2024 09:43:37 +0100 Subject: [PATCH 02/37] Petite correction sur le titre et ajout sur d'infos sur les changements --- docs/fr_FR/changelog.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/docs/fr_FR/changelog.md b/docs/fr_FR/changelog.md index c9703e6..52587be 100644 --- a/docs/fr_FR/changelog.md +++ b/docs/fr_FR/changelog.md @@ -1,10 +1,13 @@ -# Changelog plugin template +# Changelog plugin Netatmo >**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. +# 05/02/2024 - Amélioration du support des tags +- Identification du relais (bridge) des équipements (module Energie) +- Ajout d'informations dans les logs # 24/01/2024 From d79d37af93297d520fccd20adb2e42d9f9566621 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Tue, 6 Feb 2024 12:24:37 +0100 Subject: [PATCH 03/37] Update netatmo.class.php --- core/class/netatmo.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 5f8bc7f..73b1596 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -109,7 +109,7 @@ public static function request($_path,$_data = null,$_type='GET'){ 'Autorization: '.sha512(mb_strtolower(config::byKey('market::username')).':'.config::byKey('market::password')) )); if($_type == 'POST'){ - log::add('netatmo','debug','[netatmo] request-json : '.json_encode($_data)); + log::add('netatmo','debug','[netatmo] request-json('.$_path.') : '.json_encode($_data)); $request_http->setPost(json_encode($_data)); } $return = json_decode($request_http->exec(30,1),true); From 3077b464a55f28b24a3bd889fefd0162582bb3e7 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Tue, 6 Feb 2024 13:42:21 +0100 Subject: [PATCH 04/37] Update netatmo.class.php --- core/class/netatmo.class.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 73b1596..1664277 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -108,11 +108,13 @@ public static function request($_path,$_data = null,$_type='GET'){ 'Content-Type: application/json', 'Autorization: '.sha512(mb_strtolower(config::byKey('market::username')).':'.config::byKey('market::password')) )); + log::add('netatmo','debug','[netatmo cloud] request : '.$_path); if($_type == 'POST'){ - log::add('netatmo','debug','[netatmo] request-json('.$_path.') : '.json_encode($_data)); + log::add('netatmo','debug','[netatmo cloud] request (POST json): '.json_encode($_data)); $request_http->setPost(json_encode($_data)); } $return = json_decode($request_http->exec(30,1),true); + log::add('netatmo','debug','[netatmo cloud] response : '.json_encode($return)); $return = is_json($return,$return); if(isset($return['state']) && $return['state'] != 'ok'){ throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); From 59b331c729afc051a0f7d98f4a769e2ff1657ced Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Tue, 6 Feb 2024 13:46:27 +0100 Subject: [PATCH 05/37] Update netatmo_energy.class.php Bascule du log des appels cloud netatmo dans la class netatmo principale --- core/class/netatmo_energy.class.php | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index 0253d46..73bccb9 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -36,7 +36,6 @@ public static function getRoomEnergyDevices($_modules,$_module_ids){ public static function sync(){ $homesdata = netatmo::request('/homesdata'); - log::add('netatmo','debug','[netatmo energy] homesdata : '.json_encode($homesdata)); if(isset($homesdata['homes']) && count($homesdata['homes']) > 0){ foreach ($homesdata['homes'] as $home) { if(!isset($home['rooms']) || count($home['rooms']) == 0 || !isset($home['modules']) || count($home['modules']) == 0 || !isset($home['schedules'])){ @@ -121,7 +120,6 @@ public static function sync(){ public static function refresh($homesdata = null){ if($homesdata == null) { $homesdata = netatmo::request('/homesdata'); - log::add('netatmo','debug','[netatmo energy] homesdata : '.json_encode($homestatus)); } $home_ids = array(); if(isset($homesdata['homes']) && count($homesdata['homes']) > 0){ @@ -158,7 +156,6 @@ public static function refresh($homesdata = null){ } foreach ($home_ids as $home_id) { $homestatus = netatmo::request('/homestatus',array('home_id' => $home_id)); - log::add('netatmo','debug','[netatmo energy] homestatus : '.json_encode($homestatus)); if(isset($homestatus['home']) && isset($homestatus['home']['modules']) && count($homestatus['home']['modules']) > 0){ foreach ($homestatus['home']['modules'] as $module) { $eqLogic = eqLogic::byLogicalId($module['id'], 'netatmo'); @@ -184,14 +181,14 @@ public static function execCmd($_cmd,$_options = array()){ $eqLogic = $_cmd->getEqLogic(); if($_cmd->getLogicalId() == 'setpoint'){ if($eqLogic->getConfiguration('bridge_type') == 'OTH'){ - netatmo::request('/setstate ',array( + netatmo::request('/setstate',array( 'home' => array( 'id' => $eqLogic->getConfiguration('home_id'), 'rooms' => array( array( 'id' => $eqLogic->getLogicalId(), 'therm_setpoint_mode' => 'manual', - 'therm_setpoint_temperature' => intval($_options['slider']), + 'therm_setpoint_temperature' => floatval($_options['slider']), ) ) ) @@ -206,7 +203,7 @@ public static function execCmd($_cmd,$_options = array()){ } }else if($_cmd->getLogicalId() == 'mode_auto'){ if($eqLogic->getConfiguration('bridge_type') == 'OTH'){ - netatmo::request('/setstate ',array( + netatmo::request('/setstate',array( 'home' => array( 'id' => $eqLogic->getConfiguration('home_id'), 'rooms' => array( From ddb5e01d2c323eb83369e8a6a4f2200eba19d1ad Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 7 Feb 2024 19:14:18 +0100 Subject: [PATCH 06/37] Update netatmo.class.php Centralisation des logs en mode debug depuis class netatmo --- core/class/netatmo.class.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 1664277..4617323 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -1,6 +1,6 @@ setPost(json_encode($_data)); } + else { + if($_data !== null) log::add('netatmo','debug','[netatmo cloud] request : '.$_path.'?options='.json_encode($_data)); + else log::add('netatmo','debug','[netatmo cloud] request : '.$_path); + } $return = json_decode($request_http->exec(30,1),true); log::add('netatmo','debug','[netatmo cloud] response : '.json_encode($return)); $return = is_json($return,$return); From 23527591bc31d81996cdd2116103a573636597f5 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 7 Feb 2024 19:44:06 +0100 Subject: [PATCH 07/37] Update netatmo_energy.class.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Réduction des requêtes cloud aux maisons réellement équipées d'un module netatmo. --- core/class/netatmo_energy.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index bff5e90..c5eaff5 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -124,7 +124,7 @@ public static function refresh($homesdata = null){ $home_ids = array(); if(isset($homesdata['homes']) && count($homesdata['homes']) > 0){ foreach ($homesdata['homes'] as $home) { - if(!isset($home['rooms'])){ + if(!isset($home['modules'])){ continue; } $home_ids[] = $home['id']; From 19a591e0b9ceae060eb4f9c082cf1588a62d5c98 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 7 Feb 2024 19:46:05 +0100 Subject: [PATCH 08/37] Update changelog.md --- docs/fr_FR/changelog.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/fr_FR/changelog.md b/docs/fr_FR/changelog.md index 52587be..d0007cf 100644 --- a/docs/fr_FR/changelog.md +++ b/docs/fr_FR/changelog.md @@ -6,8 +6,8 @@ # 05/02/2024 - Amélioration du support des tags -- Identification du relais (bridge) des équipements (module Energie) -- Ajout d'informations dans les logs +- Identification du relais (bridge) et de sa typologie pour les équipements du module Energie +- Ajout d'informations dans les logs (requêtes cloud lorsque le mode debug est activé) # 24/01/2024 From 7b2b36bc6e49992ad54a5828483934c879fd0d94 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 21:45:11 +0100 Subject: [PATCH 09/37] Update NRV.json --- core/config/devices/NRV.json | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) diff --git a/core/config/devices/NRV.json b/core/config/devices/NRV.json index 239e97f..7f9297e 100644 --- a/core/config/devices/NRV.json +++ b/core/config/devices/NRV.json @@ -85,13 +85,35 @@ "logicalId": "setpoint" }, { - "name": "Auto", + "name": "Mode Auto", "type": "action", "subtype": "other", "isVisible": 1, "isHistorized": 0, "generic_type" : "THERMOSTAT_SET_MODE", "logicalId": "mode_auto" - } + }, + { + "name": "Mode OFF", + "type": "action", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_off" + }, + { + "name": "Mode OFF (heures)", + "type": "action", + "subtype": "slider", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "configuration" : { + "minValue" : 1, + "maxValue" : 24 + }, + "logicalId": "mode_off_endtime" + } ] } From 400a2ae19a773fed5f13823458ae056e2a2e0cd4 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 21:47:37 +0100 Subject: [PATCH 10/37] Create NRV-BridgeOTH.json --- core/config/devices/NRV-BridgeOTH.json | 119 +++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 core/config/devices/NRV-BridgeOTH.json diff --git a/core/config/devices/NRV-BridgeOTH.json b/core/config/devices/NRV-BridgeOTH.json new file mode 100644 index 0000000..8a3cfce --- /dev/null +++ b/core/config/devices/NRV-BridgeOTH.json @@ -0,0 +1,119 @@ +{ + "name" : "Vanne", + "commands" : [ + { + "name": "Anticipation", + "type": "info", + "subtype": "binary", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "anticipating", + "configuration": { + "repeatEventManagement": "always" + } + }, + { + "name": "Fenêtre ouverte", + "type": "info", + "subtype": "binary", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "open_window", + "configuration": { + "repeatEventManagement": "always" + } + }, + { + "name": "Température", + "type": "info", + "subtype": "numeric", + "isVisible": 1, + "isHistorized": 1, + "unite" : "°C", + "generic_type" : "THERMOSTAT_TEMPERATURE", + "logicalId": "therm_measured_temperature" + }, + { + "name": "Puissance", + "type": "info", + "subtype": "numeric", + "isVisible": 1, + "isHistorized": 1, + "logicalId": "heating_power_request" + }, + { + "name": "Mode", + "type": "info", + "subtype": "string", + "isVisible": 1, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_MODE", + "logicalId": "therm_setpoint_mode" + }, + { + "name": "Consigne", + "type": "info", + "subtype": "numeric", + "isVisible": 0, + "isHistorized": 0, + "unite" : "°C", + "generic_type" : "THERMOSTAT_SETPOINT", + "logicalId": "therm_setpoint_temperature", + + "template": { + "dashboard" : "button", + "mobile" : "button" + } + }, + { + "name": "Thermostat", + "type": "action", + "subtype": "slider", + "isVisible": 1, + "isHistorized": 0, + "unite" : "°C", + "value" : "Consigne", + "generic_type" : "THERMOSTAT_SET_SETPOINT", + "template" : { + "dashboard" : "button", + "mobile" : "button" + }, + "configuration" : { + "minValue" : 10, + "maxValue" : 35 + }, + "logicalId": "setpoint" + }, + { + "name": "Mode Auto", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_auto" + }, + { + "name": "Mode Hors-Gel", + "type": "action", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_hg" + }, + { + "name": "Mode Hors-Gel (heures)", + "type": "action", + "subtype": "slider", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "configuration" : { + "minValue" : 1, + "maxValue" : 24 + }, + "logicalId": "mode_hg_endtime" + } + ] +} From 3e7ffccc4a1c06ea1d64fa9e0847fe9f1402bb8e Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 21:48:16 +0100 Subject: [PATCH 11/37] Add files via upload --- core/config/devices/NRV-BridgeOTH.png | Bin 0 -> 120705 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 core/config/devices/NRV-BridgeOTH.png diff --git a/core/config/devices/NRV-BridgeOTH.png b/core/config/devices/NRV-BridgeOTH.png new file mode 100644 index 0000000000000000000000000000000000000000..5b673e25889c0cee99e4289da36d32d5b4350b58 GIT binary patch literal 120705 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 literal 0 HcmV?d00001 From d0b383d56346f2971e71cd3b333d53acc7fc2443 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 21:53:00 +0100 Subject: [PATCH 12/37] Update netatmo_energy.class.php --- core/class/netatmo_energy.class.php | 67 ++++++++++++++++++++++++++--- 1 file changed, 62 insertions(+), 5 deletions(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index c5eaff5..1ce0a22 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -209,7 +209,7 @@ public static function execCmd($_cmd,$_options = array()){ array( 'id' => $eqLogic->getLogicalId(), 'therm_setpoint_mode' => 'manual', - 'therm_setpoint_temperature' => floatval($_options['slider']), + 'therm_setpoint_temperature' => intval($_options['slider']), ) ) ) @@ -242,17 +242,74 @@ public static function execCmd($_cmd,$_options = array()){ 'mode' => 'home', ),'POST'); } - }else if($_cmd->getLogicalId() == 'home_mode_away'){ + }else if($_cmd->getLogicalId() == 'mode_hg'){ + netatmo::request('/setstate',array( + 'home' => array( + 'id' => $eqLogic->getConfiguration('home_id'), + 'rooms' => array( + array( + 'id' => $eqLogic->getLogicalId(), + 'therm_setpoint_mode' => 'hg' + ) + ) + ) + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_hg_endtime'){ + log::add('netatmo','debug','[netatmo energy] Mode HG'); + netatmo::request('/setstate',array( + 'home' => array( + 'id' => $eqLogic->getConfiguration('home_id'), + 'rooms' => array( + array( + 'id' => $eqLogic->getLogicalId(), + 'therm_setpoint_mode' => 'hg', + 'therm_setpoint_end_time' => strtotime('now +'.$_options['slider'].' hours') + ) + ) + ) + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_off'){ + log::add('netatmo','debug','[netatmo energy] Mode OFF'); + netatmo::request('/setroomthermpoint',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'room_id' => $eqLogic->getLogicalId(), + 'mode' => 'off', + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_off_endtime'){ + log::add('netatmo','debug','[netatmo energy] Mode OFF (heures)'); + netatmo::request('/setroomthermpoint',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'room_id' => $eqLogic->getLogicalId(), + 'mode' => 'off', + 'endtime' => strtotime('now +'.$_options['slider'].' hours') + ),'POST'); + + }else if($_cmd->getLogicalId() == 'home_mode_away_endtime'){ netatmo::request('/setthermmode',array( 'home_id' => $eqLogic->getConfiguration('home_id'), 'mode' => 'away', - 'endtime' => strotime('now +'.$_options['slider'].' hours') + 'endtime' => strtotime('now +'.$_options['slider'].' hours') ),'POST'); - }else if($_cmd->getLogicalId() == 'home_mode_hg'){ + }else if($_cmd->getLogicalId() == 'home_mode_hg_endtime'){ netatmo::request('/setthermmode',array( 'home_id' => $eqLogic->getConfiguration('home_id'), 'mode' => 'hg', - 'endtime' => strotime('now +'.$_options['slider'].' hours') + 'endtime' => strtotime('now +'.$_options['slider'].' hours') + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_schedule'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'schedule' + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_away'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'away' + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_hg'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'hg' ),'POST'); }else if(strpos($_cmd->getLogicalId(),'schedule') !== false){ netatmo::request('/setthermmode',array( From 60321dedab2e5f156953e5908f405d23228c1b96 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 22:36:44 +0100 Subject: [PATCH 13/37] Update netatmo.php --- desktop/php/netatmo.php | 1 + 1 file changed, 1 insertion(+) diff --git a/desktop/php/netatmo.php b/desktop/php/netatmo.php index e98eb51..966c5c1 100644 --- a/desktop/php/netatmo.php +++ b/desktop/php/netatmo.php @@ -148,6 +148,7 @@ + From b57d94a985dba57704d5d2ed2b875cfc2d955b9f Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 23:14:45 +0100 Subject: [PATCH 14/37] Update netatmo_energy.class.php --- core/class/netatmo_energy.class.php | 67 ++++++++++++++++++++++++++--- 1 file changed, 62 insertions(+), 5 deletions(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index c5eaff5..1ce0a22 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -209,7 +209,7 @@ public static function execCmd($_cmd,$_options = array()){ array( 'id' => $eqLogic->getLogicalId(), 'therm_setpoint_mode' => 'manual', - 'therm_setpoint_temperature' => floatval($_options['slider']), + 'therm_setpoint_temperature' => intval($_options['slider']), ) ) ) @@ -242,17 +242,74 @@ public static function execCmd($_cmd,$_options = array()){ 'mode' => 'home', ),'POST'); } - }else if($_cmd->getLogicalId() == 'home_mode_away'){ + }else if($_cmd->getLogicalId() == 'mode_hg'){ + netatmo::request('/setstate',array( + 'home' => array( + 'id' => $eqLogic->getConfiguration('home_id'), + 'rooms' => array( + array( + 'id' => $eqLogic->getLogicalId(), + 'therm_setpoint_mode' => 'hg' + ) + ) + ) + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_hg_endtime'){ + log::add('netatmo','debug','[netatmo energy] Mode HG'); + netatmo::request('/setstate',array( + 'home' => array( + 'id' => $eqLogic->getConfiguration('home_id'), + 'rooms' => array( + array( + 'id' => $eqLogic->getLogicalId(), + 'therm_setpoint_mode' => 'hg', + 'therm_setpoint_end_time' => strtotime('now +'.$_options['slider'].' hours') + ) + ) + ) + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_off'){ + log::add('netatmo','debug','[netatmo energy] Mode OFF'); + netatmo::request('/setroomthermpoint',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'room_id' => $eqLogic->getLogicalId(), + 'mode' => 'off', + ),'POST'); + }else if($_cmd->getLogicalId() == 'mode_off_endtime'){ + log::add('netatmo','debug','[netatmo energy] Mode OFF (heures)'); + netatmo::request('/setroomthermpoint',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'room_id' => $eqLogic->getLogicalId(), + 'mode' => 'off', + 'endtime' => strtotime('now +'.$_options['slider'].' hours') + ),'POST'); + + }else if($_cmd->getLogicalId() == 'home_mode_away_endtime'){ netatmo::request('/setthermmode',array( 'home_id' => $eqLogic->getConfiguration('home_id'), 'mode' => 'away', - 'endtime' => strotime('now +'.$_options['slider'].' hours') + 'endtime' => strtotime('now +'.$_options['slider'].' hours') ),'POST'); - }else if($_cmd->getLogicalId() == 'home_mode_hg'){ + }else if($_cmd->getLogicalId() == 'home_mode_hg_endtime'){ netatmo::request('/setthermmode',array( 'home_id' => $eqLogic->getConfiguration('home_id'), 'mode' => 'hg', - 'endtime' => strotime('now +'.$_options['slider'].' hours') + 'endtime' => strtotime('now +'.$_options['slider'].' hours') + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_schedule'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'schedule' + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_away'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'away' + ),'POST'); + }else if($_cmd->getLogicalId() == 'home_mode_hg'){ + netatmo::request('/setthermmode',array( + 'home_id' => $eqLogic->getConfiguration('home_id'), + 'mode' => 'hg' ),'POST'); }else if(strpos($_cmd->getLogicalId(),'schedule') !== false){ netatmo::request('/setthermmode',array( From 022c7165516fc8b91f15d4b5b0cacf837f2469fe Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 23:19:57 +0100 Subject: [PATCH 15/37] Add files via upload --- core/config/devices/NRV-BridgeOTH.png | Bin 0 -> 120705 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 core/config/devices/NRV-BridgeOTH.png diff --git a/core/config/devices/NRV-BridgeOTH.png b/core/config/devices/NRV-BridgeOTH.png new file mode 100644 index 0000000000000000000000000000000000000000..5b673e25889c0cee99e4289da36d32d5b4350b58 GIT binary patch literal 120705 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 literal 0 HcmV?d00001 From 70cf5251749f89ef146a4237eab6d12f676f05e9 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 23:20:43 +0100 Subject: [PATCH 16/37] Create NRV-BridgeOTH.json --- core/config/devices/NRV-BridgeOTH.json | 119 +++++++++++++++++++++++++ 1 file changed, 119 insertions(+) create mode 100644 core/config/devices/NRV-BridgeOTH.json diff --git a/core/config/devices/NRV-BridgeOTH.json b/core/config/devices/NRV-BridgeOTH.json new file mode 100644 index 0000000..8a3cfce --- /dev/null +++ b/core/config/devices/NRV-BridgeOTH.json @@ -0,0 +1,119 @@ +{ + "name" : "Vanne", + "commands" : [ + { + "name": "Anticipation", + "type": "info", + "subtype": "binary", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "anticipating", + "configuration": { + "repeatEventManagement": "always" + } + }, + { + "name": "Fenêtre ouverte", + "type": "info", + "subtype": "binary", + "isVisible": 1, + "isHistorized": 0, + "logicalId": "open_window", + "configuration": { + "repeatEventManagement": "always" + } + }, + { + "name": "Température", + "type": "info", + "subtype": "numeric", + "isVisible": 1, + "isHistorized": 1, + "unite" : "°C", + "generic_type" : "THERMOSTAT_TEMPERATURE", + "logicalId": "therm_measured_temperature" + }, + { + "name": "Puissance", + "type": "info", + "subtype": "numeric", + "isVisible": 1, + "isHistorized": 1, + "logicalId": "heating_power_request" + }, + { + "name": "Mode", + "type": "info", + "subtype": "string", + "isVisible": 1, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_MODE", + "logicalId": "therm_setpoint_mode" + }, + { + "name": "Consigne", + "type": "info", + "subtype": "numeric", + "isVisible": 0, + "isHistorized": 0, + "unite" : "°C", + "generic_type" : "THERMOSTAT_SETPOINT", + "logicalId": "therm_setpoint_temperature", + + "template": { + "dashboard" : "button", + "mobile" : "button" + } + }, + { + "name": "Thermostat", + "type": "action", + "subtype": "slider", + "isVisible": 1, + "isHistorized": 0, + "unite" : "°C", + "value" : "Consigne", + "generic_type" : "THERMOSTAT_SET_SETPOINT", + "template" : { + "dashboard" : "button", + "mobile" : "button" + }, + "configuration" : { + "minValue" : 10, + "maxValue" : 35 + }, + "logicalId": "setpoint" + }, + { + "name": "Mode Auto", + "type": "action", + "subtype": "other", + "isVisible": 1, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_auto" + }, + { + "name": "Mode Hors-Gel", + "type": "action", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_hg" + }, + { + "name": "Mode Hors-Gel (heures)", + "type": "action", + "subtype": "slider", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "configuration" : { + "minValue" : 1, + "maxValue" : 24 + }, + "logicalId": "mode_hg_endtime" + } + ] +} From c582d887f53fea38f3e23b03ba6142c3301bf492 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Wed, 28 Feb 2024 23:24:06 +0100 Subject: [PATCH 17/37] Update netatmo_energy.class.php --- core/class/netatmo_energy.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index 1ce0a22..5b7d43c 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -209,7 +209,7 @@ public static function execCmd($_cmd,$_options = array()){ array( 'id' => $eqLogic->getLogicalId(), 'therm_setpoint_mode' => 'manual', - 'therm_setpoint_temperature' => intval($_options['slider']), + 'therm_setpoint_temperature' => floatval($_options['slider']), ) ) ) From 60a1e3f9d56227a4b0c0dfaa295e2456a4497d9c Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Thu, 29 Feb 2024 21:14:54 +0100 Subject: [PATCH 18/37] Update OTM.json --- core/config/devices/OTM.json | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/core/config/devices/OTM.json b/core/config/devices/OTM.json index 606a399..3eb6cd3 100644 --- a/core/config/devices/OTM.json +++ b/core/config/devices/OTM.json @@ -1,5 +1,5 @@ { - "name" : "Thermostat open therm", + "name" : "Thermostat modulant OpenTherm", "commands" : [ { "name": "Anticipation", @@ -76,7 +76,7 @@ "logicalId": "setpoint" }, { - "name": "Auto", + "name": "Mode Auto", "type": "action", "subtype": "other", "isVisible": 1, @@ -91,6 +91,28 @@ "isVisible": 1, "isHistorized": 0, "logicalId": "boiler_status" - } + }, + { + "name": "Mode Hors-Gel", + "type": "action", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_hg" + }, + { + "name": "Mode Hors-Gel (heures)", + "type": "action", + "subtype": "slider", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "configuration" : { + "minValue" : 1, + "maxValue" : 24 + }, + "logicalId": "mode_hg_endtime" + } ] } From 0931ca56738d55d14032dce4b0a10fec087e1bfb Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Thu, 29 Feb 2024 23:21:31 +0100 Subject: [PATCH 19/37] Update NATherm1.json --- core/config/devices/NATherm1.json | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/core/config/devices/NATherm1.json b/core/config/devices/NATherm1.json index 0e48097..be43bc4 100644 --- a/core/config/devices/NATherm1.json +++ b/core/config/devices/NATherm1.json @@ -76,7 +76,7 @@ "logicalId": "setpoint" }, { - "name": "Auto", + "name": "Mode Auto", "type": "action", "subtype": "other", "isVisible": 1, @@ -91,6 +91,28 @@ "isVisible": 1, "isHistorized": 0, "logicalId": "boiler_status" + }, + { + "name": "Mode Off", + "type": "action", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "logicalId": "mode_off" + }, + { + "name": "Mode Off (heures)", + "type": "action", + "subtype": "slider", + "isVisible": 0, + "isHistorized": 0, + "generic_type" : "THERMOSTAT_SET_MODE", + "configuration" : { + "minValue" : 1, + "maxValue" : 24 + }, + "logicalId": "mode_off_endtime" } ] } From 77d7b010b909a5b9549218b6b2b51869864c7f40 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 4 Mar 2024 11:49:09 +0100 Subject: [PATCH 20/37] Update netatmo_energy.class.php --- core/class/netatmo_energy.class.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index 5b7d43c..7d18652 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -318,6 +318,9 @@ public static function execCmd($_cmd,$_options = array()){ 'schedule_id' => str_replace('schedule','',$_cmd->getLogicalId()) ),'POST'); } + else { + throw new \Exception('Erreur lors de l éxécution de la commande (commande '.$_cmd->getLogicalId().' inconnue)'); + } sleep(10); self::refresh(); } From b242100c3ebbc86e9a51442d0eb71ea88fc43f67 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 4 Mar 2024 17:11:15 +0100 Subject: [PATCH 21/37] Update netatmo.class.php Gestion des retours d'erreur Netatmo avec status "ok" --- core/class/netatmo.class.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 4617323..b75529f 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -127,6 +127,10 @@ public static function request($_path,$_data = null,$_type='GET'){ throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); } if(isset($return['body'])){ + $return_temp = $return['body']; + if(isset($return_temp['errors'])){ + throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); + } return $return['body']; } return $return; From ac68296306f311b404c7037eb14a153c5b8c9fd8 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:17:14 +0200 Subject: [PATCH 22/37] Update netatmo_energy.class.php Bascule du Refresh vers la class Netatmo --- core/class/netatmo_energy.class.php | 83 ++--------------------------- 1 file changed, 3 insertions(+), 80 deletions(-) diff --git a/core/class/netatmo_energy.class.php b/core/class/netatmo_energy.class.php index b780794..4e6006f 100644 --- a/core/class/netatmo_energy.class.php +++ b/core/class/netatmo_energy.class.php @@ -118,84 +118,7 @@ public static function sync(){ } public static function refresh($homesdata = null){ - if($homesdata == null) { - $homesdata = netatmo::request('/homesdata'); - } - $home_ids = array(); - if(isset($homesdata['homes']) && count($homesdata['homes']) > 0){ - foreach ($homesdata['homes'] as $home) { - if(!isset($home['modules'])){ - continue; - } - $home_ids[] = $home['id']; - if(!isset($home['therm_mode'])){ - continue; - } - $eqLogic = eqLogic::byLogicalId($home['id'], 'netatmo'); - if(!is_object($eqLogic)){ - continue; - } - if($home['therm_mode'] != 'schedule'){ - $eqLogic->checkAndUpdateCmd('mode',$home['therm_mode']); - continue; - } - if(isset($home['schedules']) && count($home['schedules']) > 0){ - $mode = ''; - foreach ($home['schedules'] as $schedule) { - if(!$schedule['selected']){ - continue; - } - $mode .= $schedule['name'].','; - } - $eqLogic->checkAndUpdateCmd('mode',trim($mode,',')); - } - } - } - if(count($home_ids) == 0){ - return; - } - foreach ($home_ids as $home_id) { - $homestatus = netatmo::request('/homestatus',array('home_id' => $home_id)); - if(isset($homestatus['home']) && isset($homestatus['home']['modules']) && count($homestatus['home']['modules']) > 0){ - foreach ($homestatus['home']['modules'] as $module) { - $eqLogic = eqLogic::byLogicalId($module['id'], 'netatmo'); - if(!is_object($eqLogic)){ - continue; - } - foreach ($eqLogic->getCmd('info') as $cmd) { - $logicalId = $cmd->getLogicalId(); - if($logicalId == 'state'){ - $logicalId = 'status'; - } - if(!isset($module[$logicalId])){ - continue; - } - $eqLogic->checkAndUpdateCmd($cmd,$module[$logicalId]); - } - } - } - if(isset($homestatus['home']) && isset($homestatus['home']['rooms']) && count($homestatus['home']['rooms']) > 0){ - foreach ($homestatus['home']['rooms'] as $room) { - $eqLogic = eqLogic::byLogicalId($room['id'], 'netatmo'); - if(!is_object($eqLogic)){ - continue; - } - foreach ($eqLogic->getCmd('info') as $cmd) { - if(!isset($room[$cmd->getLogicalId()])){ - continue; - } - if($cmd->getLogicalId() == 'therm_setpoint_mode' && $room[$cmd->getLogicalId()] != 'schedule' && isset($room['therm_setpoint_end_time'])){ - $eqLogic->checkAndUpdateCmd($cmd,$room[$cmd->getLogicalId()].' ('.__('fini à',__FILE__).' '.date('H:i',$room['therm_setpoint_end_time']).')'); - continue; - } - $eqLogic->checkAndUpdateCmd($cmd,$room[$cmd->getLogicalId()]); - } - } - } - - - - } + netatmo::refreshClassNetatmo(); } public static function execCmd($_cmd,$_options = array()){ @@ -209,7 +132,7 @@ public static function execCmd($_cmd,$_options = array()){ array( 'id' => $eqLogic->getLogicalId(), 'therm_setpoint_mode' => 'manual', - 'therm_setpoint_temperature' => intval($_options['slider']), + 'therm_setpoint_temperature' => floatval($_options['slider']), ) ) ) @@ -322,6 +245,6 @@ public static function execCmd($_cmd,$_options = array()){ throw new \Exception('Erreur lors de l éxécution de la commande (commande '.$_cmd->getLogicalId().' inconnue)'); } sleep(10); - self::refresh(); + netatmo::refreshClassNetatmo(); } } From 66a430f23287a21dae65c76b94d72d2f5e6ee62b Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:23:02 +0200 Subject: [PATCH 23/37] Update netatmo.class.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reprise du refresh Energy (qui est commun à Security dans le nouveau modèle). L'adaptation de la class Security reste à réaliser --- core/class/netatmo.class.php | 99 +++++++++++++++++++++++++++++++++++- 1 file changed, 97 insertions(+), 2 deletions(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index b75529f..87f2637 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -77,12 +77,107 @@ public static function cron10(){ log::add('netatmo','debug','Weather : '.$e->getMessage()); } try { - netatmo_energy::refresh(); + netatmo::refreshClassNetatmo(); } catch (\Exception $e) { log::add('netatmo','debug','Energy : '.$e->getMessage()); } } + public static function refreshClassNetatmo($homesdata = null){ + if($homesdata == null) { + $homesdata = netatmo::request('/homesdata'); + } + $home_ids = array(); + if(isset($homesdata['homes']) && count($homesdata['homes']) > 0){ + foreach ($homesdata['homes'] as $home) { + if(!isset($home['modules'])){ + continue; + } + if(isset($home['modules']) && count($home['modules']) > 0){ + foreach ($home['modules'] as $module) { + $moduleid = $module['id']; + $ArrayAssocModuleIDtoRoom[$moduleid]= $module['room_id']; + } + } + $home_ids[] = $home['id']; + if(!isset($home['therm_mode'])){ + continue; + } + $eqLogic = eqLogic::byLogicalId($home['id'], 'netatmo'); + if(!is_object($eqLogic)){ + continue; + } + if($home['therm_mode'] != 'schedule'){ + $eqLogic->checkAndUpdateCmd('mode',$home['therm_mode']); + continue; + } + if(isset($home['schedules']) && count($home['schedules']) > 0){ + $mode = ''; + foreach ($home['schedules'] as $schedule) { + if(!$schedule['selected']){ + continue; + } + $mode .= $schedule['name'].','; + } + $eqLogic->checkAndUpdateCmd('mode',trim($mode,',')); + } + } + } + if(count($home_ids) == 0){ + return; + } + foreach ($home_ids as $home_id) { + $homestatus = netatmo::request('/homestatus',array('home_id' => $home_id)); + if(isset($homestatus['home']) && isset($homestatus['home']['modules']) && count($homestatus['home']['modules']) > 0){ + foreach ($homestatus['home']['modules'] as $module) { + if ($module['type']=="OTM" || $module['type']=="NATherm1") { + $eqLogic = eqLogic::byLogicalId($ArrayAssocModuleIDtoRoom[$module['id']], 'netatmo'); + if(is_object($eqLogic)){ + foreach ($eqLogic->getCmd('info') as $cmd) { + $logicalId = $cmd->getLogicalId(); + if(isset($module[$logicalId]) && $cmd->getLogicalID()!="reachable"){ + $eqLogic->checkAndUpdateCmd($cmd,$module[$logicalId]); + } + } + } + } + $eqLogic = eqLogic::byLogicalId($module['id'], 'netatmo'); + if(!is_object($eqLogic)){ + continue; + } + foreach ($eqLogic->getCmd('info') as $cmd) { + $logicalId = $cmd->getLogicalId(); + if($logicalId == 'state'){ + $logicalId = 'status'; + } + if(!isset($module[$logicalId])){ + continue; + } + $eqLogic->checkAndUpdateCmd($cmd,$module[$logicalId]); + } + } + } + if(isset($homestatus['home']) && isset($homestatus['home']['rooms']) && count($homestatus['home']['rooms']) > 0){ + foreach ($homestatus['home']['rooms'] as $room) { + $eqLogic = eqLogic::byLogicalId($room['id'], 'netatmo'); + if(!is_object($eqLogic)){ + continue; + } + foreach ($eqLogic->getCmd('info') as $cmd) { + if(!isset($room[$cmd->getLogicalId()])){ + continue; + } + if($cmd->getLogicalId() == 'therm_setpoint_mode' && $room[$cmd->getLogicalId()] != 'schedule' && isset($room['therm_setpoint_end_time'])){ + $eqLogic->checkAndUpdateCmd($cmd,$room[$cmd->getLogicalId()].' ('.__('fini à',__FILE__).' '.date('H:i',$room['therm_setpoint_end_time']).')'); + continue; + } + $eqLogic->checkAndUpdateCmd($cmd,$room[$cmd->getLogicalId()]); + } + } + } + } + } + public static function cronHourly(){ if(config::byKey('mode', 'netatmo') != 'internal'){ sleep(rand(0,120)); @@ -239,7 +334,7 @@ public function execute($_options = array()) { netatmo_security::refresh(); } if($eqLogic->getConfiguration('type') == 'energy'){ - netatmo_energy::refresh(); + netatmo::refreshClassNetatmo(); } return; } From 0753fe55cfc0eed7494acf89a32912ce292c156b Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:24:57 +0200 Subject: [PATCH 24/37] Update jeeNetatmo.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout de la Gestion de nouveaux événements depuis l'inscription webhook (connection, disconnection, boot) --- core/php/jeeNetatmo.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/core/php/jeeNetatmo.php b/core/php/jeeNetatmo.php index a48548c..fa5584a 100644 --- a/core/php/jeeNetatmo.php +++ b/core/php/jeeNetatmo.php @@ -58,6 +58,15 @@ $home = eqLogic::byLogicalId($data['home_id'], 'netatmo'); } switch ($data['event_type']) { + case 'connection': + $eqLogic->checkAndUpdateCmd('connection',1); + break; + case 'disconnection': + $eqLogic->checkAndUpdateCmd('connection',0); + break; + case 'boot': + $eqLogic->checkAndUpdateCmd('booting',1); + break; case 'on': $eqLogic->checkAndUpdateCmd('monitoring',1); break; From b65fac5386f141883a8f184e08e883b140794a49 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:25:59 +0200 Subject: [PATCH 25/37] Update NRV.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mise à jour des commandes disponibles et récupérables --- core/config/devices/NRV.json | 26 ++++++-------------------- 1 file changed, 6 insertions(+), 20 deletions(-) diff --git a/core/config/devices/NRV.json b/core/config/devices/NRV.json index 7f9297e..75b0a24 100644 --- a/core/config/devices/NRV.json +++ b/core/config/devices/NRV.json @@ -85,7 +85,7 @@ "logicalId": "setpoint" }, { - "name": "Mode Auto", + "name": "Auto", "type": "action", "subtype": "other", "isVisible": 1, @@ -94,26 +94,12 @@ "logicalId": "mode_auto" }, { - "name": "Mode OFF", - "type": "action", - "subtype": "other", - "isVisible": 0, - "isHistorized": 0, - "generic_type" : "THERMOSTAT_SET_MODE", - "logicalId": "mode_off" - }, - { - "name": "Mode OFF (heures)", - "type": "action", - "subtype": "slider", + "name": "Joignabilité (Etat)", + "type": "info", + "subtype": "binary", "isVisible": 0, "isHistorized": 0, - "generic_type" : "THERMOSTAT_SET_MODE", - "configuration" : { - "minValue" : 1, - "maxValue" : 24 - }, - "logicalId": "mode_off_endtime" - } + "logicalId": "reachable" + } ] } From 802248b5345975f36d7bf855f57b75b0153492f8 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:26:39 +0200 Subject: [PATCH 26/37] Update NOC.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mise à jour des commandes (principalement info) --- core/config/devices/NOC.json | 58 ++++++++++++++++++++++++++++++------ 1 file changed, 49 insertions(+), 9 deletions(-) diff --git a/core/config/devices/NOC.json b/core/config/devices/NOC.json index 0772c0c..c354c73 100644 --- a/core/config/devices/NOC.json +++ b/core/config/devices/NOC.json @@ -1,14 +1,6 @@ { "name" : "Présence", "commands" : [ - { - "name": "Projecteur", - "type": "info", - "subtype": "string", - "isVisible": 1, - "isHistorized": 0, - "logicalId": "light" - }, { "name": "Auto", "type": "action", @@ -119,6 +111,54 @@ "configuration": { "repeatEventManagement": "always" } - } + }, + { + "name": "Wifi (Etat)", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "wifi_state" + }, + { + "name": "CarteSD (Etat)", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "sd_status" + }, + { + "name": "Sirène (Etat)", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "siren_status" + }, + { + "name": "Connexion (Etat)", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "connection" + }, + { + "name": "Démarrage", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "booting" + }, + { + "name": "Sirène", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "siren" + } ] } From 5e10741f36a825d9f6d61c4ea1cd6b128de08346 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:27:04 +0200 Subject: [PATCH 27/37] Update OTM.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mise à jour des commandes (info) --- core/config/devices/OTM.json | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/core/config/devices/OTM.json b/core/config/devices/OTM.json index 3eb6cd3..ea3fb8c 100644 --- a/core/config/devices/OTM.json +++ b/core/config/devices/OTM.json @@ -113,6 +113,30 @@ "maxValue" : 24 }, "logicalId": "mode_hg_endtime" - } + }, + { + "name": "Joignabilité (Etat)", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "reachable" + }, + { + "name": "Retour Erreur Chaudière", + "type": "info", + "subtype": "other", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "boiler_error" + }, + { + "name": "Etat Mode Comfort Vannes", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "boiler_valve_comfort_boost" + } ] } From 4d6971ab46f0b8b7d44544a40a4c9e2e16775cd2 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 1 Apr 2024 21:27:30 +0200 Subject: [PATCH 28/37] Update NATherm1.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mise à jour des commandes info --- core/config/devices/NATherm1.json | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/core/config/devices/NATherm1.json b/core/config/devices/NATherm1.json index be43bc4..419beb9 100644 --- a/core/config/devices/NATherm1.json +++ b/core/config/devices/NATherm1.json @@ -113,6 +113,22 @@ "maxValue" : 24 }, "logicalId": "mode_off_endtime" - } + }, + { + "name": "Joignabilité", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "reachable" + }, + { + "name": "Etat Mode Comfort Vannes", + "type": "info", + "subtype": "binary", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "boiler_valve_comfort_boost " + } ] } From 5bd86d9f2364c8a36c41b50ca59d33cd125e8d9d Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Thu, 4 Apr 2024 14:47:08 +0200 Subject: [PATCH 29/37] Update netatmo.class.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Suppression du traitement en erreur côté plugin des réponses Netatmo qui contiennent des erreurs concernant des modules ou des actions. --- core/class/netatmo.class.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 87f2637..880abab 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -224,7 +224,8 @@ public static function request($_path,$_data = null,$_type='GET'){ if(isset($return['body'])){ $return_temp = $return['body']; if(isset($return_temp['errors'])){ - throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); + //throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); + //A retraiter : Remonte des erreurs sur les modules (dans le cas /HomeStatus) ou sur des actions (Ex: cas /SetState) } return $return['body']; } From 9e242981d9af16f8d42ff3bac4e7109642d357f8 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Thu, 4 Apr 2024 20:54:15 +0200 Subject: [PATCH 30/37] Update netatmo.class.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gestion des erreurs remontées sur des équipements (pièces/modules) --- core/class/netatmo.class.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index 880abab..f12a612 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -224,9 +224,20 @@ public static function request($_path,$_data = null,$_type='GET'){ if(isset($return['body'])){ $return_temp = $return['body']; if(isset($return_temp['errors'])){ - //throw new \Exception(__('Erreur lors de la requete à Netatmo : ',__FILE__).json_encode($return)); - //A retraiter : Remonte des erreurs sur les modules (dans le cas /HomeStatus) ou sur des actions (Ex: cas /SetState) - } + foreach ($return_temp['errors'] as $error) { + $eqLogicError = eqLogic::byLogicalId($error[id], 'netatmo'); + if(!is_object($eqLogicError)){ + continue; + } + $error_desc[1] = "Unknown error"; + $error_desc[2] = "Internal error"; + $error_desc[3] = "Parser error"; + $error_desc[4] = "Command unknown node module error"; + $error_desc[5] = "Command invalid params"; + $error_desc[6] = "Unreachable"; + message::add('netatmo','L\'équipement '.$eqLogicError->getName().' est en erreur : '.$error_desc[$error[code]].'('.$error[code].')'); + } + } return $return['body']; } return $return; From d17befab61ff036d3e6450b37ed13d67fb82f38c Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Sat, 6 Apr 2024 11:45:33 +0200 Subject: [PATCH 31/37] Update jeeNetatmo.php MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Gestion de 2 nouveaux évènements webhook (topology_changed & home_event_changed/schedule) --- core/php/jeeNetatmo.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/core/php/jeeNetatmo.php b/core/php/jeeNetatmo.php index fa5584a..bd23a4f 100644 --- a/core/php/jeeNetatmo.php +++ b/core/php/jeeNetatmo.php @@ -40,8 +40,20 @@ } log::add('netatmo', 'debug','[webhook] '. json_encode($data)); if(!isset($data['device_id'])){ - log::add('netatmo', 'debug','[webhook] No device id found'); - die(); + if(isset($data['push_type']) && $data['push_type']='topology_changed'){ + log::add('netatmo', 'debug','[webhook] Topologie changée -> Actualisation (refresh)'); + netatmo::refreshClassNetatmo(); + exit(0); + } + elseif(isset($data['push_type']) && $data['push_type']='home_event_changed') { + if(isset($data['event_type']) && $data['event_type']='schedule'){ + log::add('netatmo', 'debug','[webhook] Changement de Planning signalé'); + } + } + else{ + log::add('netatmo', 'debug','[webhook] Device id not found'); + die(); + } } $eqLogic = null; if(isset($data['module_id'])){ From 42b37a8bc70383f7c24e6a59e6791d515a66e3f0 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Sat, 6 Apr 2024 11:48:57 +0200 Subject: [PATCH 32/37] Update NOC.json Add wifi_strength info --- core/config/devices/NOC.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/config/devices/NOC.json b/core/config/devices/NOC.json index c354c73..0bc912a 100644 --- a/core/config/devices/NOC.json +++ b/core/config/devices/NOC.json @@ -120,6 +120,14 @@ "isHistorized": 0, "logicalId": "wifi_state" }, + { + "name": "Wifi (Puissance Signal)", + "type": "info", + "subtype": "numeric", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "wifi_strength" + }, { "name": "CarteSD (Etat)", "type": "info", From 0e1453876a0c8380341c65db6ee41a270b5b6c75 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 15 Apr 2024 08:49:14 +0200 Subject: [PATCH 33/37] Ajout cmd error_status --- core/config/devices/NOC.json | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/config/devices/NOC.json b/core/config/devices/NOC.json index 0bc912a..5788e16 100644 --- a/core/config/devices/NOC.json +++ b/core/config/devices/NOC.json @@ -144,6 +144,14 @@ "isHistorized": 0, "logicalId": "siren_status" }, + { + "name": "Etat Erreur", + "type": "info", + "subtype": "string", + "isVisible": 0, + "isHistorized": 0, + "logicalId": "error_status" + }, { "name": "Connexion (Etat)", "type": "info", From b9ee9791cd83ba0bc0680d325bdec508b1fdb59c Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 15 Apr 2024 08:54:57 +0200 Subject: [PATCH 34/37] Update netatmo.class.php pour gestion error_status --- core/class/netatmo.class.php | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index f12a612..c4806ab 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -128,6 +128,27 @@ public static function refreshClassNetatmo($homesdata = null){ } foreach ($home_ids as $home_id) { $homestatus = netatmo::request('/homestatus',array('home_id' => $home_id)); + if(isset($homestatus['errors']) && count($homestatus['errors']) > 0){ + $error_desc[1] = "Unknown error"; + $error_desc[2] = "Internal error"; + $error_desc[3] = "Parser error"; + $error_desc[4] = "Command unknown node module error"; + $error_desc[5] = "Command invalid params"; + $error_desc[6] = "Unreachable"; + $ModulesError = array(); + foreach ($homestatus['errors'] as $deviceerror) { + $ModulesError[$deviceerror['id']] = $deviceerror['code']; + $eqLogic = eqLogic::byLogicalId($deviceerror['id'], 'netatmo'); + if(!is_object($eqLogic)){ + continue; + } + $Cmderrorinfo = $eqLogic->getCmd('info','error_status'); + if(isset($Cmderrorinfo)){ + log::add('netatmo','debug','[netatmo cloud] Erreur '.$deviceerror['code'].' détectée sur l\'équipement '.$deviceerror['id']); + $eqLogic->checkAndUpdateCmd("error_status",$deviceerror['code'].' '.$error_desc[$deviceerror['code']]); + } + } + } if(isset($homestatus['home']) && isset($homestatus['home']['modules']) && count($homestatus['home']['modules']) > 0){ foreach ($homestatus['home']['modules'] as $module) { if ($module['type']=="OTM" || $module['type']=="NATherm1") { @@ -150,6 +171,11 @@ public static function refreshClassNetatmo($homesdata = null){ if($logicalId == 'state'){ $logicalId = 'status'; } + if($logicalId == 'error_status'){ + if($logicalId == 'error_status' && !isset($ModulesError[$module['id']])) { + $eqLogic->checkAndUpdateCmd($cmd,''); + } + } if(!isset($module[$logicalId])){ continue; } @@ -175,7 +201,7 @@ public static function refreshClassNetatmo($homesdata = null){ } } } - } + } } public static function cronHourly(){ From 6f8ee0f9bd457afbbb2243b4d9370733cdae99c7 Mon Sep 17 00:00:00 2001 From: ThePiloo <82892675+ThePiloo@users.noreply.github.com> Date: Mon, 15 Apr 2024 12:34:28 +0200 Subject: [PATCH 35/37] =?UTF-8?q?Modification=20de=20l'=C3=A9tat=20sans=20?= =?UTF-8?q?erreur?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ajout d'une valeur pour tracer l'absence d'erreur (nécessaire pour les scénarios) --- core/class/netatmo.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/class/netatmo.class.php b/core/class/netatmo.class.php index c4806ab..c56ad58 100644 --- a/core/class/netatmo.class.php +++ b/core/class/netatmo.class.php @@ -173,7 +173,7 @@ public static function refreshClassNetatmo($homesdata = null){ } if($logicalId == 'error_status'){ if($logicalId == 'error_status' && !isset($ModulesError[$module['id']])) { - $eqLogic->checkAndUpdateCmd($cmd,''); + $eqLogic->checkAndUpdateCmd($cmd,'0 No error'); } } if(!isset($module[$logicalId])){ From 3b1ea192b0f407a8121c8310c82bfadf76107ed8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Mon, 22 Apr 2024 14:05:42 +0200 Subject: [PATCH 36/37] Update changelog.md --- docs/fr_FR/changelog.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/fr_FR/changelog.md b/docs/fr_FR/changelog.md index 3882b40..6eb6225 100644 --- a/docs/fr_FR/changelog.md +++ b/docs/fr_FR/changelog.md @@ -4,6 +4,9 @@ > >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. +- Meilleure gestion des erreurs sur les équipements +- Amélioration de la mise à jour des valeurs + # 05/02/2024 - Correction de bugs From 8643f9afc81f0c298048dbb9e942d55906306823 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc?= <1536036+zoic21@users.noreply.github.com> Date: Mon, 13 May 2024 09:22:35 +0200 Subject: [PATCH 37/37] Update changelog.md --- docs/fr_FR/changelog.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/fr_FR/changelog.md b/docs/fr_FR/changelog.md index 6eb6225..84cd852 100644 --- a/docs/fr_FR/changelog.md +++ b/docs/fr_FR/changelog.md @@ -4,8 +4,13 @@ > >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. +# 13/05/2024 + - Meilleure gestion des erreurs sur les équipements - Amélioration de la mise à jour des valeurs +- Meilleur support des differents thermostat + +Merci @ThePiloo pour toute les améliorations # 05/02/2024