[Plugin Officiel] plugin LaMetric
Re: [Plugin Officiel] plugin LaMetric
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
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
Re: [Plugin Officiel] plugin LaMetric
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:
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:
Et voici le radio.play:
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:
Peut-on faire ça avec un script JSON type action?
Merci
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
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
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
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
}
Merci
Re: [Plugin Officiel] plugin LaMetric
drs a écrit : ↑21 févr. 2018, 16:31Seconde 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:Peut-on faire ça avec un script JSON type action?Code : Tout sélectionner
{ "volume" : 100 }
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
Re: [Plugin Officiel] plugin LaMetric
J'ai retenté ce soir après une nuit de réflexion....
Je ne vois toujours pas la différence entre ça:
et ça (à part le radio.play bien sûr):
Sur le PLAY, toujours la même erreur:
Il y a forcément une raison, mais laquelle?
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
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
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 )
Re: [Plugin Officiel] plugin LaMetric
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:
- Et pour le play, j'ai ceci:
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
- 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" } }
Code : Tout sélectionner
Execution de : perl curl -X POST -u "dev: (...)
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
-
- Timide
- Messages : 31
- Inscription : 30 janv. 2018, 14:08
Re: [Plugin Officiel] plugin LaMetric
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 !
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 !
-
- Timide
- Messages : 31
- Inscription : 30 janv. 2018, 14:08
Re: [Plugin Officiel] plugin LaMetric
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 ?
Re: [Plugin Officiel] plugin LaMetric
bonjour, même remarque concernant le plugin et le script.NoumeroDouo a écrit : ↑02 mars 2018, 21:04Autre 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 ?
Re: [Plugin Officiel] plugin LaMetric
Mais du coup, en curl, tu peux désactiver le screensaver, envoyer ta notif puis remettre le screensaver. Un peu lourd mais faisable.
Re: [Plugin Officiel] plugin LaMetric
Hello, t'as réussi pour le play?drs a écrit : ↑25 févr. 2018, 12:06J'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:
- Et pour le play, 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" } }
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...Code : Tout sélectionner
Execution de : perl curl -X POST -u "dev: (...)
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
Re: [Plugin Officiel] plugin LaMetric
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..
Edit : Ou pas, en fait quoi que tu mette ca bascule sur radio mais il ne se passe rien..
Re: [Plugin Officiel] plugin LaMetric
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 :
Et ca fonctionne!
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
Re: [Plugin Officiel] plugin LaMetric
Oui, c'est ce que j'ai fait aussiDjal94 a écrit : ↑07 mars 2018, 10:01Bon 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 :
Et ca fonctionne!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
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
Re: [Plugin Officiel] plugin LaMetric
Arf...t'aurais pu donner la solution, ça m'aurait évité de chercherdrs a écrit : ↑07 mars 2018, 16:53Oui, c'est ce que j'ai fait aussiDjal94 a écrit : ↑07 mars 2018, 10:01Bon 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 :
Et ca fonctionne!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
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
Re: [Plugin Officiel] plugin LaMetric
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:
Pourriez vous m'aider svp? Peut-être la dernière mise à jour du plugin script?
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
- RoadRunner
- Timide
- Messages : 162
- Inscription : 30 nov. 2014, 13:13
Re: [Plugin Officiel] plugin LaMetric
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
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
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
Re: [Plugin Officiel] plugin LaMetric
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.
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.
- RoadRunner
- Timide
- Messages : 162
- Inscription : 30 nov. 2014, 13:13
Re: [Plugin Officiel] plugin LaMetric
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
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
Re: plugin LaMetric
SalutLennVilardi a écrit : ↑30 mars 2017, 21:03Merci ! 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 ?
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
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
Qui est en ligne ?
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités