Comme annoncé, ce forum est passé en lecture seule au 1er janvier 2020. Désormais nous vous invitons à vous rendre sur notre nouvelle page communauté :
Image

A très bientôt !

[Plugin Officiel] plugin LaMetric

Pour échanger sur les plugins classés en catégorie "Communication"
fotoweb
Timide
Messages : 112
Inscription : 27 févr. 2017, 14:12

Re: [Plugin Officiel] plugin LaMetric

Message par fotoweb » 21 févr. 2018, 14:43

A partir du moment ou tu pars sur la solution script, tu accèdes en CURL au LAMetric et donc a toute la panoplie d'API ici : http://lametric-documentation.readthedo ... rence.html

Par exemple donc sur la radio tu peux gérer ca comme actions : Radio
com.lametric.radio
radio.play
- start playback
radio.stop
- stop playback
radio.next
- next radio station
radio.prev
- previous radio
station
RPI3 / Xiaomi ( ouverture x9, mouvement x3, temp x4, yeelight x3, prise zigbee x4 ) Nuts Mini x4

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 21 févr. 2018, 16:31

Ah merci, j'avais bien vu la page, mais j'avais zappé les liens qui amenaient à ces commandes. Donc, après cela, je progresse.

Voici le script pour gérer la radio:

Code : Tout sélectionner

curl -X POST -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d "{ \"id\":\"radio.XXXX\"}" https://##IP-LAMETRIC##:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Le radio.XXXX peut être remplacé par:
radio.play
radio.stop
radio.next
radio.prev

Tout fonctionne, sauf avec radio.play:
En SSH, les 4 commandes fonctionnent. Par contre par Jeedom, le radio.play me génère une erreur :"Error on shell exec, return value : 2. Details : Array ( [0] => Can't open perl script "curl": No such file or directory )". Et pourtant, c'est la même commande sur les deux, sauf qu'en SSH je suis en root.

A titre de comparaison, voici le script radio.stop qui fonctionne:

Code : Tout sélectionner

curl -X POST -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d "{ \"id\":\"radio.stop\"}" https://##IP-LAMETRIC##:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Et voici le radio.play:

Code : Tout sélectionner

curl -X POST -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d "{ \"id\":\"radio.play\"}" https://##IP-LAMETRIC##:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Vous voyez une erreur?


Seconde question: j'arrive à récupérer la valeur du volume avec une script JSON type info/numérique sur l'adresse https://##IP-LAMETRIC##:4343/api/v2/device/audio, avec la reqûete volume.
Par contre, comment changer le volume par un script? J'ai regardé dans la doc, ils disent qu'ils faut faire un PUT sur /api/v2/device/audio avec:

Code : Tout sélectionner

{
    "volume" : 100
}
Peut-on faire ça avec un script JSON type action?

Merci

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 21 févr. 2018, 17:02

drs a écrit :
21 févr. 2018, 16:31
Seconde question: j'arrive à récupérer la valeur du volume avec une script JSON type info/numérique sur l'adresse https://##IP-LAMETRIC##:4343/api/v2/device/audio, avec la reqûete volume.
Par contre, comment changer le volume par un script? J'ai regardé dans la doc, ils disent qu'ils faut faire un PUT sur /api/v2/device/audio avec:

Code : Tout sélectionner

{
    "volume" : 100
}
Peut-on faire ça avec un script JSON type action?

Merci

Je me réponds à moi-même. Il suffisait de savoir où et quoi chercher, à savoir faire du HTTP PUT en curl :)

Donc, la commande pour modifier le volume est (ici, réglé à 10):

Code : Tout sélectionner

curl -X PUT -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d " { \"volume\":\"10\"}" https://##IP-LAMETRIC##:4343/api/v2/device/audio/ --insecure

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 22 févr. 2018, 19:10

J'ai retenté ce soir après une nuit de réflexion....

Je ne vois toujours pas la différence entre ça:

Code : Tout sélectionner

curl -X POST -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d "{ \"id\":\"radio.stop\"}" https://##IP-LAMETRIC##:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
et ça (à part le radio.play bien sûr):

Code : Tout sélectionner

curl -X POST -u "dev:##ID-DEV##" -H "Content-Type: application/json" -d "{ \"id\":\"radio.play\"}" https://##IP-LAMETRIC##:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Sur le PLAY, toujours la même erreur:

Code : Tout sélectionner

Error on shell exec, return value : 2. Details : Array ( [0] => Can't open perl script "curl": No such file or directory )
Il y a forcément une raison, mais laquelle?

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 25 févr. 2018, 12:06

J'ai mis le debug sur le plugin script. Et j'obtiens les choses suivantes:

- Pour un élément qui fonctionne (le radio.Stop par exemple), j'ai ceci:

Code : Tout sélectionner

Execution de : curl -X POST -u "dev: (...)
Result: { "success" : { "data" : {  }, "path" : "/api/v2/device/apps/com.lametric.radio/widgets/API-KEY/actions" } }
- Et pour le play, j'ai ceci:

Code : Tout sélectionner

Execution de : perl curl -X POST -u "dev: (...)
En creusant un peu plus, si je remplace radio.play par radio.alay, la commande passe sans erreur (cela ne fait rien, car cette commande n'existe pas, mais jeedom l'accepte). J'en déduis donc que le radio.play est interprété comme radio.pl, donc script Perl, d'où l'erreur...
Il faut maintenant chercher la bonne syntaxe pour lui dire de ne pas interpréter ce radio.pl comme un script Perl. Surement une histoire de simple ou double quote...

Savez vous où et comment placer les quotes?

Merci

NoumeroDouo
Timide
Messages : 31
Inscription : 30 janv. 2018, 14:08

Re: [Plugin Officiel] plugin LaMetric

Message par NoumeroDouo » 27 févr. 2018, 11:08

Salut les loulous !

Merci pour votre aide a tous. J'ai pu créer le script que je voulais, mettre le réveil a l'heure facilement en fonction de mon agenda Google.
J'ai cependant une petite question : est-il possible dans le script Curl de récupérer la valeur d'une info d'un viruel ? Ou bien faut-il passer par une variable comme montré dans le post-tuto de roadrunner ?

En tout cas tout a marché du premier coup, vous etes des brute !

NoumeroDouo
Timide
Messages : 31
Inscription : 30 janv. 2018, 14:08

Re: [Plugin Officiel] plugin LaMetric

Message par NoumeroDouo » 02 mars 2018, 21:04

Autre question : en basse luminosité le Lametric se met en mode veille, et n'affiche plus les messages envoyés par le script Curl, une idée de comment forcer l'affichage ?

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 05 mars 2018, 12:57

NoumeroDouo a écrit :
02 mars 2018, 21:04
Autre question : en basse luminosité le Lametric se met en mode veille, et n'affiche plus les messages envoyés par le script Curl, une idée de comment forcer l'affichage ?
bonjour, même remarque concernant le plugin et le script.
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 05 mars 2018, 13:06

Mais du coup, en curl, tu peux désactiver le screensaver, envoyer ta notif puis remettre le screensaver. Un peu lourd mais faisable.
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 06 mars 2018, 08:03

drs a écrit :
25 févr. 2018, 12:06
J'ai mis le debug sur le plugin script. Et j'obtiens les choses suivantes:

- Pour un élément qui fonctionne (le radio.Stop par exemple), j'ai ceci:

Code : Tout sélectionner

Execution de : curl -X POST -u "dev: (...)
Result: { "success" : { "data" : {  }, "path" : "/api/v2/device/apps/com.lametric.radio/widgets/API-KEY/actions" } }
- Et pour le play, j'ai ceci:

Code : Tout sélectionner

Execution de : perl curl -X POST -u "dev: (...)
En creusant un peu plus, si je remplace radio.play par radio.alay, la commande passe sans erreur (cela ne fait rien, car cette commande n'existe pas, mais jeedom l'accepte). J'en déduis donc que le radio.play est interprété comme radio.pl, donc script Perl, d'où l'erreur...
Il faut maintenant chercher la bonne syntaxe pour lui dire de ne pas interpréter ce radio.pl comme un script Perl. Surement une histoire de simple ou double quote...

Savez vous où et comment placer les quotes?

Merci
Hello, t'as réussi pour le play?
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 06 mars 2018, 22:06

Bon alors si tu mets radio.Play avec le P majuscule, ca à l'air de fonctionner, lametric affiche radio et play, mais curieusement, rien ne sort.
Edit : Ou pas, en fait quoi que tu mette ca bascule sur radio mais il ne se passe rien..
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 07 mars 2018, 10:01

Bon j'ai résussi, en fait il suffit de passer la commande dans un script shell.
On créé donc un nouveau script que l'on nomme comme on veut et on met dedans :

Code : Tout sélectionner

curl -X POST -u "dev:API_KEY" -H "Content-Type: application/json" -d "{ \"id\":\""radio.play\""}" https://@IP_LAMETRIC:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Et ca fonctionne!
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 07 mars 2018, 16:53

Djal94 a écrit :
07 mars 2018, 10:01
Bon j'ai résussi, en fait il suffit de passer la commande dans un script shell.
On créé donc un nouveau script que l'on nomme comme on veut et on met dedans :

Code : Tout sélectionner

curl -X POST -u "dev:API_KEY" -H "Content-Type: application/json" -d "{ \"id\":\""radio.play\""}" https://@IP_LAMETRIC:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Et ca fonctionne!
Oui, c'est ce que j'ai fait aussi :)
Car je l'ai tordu dans tous les sens, impossible de le faire fonctionner. Donc script shell, et dans l'objet script, je lance ce script shell à la place :)

Djal94
Actif
Messages : 1228
Inscription : 09 août 2016, 09:21

Re: [Plugin Officiel] plugin LaMetric

Message par Djal94 » 07 mars 2018, 17:18

drs a écrit :
07 mars 2018, 16:53
Djal94 a écrit :
07 mars 2018, 10:01
Bon j'ai résussi, en fait il suffit de passer la commande dans un script shell.
On créé donc un nouveau script que l'on nomme comme on veut et on met dedans :

Code : Tout sélectionner

curl -X POST -u "dev:API_KEY" -H "Content-Type: application/json" -d "{ \"id\":\""radio.play\""}" https://@IP_LAMETRIC:4343/api/v2/device/apps/com.lametric.radio/widgets/589ed1b3fcdaa5180bf4848e55ba8061/actions --insecure
Et ca fonctionne!
Oui, c'est ce que j'ai fait aussi :)
Car je l'ai tordu dans tous les sens, impossible de le faire fonctionner. Donc script shell, et dans l'objet script, je lance ce script shell à la place :)
Arf...t'aurais pu donner la solution, ça m'aurait évité de chercher ;)
Jeedom 3.2.11 sur NUC Intel (Debian 8)
Zwave - BLEA - Wifi
Trucs et Astuces

drs
Actif
Messages : 1534
Inscription : 04 nov. 2016, 10:44

Re: [Plugin Officiel] plugin LaMetric

Message par drs » 08 mars 2018, 16:55

Djal94 a écrit :
07 mars 2018, 17:18
Arf...t'aurais pu donner la solution, ça m'aurait évité de chercher ;)
C'est exact, mais j'ai complètement oublié :)

igloox
Timide
Messages : 80
Inscription : 12 nov. 2014, 21:59

Re: [Plugin Officiel] plugin LaMetric

Message par igloox » 07 avr. 2018, 20:03

Bonjour,

depuis un moment (hélas je ne saurais pas dire depuis quand), mes notifications par script ne fonctionnent plus. J'ai ceci dans les logs du Scénario:

