Probleme synchro et autres

Bonjour, gros soucis depuis qq temps avec les commandes de projecteurs du plugin :frowning:

exemple de demande de passage en ‹ auto ›

log du scénario

[2024-11-27 10:24:48][SCENARIO] Exécution de la commande [Extérieur][Piscine_pro][Projecteur (AutoOnOff)] avec comme option(s) : {"background":"0","select":"2"}
[2024-11-27 10:24:48][SCENARIO] Class 'GuzzleHttp\Cookie\FileCookieJar' not found

Log de NetatmoPro

0000|[2024-11-27 10:25:44] DEBUG  execute:: options:array (
0001|'background' => '0',
0002|'select' => '2',
0003|)
0004|[2024-11-27 10:25:44] DEBUG  execute:: this:netatmoproCmd::__set_state(array(
0005|'id' => '19645',
0006|'logicalId' => 'floodlight_set_config',
0007|'generic_type' => '',
0008|'eqType' => 'netatmopro',
0009|'name' => 'Projecteur (AutoOnOff)',
0010|'order' => '9',
0011|'type' => 'action',
0012|'subType' => 'select',
0013|'eqLogic_id' => '1739',
0014|'isHistorized' => '0',
0015|'unite' => '',
0016|'configuration' =>
0017|array (
0018|'listValue' => '0|Off;1|On;2|Auto',
0019|'timeline::enable' => '0',
0020|'interact::auto::disable' => '0',
0021|'actionConfirm' => '0',
0022|'minValue' => '',
0023|'maxValue' => '',
0024|),
0025|'template' => '{"dashboard":"core::default","mobile":"core::default"}',
0026|'display' => '{"invertBinary":"0","showNameOndashboard":"1","showNameOnmobile":"1","showIconAndNamedashboard":"0","showIconAndNamemobile":"0","forceReturnLineBefore":"0","forceReturnLineAfter":"0"}',
0027|'value' => '19651',
0028|'isVisible' => '1',
0029|'alert' => '[]',
0030|'_collectDate' => '',
0031|'_valueDate' => '',
0032|'_eqLogic' =>
0033|netatmopro::__set_state(array(
0034|'id' => '1739',
0035|'name' => 'Piscine_pro',
0036|'logicalId' => '70:ee:50:51:f7:04',
0037|'generic_type' => NULL,
0038|'object_id' => '4',
0039|'eqType_name' => 'netatmopro',
0040|'isVisible' => '1',
0041|'isEnable' => '1',
0042|'configuration' => '{"type":"NOC","version":1,"scope":"read_presence","createtime":"2020-07-05 11:20:32","dashboard":["status","sd_status","alim_status","light_mode_status"],"updatetime":"2024-10-13 02:55:05","home_id":"5da5f34c07dc93ddef4a5a61","home_name":"Ensues la Redonne","previousIsEnable":"1","previousIsVisible":"1","pwdChanged":"true","vpn_url":"https:\\/\\/prodvpn-eu-1.netatmo.net\\/restricted\\/10.255.164.4\\/xxxxxxxxxxxxxxxxxxxxx\\/xxxxxxxxxxxxxxxxxxxxxxxxx,,","is_local":true,"setup_date":1571156812,"firmware_revision":3020000,"wifi_state":"full","wifi_strength":36,"comment":""}',
0043|'timeout' => NULL,
0044|'category' => '{"heating":"0","security":"0","energy":"0","light":"0","opening":"0","automatism":"0","multimedia":"0","default":"0"}',
0045|'display' => '{"width":"384px","height":"218px","backGraph::info":"0","backGraph::format":"month","backGraph::type":"areaspline","backGraph::color":"#4572a7","layout::dashboard":"table","layout::dashboard::table::nbLine":"4","layout::dashboard::table::nbColumn":"3","layout::dashboard::table::parameters":{"center":"0","styletd":"","styletable":"","text::td::1::1":"","style::td::1::1":"","text::td::1::2":"","style::td::1::2":"","text::td::1::3":"","style::td::1::3":"","text::td::2::1":"","style::td::2::1":"","text::td::2::2":"","style::td::2::2":"","text::td::2::3":"","style::td::2::3":"","text::td::3::1":"","style::td::3::1":"","text::td::3::2":"","style::td::3::2":"","text::td::3::3":"","style::td::3::3":"","text::td::4::1":"","style::td::4::1":"","text::td::4::2":"","style::td::4::2":"","text::td::4::3":"","style::td::4::3":""},"layout::dashboard::table::cmd::19641::line":1,"layout::dashboard::table::cmd::19641::column":1,"layout::dashboard::table::cmd::19642::line":1,"layout::dashboard::table::cmd::19642::column":1,"layout::dashboard::table::cmd::19643::line":1,"layout::dashboard::table::cmd::19643::column":1,"layout::dashboard::table::cmd::19644::line":1,"layout::dashboard::table::cmd::19644::column":1,"layout::dashboard::table::cmd::19651::line":"2","layout::dashboard::table::cmd::19651::column":"2","layout::dashboard::table::cmd::19645::line":"2","layout::dashboard::table::cmd::19645::column":"2","layout::dashboard::table::cmd::19646::line":1,"layout::dashboard::table::cmd::19646::column":1,"layout::dashboard::table::cmd::19647::line":1,"layout::dashboard::table::cmd::19647::column":1,"layout::dashboard::table::cmd::19648::line":1,"layout::dashboard::table::cmd::19648::column":1,"layout::dashboard::table::cmd::19649::line":1,"layout::dashboard::table::cmd::19649::column":1,"layout::dashboard::table::cmd::19650::line":1,"layout::dashboard::table::cmd::19650::column":1,"widgetTmpl":"1"}',
0046|'order' => '16',
0047|'comment' => '',
0048|'tags' => '',
0049|'_debug' => false,
0050|'_object' =>
0051|jeeObject::__set_state(array(
0052|'id' => '4',
0053|'name' => 'Extérieur',
0054|'father_id' => '20',
0055|'isVisible' => '1',
0056|'position' => '3',
0057|'configuration' => '{"parentNumber":1,"summary::global::security":"0","summary::global::motion":"0","summary::global::door":"0","summary::global::windows":"0","summary::global::shutter":"1","summary::global::light":"1","summary::global::outlet":"0","summary::global::temperature":"0","summary::global::humidity":"0","summary::global::luminosity":"0","summary::global::power":"1","summary:0087|[2024-11-27 10:25:58] INFO  webhook:: jsonData:'{"user_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_url":"https:\\/\\/netatmocameraimage.blob.core.windows.net\\/production\\/xxxxxxxxxxxxxxxxxxxxxxxxxxxx?sv=2017-11-09&sr=b&se=2024-11-27T09:30:17Z&sp=r&spr=https&sig=xxxxxxxxxxxxxxxxxxxxxxxxx%3D","event_type":"human","camera_id":"70:ee:50:5d:4a:d5","device_id":"70:ee:50:5d:4a:d5","home_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxx","home_name":"Ensues la Redonne","event_id":"6746e57df66348c4a4021ea3","message":"Personne d\\u00e9tect\\u00e9e par Salle \\u00e0 manger","push_type":"NACamera-human"}'
0088|[2024-11-27 10:25:58] INFO  webhook:: jsonData:'{"user_id":"xxxxxxxxxxxxxxxxxxxxxxx","snapshot_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_url":"https:\\/\\/netatmocameraimage.blob.core.windows.net\\/production\\/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx?sv=2017-11-09&sr=b&se=2024-11-27T09:30:17Z&sp=r&spr=https&sig=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx%3D","event_type":"human","camera_id":"70:ee:50:5d:4a:d5","device_id":"70:ee:50:5d:4a:d5","home_id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","home_name":"Ensues la Redonne","event_id":"xxxxxxxxxxxxxxxxxxxxxxx","message":"Personne d\\u00e9tect\\u00e9e par Salle \\u00e0 manger","push_type":"NACamera-human"}'
0089|[2024-11-27 10:26:09] DEBUG  cron:: refresh:''
0090|[2024-11-27 10:26:47] INFO  webhook:: jsonData:'{"user_id":"xxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_id":"xxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_url":"https:\\/\\/netatmocameraimage.blob.core.windows.net\\/production\\/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx?sv=2017-11-09&sr=b&se=2024-11-27T09:31:19Z&sp=r&spr=https&sig=xxxxxxxxxxxxxxxxxxxxxxxxxxxx%3D","event_type":"movement","camera_id":"70:ee:50:5d:2b:58","device_id":"70:ee:50:5d:2b:58","home_id":"xxxxxxxxxxxxxxxxxxxxx","home_name":"Ensues la Redonne","event_id":"xxxxxxxxxxxxxxxxxxxxxxxxx","message":"Mouvement d\\u00e9tect\\u00e9 par Bureau","push_type":"NACamera-movement"}'
0091|[2024-11-27 10:26:47] INFO  webhook:: jsonData:'{"user_id":"xxxxxxxxxxxxxxxxxxxxxx","snapshot_id":"xxxxxxxxxxxxxxxxxxxxxxxx","snapshot_key":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx","snapshot_url":"https:\\/\\/netatmocameraimage.blob.core.windows.net\\/production\\/xxxxxxxxxxxxxxxxxxxxxxxxxxxx?sv=2017-11-09&sr=b&se=2024-11-27T09:31:19Z&sp=r&spr=https&sig=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx%3D","event_type":"movement","camera_id":"70:ee:50:5d:2b:58","device_id":"70:ee:50:5d:2b:58","home_id":"xxxxxxxxxxxxxxxxxxxx","home_name":"Ensues la Redonne","event_id":"xxxxxxxxxxxxxxxxxxxxxxxxx","message":"Mouvement d\\u00e9tect\\u00e9 par Bureau","push_type":"NACamera-movement"}'

Par ailleurs, malgrés le fait que tout fonctionne normalement en dehors des projecteurs, j’ai tenté une synchronisation, et j’obtiens ça :
image

J’ai aussi tenté l’Association netatmo’, mais elle se termine par :

Cette page n’est pas disponible pour le moment

georgein.eu.jeedom.link ne peut actuellement pas traiter cette demande.

Bon courage :slight_smile: !!

Petit log de http.error supplémentaire :frowning: :

0013|[Wed Nov 27 10:11:14.460918 2024] [php7:error] [pid 396778:tid 396778] [client 192.168.2.241:60865] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081
0014|[Wed Nov 27 10:11:14.588361 2024] [php7:error] [pid 393657:tid 393657] [client 192.168.2.241:60842] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081
0015|[Wed Nov 27 10:11:14.712173 2024] [php7:error] [pid 381696:tid 381696] [client 192.168.2.241:60864] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081
0016|[Wed Nov 27 10:11:22.600045 2024] [php7:error] [pid 395284:tid 395284] [client 192.168.2.241:60870] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081
0017|[Wed Nov 27 10:11:22.916711 2024] [php7:error] [pid 385699:tid 385699] [client 192.168.2.241:60872] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081
0018|[Wed Nov 27 10:11:24.690090 2024] [php7:error] [pid 381696:tid 381696] [client 192.168.2.241:60878] PHP Fatal error:  Uncaught Error: Class 'GuzzleHttp\\Cookie\\FileCookieJar' not found in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php:1081\nStack trace:\n#0 /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php(1286): netatmopro::GetGuzzleHd()\n#1 /var/www/html/core/class/cmd.class.php(1325): netatmoproCmd->execute()\n#2 /var/www/html/core/ajax/cmd.ajax.php(102): cmd->execCmd()\n#3 {main}\n  thrown in /var/www/html/plugins/netatmopro/core/class/netatmopro.class.php on line 1081

Je suis désolé mais la release 4.5 (version beta) n’est pas encore supporté par le plugin.
Le framework guzzlehttp/guzzle n’est plus installé par défaut, je vais devoir faire des modifications pour installer ce composant ou utiliser un autre composant

Le plus simple est de repasser sur une version stable (core Jeedom) si tu souhaites que tout fonctionne

:frowning: La tuile !

Pas possible pour moi de repasser en stable du core :frowning: malheureusement.

As tu une idée des délais, pas pour te mettre la pression, juste pour pouvoir m’organiser en attendant !

J’ai déjà une version en local qui fonctionne mais je n’ai malheureusement pas pu faire des tests intensifs.

Es-tu à l’aise avec Linux ? Si oui, je peux te donner une archive .tar.gz de cette version qui devrait être ok avec la version beta de Jeedom

Je ne me débrouille pas trop mal ;), en tout cas je peux essayer de t’aider à faire avancer le truc.

Donc tu peux m’envoyer le code en privé, pas de soucis :slight_smile:

Du nouveau ?? :frowning:

MP envoyé pour récupérer une version du plugin compatible Jeedom 4.5 (version beta)

Premier retex:

mise a jour dépendance apparemment ok :

+ echo '*******************Begin of package installation******************'
*******************Begin of package installation******************
+ touch /tmp/jeedom_install_in_progress_netatmopro
+ echo 1
+ echo 2
+ sudo chmod +x /var/www/html/core/class/../../resources/install_composer.sh
+ sudo /var/www/html/core/class/../../resources/install_composer.sh
Begin installation of composer
--2024-12-10 09:39:55--  https://getcomposer.org/installer
Resolving getcomposer.org (getcomposer.org)... 54.36.53.46, 2001:41d0:302:1100::8:104f
Connecting to getcomposer.org (getcomposer.org)|54.36.53.46|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58444 (57K) [application/octet-stream]
Saving to: 'composer-setup.php'
0K .......... .......... .......... .......... .......... 87% 2.19M 0s
50K .......                                               100%  225M=0.02s
2024-12-10 09:39:55 (2.50 MB/s) - 'composer-setup.php' saved [58444/58444]
All settings correct for using Composer
Downloading...
Composer (version 2.8.3) successfully installed to: /var/www/html/core/ajax/composer.phar
Use it: php composer.phar
End installation of composer
+ echo 3
+ cd /var/www/html/core/class/../../plugins/netatmopro
+ rm -rf vendor
+ export COMPOSER_ALLOW_SUPERUSER=1
+ COMPOSER_ALLOW_SUPERUSER=1
+ export COMPOSER_HOME=/tmp/composer
+ COMPOSER_HOME=/tmp/composer
+ sudo composer install --no-ansi --no-dev --no-interaction --no-plugins --no-progress --no-scripts --optimize-autoloader
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Installing dependencies from lock file
Verifying lock file contents can be installed on current platform.
Package operations: 8 installs, 0 updates, 0 removals
- Installing symfony/deprecation-contracts (v2.5.4): Extracting archive
- Installing psr/http-message (2.0): Extracting archive
- Installing psr/http-client (1.0.3): Extracting archive
- Installing ralouphie/getallheaders (3.0.3): Extracting archive
- Installing psr/http-factory (1.1.0): Extracting archive
- Installing guzzlehttp/psr7 (2.7.0): Extracting archive
- Installing guzzlehttp/promises (2.0.4): Extracting archive
- Installing guzzlehttp/guzzle (7.9.2): Extracting archive
Generating optimized autoload files
4 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
+ sudo chown -R www-data:www-data 3rdparty composer.json composer.lock core desktop docs plugin_info vendor
+ echo 4
+ php /var/www/html/core/class/../php/jeecli.php plugin dependancy_end netatmopro
+ echo 5
+ rm /tmp/jeedom_install_in_progress_netatmopro
+ echo '*******************End of package installation******************'
*******************End of package installation******************

l’association Netatmo m’a bien renvoyé le petit oiseau :slight_smile:

idem si on demande une synchronisation
image
Message qui n’apparait d’ailleurs nulle part dans les logs

tout à l’air de fonctionner jusqu’a … ce que l’on touche aux projecteurs !!! :
image

le log debug :

0520|'configuration' => '{"parentNumber":1,"summary::global::security":"0","summary::global::motion":"0","summary::global::door":"0","summary::global::windows":"0","summary::global::shutter":"1","summary::global::light":"1","summary::global::outlet":"0","summary::global::temperature":"0","summary::global::humidity":"0","summary::global::luminosity":"0","summary::global::power":"1","summary:0919|[2024-12-10 09:44:37] DEBUG  execute:: ex:'GuzzleHttp\\Exception\\ClientException - GuzzleHttp\\Exception\\ClientException - 403 - Client error: `GET https://prodvpn-eu-11.netatmo.net/restricted/10.255.17.84/xxxxxxxxxx/xxxxxxxxxxxxxxxxx,,/command/changestatus?status=off` resulted in a `403 Forbidden` response:
0920|<html>
0921|<head><title>403 Forbidden</title></head>
0922|<body>
0923|<center><h1>403 Forbidden</h1></center>
0924|<hr><center>nginx</c (truncated...)
0925|'
0926|[2024-12-10 09:44:37] ERROR  execute:: ex:'GuzzleHttp\\Exception\\ClientException - GuzzleHttp\\Exception\\ClientException - 403 - Client error: `GET https://prodvpn-eu-11.netatmo.net/restricted/10.255.17.84/xxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxx,,/command/changestatus?status=off` resulted in a `403 Forbidden` response:
0927|<html>
0928|<head><title>403 Forbidden</title></head>
0929|<body>
0930|<center><h1>403 Forbidden</h1></center>
0931|<hr><center>nginx</c (truncated...)
0932|'
0933|[2024-12-10 09:44:37] ERROR  Erreur exécution de la commande [Extérieur][Entrée_pro][Surveillance (OnOff)] : Client error: `GET https://prodvpn-eu-11.netatmo.net/restricted/10.255.17.84/xxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxxxx,,/command/changestatus?status=off` resulted in a `403 Forbidden` response:
0934|<html>
0935|<head><title>403 Forbidden</title></head>
0936|<body>
0937|<center><h1>403 Forbidden</h1></center>
0938|<hr><center>nginx</c (truncated...)
0939|[2024-12-10 09:45:03] DEBUG  synchronize:: update:true
0940|[2024-12-10 09:45:03] DEBUG  synchronize:: scope:'read_station;read_camera write_camera access_camera read_doorbell access_doorbell read_presence write_presence access_presence read_carbonmonoxidedetector read_smokedetector'
0941|[2024-12-10 09:45:03] DEBUG  synchronize:: Weather
0942|[2024-12-10 09:45:03] DEBUG  NARequest:: 'GET' 'https://app.netatmo.net/api/getstationsdata' ''
0943|[2024-12-10 09:45:03] INFO  cron5:: ex:'GuzzleHttp\\Exception\\ClientException - GuzzleHttp\\Exception\\ClientException - 403 - Client error: `GET https://app.netatmo.net/api/getstationsdata` resulted in a `403 Forbidden` response:
0944|{"error":{"code":2,"message":"Invalid access token"}}
0945|'
0946|[2024-12-10 09:45:10] DEBUG  cron:: refresh:''

Je laisse cette version en exploit, dispo pour d’autres tests

Je n’ai aucun souci pour ma part et vu le log, ton token semble invalide.
Possible de m’envoyer en MP un accès à ton Jeedom pour vérifier pourquoi il y aurait ce problème ?

Malgré un token valide suite à l’association, il est impossible de synchroniser les équipements avec une erreur 403.

Seule solution possible et indiqué par le support officiel Netatmo : désactiver l’application et re-créer une nouvelle application sur le site web de Netatmo

@m.georgein : tout est ok pour toi ? ok pour clôturer le topic ?

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.