Forum eedomus
https://forum.eedomus.com/

Valeur d'un device
https://forum.eedomus.com/viewtopic.php?f=23&t=4470
Page 1 sur 1
Auteur:  litch1984 [ 09 Août 2016 12:12 ]
Sujet du message:  Valeur d'un device

Bonjour
J'utilise le programme DemoPad afin de favriquer ma propre interface sur un ipad.
J'ai besoin de récupérer les valeurs de mes lampes, stores ou detecteurs d'ouverture afin que mes icones se mettent à jour dans mon app DemoPad même si j'allume une lampe depuis l'interrupteur ou depuis Eedomus.

J'ai fait 2-3 tests mais je n'y arrive pas...
Il me faudrait un http://192.168.1.../api/get............
Mais je ne vois pas comment structurer mon lien...
Apparement on a que get Value_List et pas juste la value... donc j'imagine qu'il faut créer un Etat Virtuel qui va se charger de récupéré ce dont j'ai besoin ?

Est ce que quelqu'un peut me donner un exemple (Printscreen ou autre) de comment récupérer ces valeurs dont jai besoin ?
Auteur:  litch1984 [ 23 Août 2016 23:52 ]
Sujet du message:  Re: Valeur d'un device

Je reviens un peu sur le sujet.

J'arrive parfaitement à commander mes lampes grâces aux fonctions de l'API de l'Eedomus.

Quand je fais un SET, il n'y a pas de problème.

Dans mon programme (demopad) je configure un device avec mon IP et le port 80 et je crée la commande :
Code : Tout sélectionner
GET /api/get?api_user=monuser&api_secret=moncodesecret&action=periph.caract&periph_id=iddemalampe


Ensuite je fais un LABEL Match Pattern :
Code : Tout sélectionner
"Lampes principales Salon", "last_value": "(.*?)"


Qui doit se copier dans mon label afin que je puisse vérifier si j'obtient bien 0 ou 10

Mais je n'ai rien qui apparaît dans mon label.

Vous trouvez mon erreur ??

Pour info, si je tape dans Chrome ou IE :

http://monIP/api/get?api_user=monuser&a ... ddemalampe

J'obtiens :
{ "success": 1, "body":{"periph_id": "iddemalampe", "name": "Lampes principales Salon", "last_value": "0", "last_value_text": "0", "last_value_change": "2016-08-23 18:41:18"}}

Ou "last_value": "100" si elle est allumée
Auteur:  litch1984 [ 29 Août 2016 22:22 ]
Sujet du message:  Re: Valeur d'un device

Pour ceux que cela intéresserait :
J'ai trouvé, dans mon Feedback je ne dois pas mettre
Code : Tout sélectionner
"Lampe Balcon Exterieur", "last_value": "(.*?)"


mais :

Code : Tout sélectionner
"Lampe Balcon Exterieur",
    "last_value": "(.*?)"


Car le code JSON dans une Eedomus se met sur plusieurs ligne du coup il faut le "retour à la ligne" pour aller chercher ma "Last_value" en 2ème ligne.

Maintenant j'essaie de mettre 3 lampes et faire la formule :
Code : Tout sélectionner
GET /api/get?api_user=monuser&api_secret=moncodesecret&action=periph.caract&periph_id=iddemalampe1,iddemalampe2,iddemalampee3


Mais la du coup je n'obtient denouveau plus aucune valeur...

Est ce que quelqu'un peut m'aider à trouver la bonne formule afin d'obtenir les valeurs de plusieurs lampes ?
Est ce que je dois pour chaque lampe mettre la formule de la lampe précédente avant ??? (se serait vraiment pas pratique) Ou existe-t-il une formule qui fait sauter directeemnt à la 2ème "last_value" ?
Auteur:  fullpower [ 30 Août 2016 05:46 ]
Sujet du message:  Re: Valeur d'un device

:shock:

Outch là malheureusement tu ne t'adresse qu'à quelques "experts" ...
Je pipe rien ...
:oops: mais bon courage !
Auteur:  bedil70640 [ 16 Avr 2024 08:22 ]
Sujet du message:  Re: Valeur d'un device

Avez-vous résolu le problème?
duck life
Auteur:  opa95 [ 17 Avr 2024 08:07 ]
Sujet du message:  Re: Valeur d'un device

Bonjour Licht1984
Je ne comprend pas trop ce que tu cherches à faire.
Si tu récupères, dans un device HTTP la valeur
"{ "success": 1, "body":{"periph_id": "iddemalampe", "name": "Lampes principales Salon", "last_value": "0", "last_value_text": "0", "last_value_change": "2016-08-23 18:41:18"}}"
La transformation en XML va donner (teste dans le fenêtre de test)
"
<?xml version="1.0" encoding="ISO-8859-1"?>
<root><success>1</success>
<body><periph_id>iddemalampe</periph_id>
<name>Lampes principales Salon</name>
<last_value>0</last_value>
<last_value_text>0</last_value_text>
<last_value_change>2016-08-23 18:41:18</last_value_change>
</body>
</root>
et donc tu récupères le valeur finale par XPATH
/root/last_value ou //last_value ce qui donne 0
Qu'obtiens-tu pour plusieurs lampes pour que l'on puisse essayer de te répondre? :)
Page 1 sur 1 Le fuseau horaire est UTC+1 heure