Code : Tout sélectionner

[2018-04-07 19:16:06][SCENARIO] Error on shell exec, return value : 7. Details : Array
(
[0] => /var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: 1: /var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: /bin: Permission denied
/var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: 2: /var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: Exemple:: not found
/var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: 3: /var/www/html/core/php/../../plugins/script/core/ressources/scriptLM: */: not found
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
Pourriez vous m'aider svp? Peut-être la dernière mise à jour du plugin script?

Avatar de l’utilisateur
RoadRunner
Timide
Messages : 162
Inscription : 30 nov. 2014, 13:13

Re: [Plugin Officiel] plugin LaMetric

Message par RoadRunner » 07 avr. 2018, 21:49

Hello,
Je viens de tester, mon script perso fonctionne toujours donc j'imagine que ce n'est pas lié à un changement au niveau de l'API de LaMetric
Tu n'as pas eu à réinstaller ton jeedom, fait des modifications au niveau de ton script ou modifier des droits sur le fichier ScriptLM ? Le "Permission Denied" est étonnant si rien n'a été modifié dans ton système

A noter que le plugin script est à jour sur mon installation
Jeedom DIY - RFXtrx433E - UZB1 - Asus Brix
Rfxcom: 2 THN132N - 2 THGR328N - 2 module ON/OFF + diode FP - 2 Dio 54790
Openzwave: 1 FGK-101 - 2 FGMS-001 - 1 FGS-211 - 1 FGWPE-101 - 1 FGSS-001 - 1 FGRM-222
Autre: Philips Hue - LaMetric Time - Arlo - Harmony Hub

igloox
Timide
Messages : 80
Inscription : 12 nov. 2014, 21:59

Re: [Plugin Officiel] plugin LaMetric

Message par igloox » 08 avr. 2018, 12:49

Merci pour ta réponse.

problème résolu. L'adresse IP avait changée suite à un changement de DHCP chez moi. Désolé pour le dérangement.
Dernière édition par igloox le 08 avr. 2018, 21:25, édité 1 fois.

Avatar de l’utilisateur
RoadRunner
Timide
Messages : 162
Inscription : 30 nov. 2014, 13:13

Re: [Plugin Officiel] plugin LaMetric

Message par RoadRunner » 08 avr. 2018, 19:43

Pas de souci, ravi de lire que tout refonctionne
Jeedom DIY - RFXtrx433E - UZB1 - Asus Brix
Rfxcom: 2 THN132N - 2 THGR328N - 2 module ON/OFF + diode FP - 2 Dio 54790
Openzwave: 1 FGK-101 - 2 FGMS-001 - 1 FGS-211 - 1 FGWPE-101 - 1 FGSS-001 - 1 FGRM-222
Autre: Philips Hue - LaMetric Time - Arlo - Harmony Hub

Avatar de l’utilisateur
toma
Timide
Messages : 452
Inscription : 07 oct. 2014, 23:29
Localisation : Haute Savoie

Re: plugin LaMetric

Message par toma » 19 juin 2018, 15:43

LennVilardi a écrit :
30 mars 2017, 21:03
Merci ! Suffisait d'être patient !
Par contre j'aimerais que la valeur de la température soit mise à jour auto, là pour le moment je dois la programmer (mise à jour toutes les 5 min), une idée ?
Salut
J'envisage de passer l'affichage domotique sur une Lametric, et du coup as tu trouvé pour une mise a jour auto des affichages de températures ?
Freebox mini - Synology DS214 - APC UPS BX700FR - Lametric
RPI 2 + PiDrive + Hue x 6 lumières, Ecodevice, 2x wall-plug + 2x FGK-105 + 4x FGSD-002 + 1x FGS-211, Xiaomi + 6xT° + 3xcapteurs portes+ yeelight + 2x motion, GH mini

Répondre

Revenir vers « [Catégorie] Communication »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 6 invités