Page 1 sur 2
plusieurs lignes dans vituel texte
Publié : 22 déc. 2016, 17:22
par lebphi
bonjour,
je voudrais regrouper plusieurs informations sur plusieurs lignes dans un capteur virtuel text. Est ce possible ?
exemple :
info1
info2
info3
j'ai essaye avec {"idx": 23,"nvalue" : 0,"svalue":"info1 \r\n info2 \r\n info2 "} mais ca ne marche pas.
merci d'avance
Re: plusieurs lignes dans vituel texte
Publié : 22 déc. 2016, 18:18
par vil1driver
Re: plusieurs lignes dans vituel texte
Publié : 22 déc. 2016, 18:21
par lebphi
En essayant un peu tout, j'ai fini par trouver....
{"idx": 23,"nvalue" : 0,"svalue":"info1 <br> info2 <br> info2 "}
merci vil1driver, nos messages se sont croises
Re: plusieurs lignes dans vituel texte
Publié : 22 déc. 2016, 18:36
par vil1driver
Tu peux même colorer (toujours avec les balises html)

Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 08:43
par lebphi
en fait ca marche sur le navigateur mais ca ne marche pas pour l'application android domoticz lite
Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 18:09
par Pyrrhus
Bonjour,
moi aussi j'aimerais bien avoir plusieurs lignes dans mon capteur texte, mais en bash et JSON:
Comment faire ?
Code : Tout sélectionner
curl -s "http://IP:port/json.htm?type=command¶m=udevice&idx=IDX&svalue= info1 à la ligne info2 à la ligne info3"
Je suis sûr que ça doit être tout simple mais je n'arrive pas à trouver...
Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 18:15
par vil1driver
Bah de la même façon mais en encodant le <br>
Ce qui te donne ceci comme séparateur
Code : Tout sélectionner
curl -s "http://IP:port/json.htm?type=command¶m=udevice&idx=IDX&svalue= info1 %3Cbr%3E info2 %3Cbr%3E info3"
Bien sûr tes info doivent aussi être encodées..
Le mieux étant donc d'encoder l'ensemble en une fois
Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 18:48
par Pyrrhus
Merci Vil1driver, mais ça ne fonctionne pas, même avec l'exemple le plus simple:
Code : Tout sélectionner
curl -s "http://IP:port/json.htm?type=command¶m=udevice&idx=IDX&svalue=test%3Cbr%3Etest"
Mon capteur texte m'affiche
au lieu de
Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 19:20
par lebphi
pour info je passe par mqtt pour envoyer la commande et ca marche, j'arrive bien a avoir plusieurs ligne dans le texte en utilisant <br>. Par contre ca marche pas sur l'appli android domoticz lite.
Plus globalement, j'ai un programme python lit en boucle la liaison teleinfo et met à jour une base sqlite. Ensuite toutes les heures ou en cas de changement majeur, je change les valeurs dans domoticz via mqtt. Domoticz ne sert que pour l'affichage. J'ai utilise cette methode pour pouvoir gerer toutes les infos de la trame teleinfo tempo triphasee, ce que ne fait pas correctement domoticz je trouve.
Donc globalement ca fonctionne mais par contre je remplis inutilement les logs associes aux virtuels. Y aurait il un moyen de les limiter en nombres d'enregistrements ou carrement d'annuler la fonction log ?
Re: plusieurs lignes dans vituel texte
Publié : 23 déc. 2016, 19:36
par Pyrrhus
J'ai trouvé !
il faut encoder le saut de ligne en utf8
ce qui donne
Code : Tout sélectionner
curl -s "http://IP:port/json.htm?type=command¶m=udevice&idx=IDX&svalue=test%0Atest"
résultat:
Donc pour un espace, il faut écrire %20
Code : Tout sélectionner
curl -s "http://IP:port/json.htm?type=command¶m=udevice&idx=IDX&svalue=test%201%0Atest%202"
résultat:
Si ça peut servir !