Page 17 sur 24
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 21:11
par Jeff
Je suis content que le tuto te plaise
En fait comme ca je sais pas te dire sous lua, on passe par nodered pour retravailler nos valeurs et les envoyer au nextion.
Mais pour t'aiguiller, regarde ici
https://www.tutorialspoint.com/lua/lua_strings.htm
Apparemment ca serait
Dans nodered, à un endroit j'utilise : "\""msg.payload"\""
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 21:46
par pronoob
pour l'envoi, en page non affichée, je me suis basé sur ton tuto
mais je n'arrête pas de voir des exemples qui ne le suivent pas..
est-ce la votre problème ?.
exemple :
j'aurais écrit (selon ton tuto)
Code : Tout sélectionner
http://192.168.1.191/control?cmd=nextion,page0.temp.txt=19.00
cela fonctionne chez moi (dans un tout autre univers bien sûr) en précisant la page
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 21:56
par Jeff
Oui il y a plein de méthodes différentes pour échanger entre le nextion et domoticz, je ne remets pas tout le temps à jour le tuto, le but c'est de comprendre comment ca marche.
Pour l'envoi http, si c'est du texte il faut qu'il soit encadré par des guillemets, facile dans un navigateur avec une valeur indiquée, pour les scripts lua et sous nodered, il faut trouver comment le faire. J'y suis arrivé sous nodered, j'ai jamais fait sous lua.
Il n'y a pas besoin d'indiquer la page si on la définie le type en globale et pas locale sous le logiciel nextion.
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 22:15
par padbol2002
non il faut les " " encadrant le 19.00 j'ai essayé votre requete sans succés
pronoob a écrit : 14 déc. 2021, 21:46
pour l'envoi, en page non affichée, je me suis basé sur ton tuto
mais je n'arrête pas de voir des exemples qui ne le suivent pas..
est-ce la votre problème ?.
exemple :
j'aurais écrit (selon ton tuto)
Code : Tout sélectionner
http://192.168.1.191/control?cmd=nextion,page0.temp.txt=19.00
cela fonctionne chez moi (dans un tout autre univers bien sûr) en précisant la page
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 22:19
par padbol2002
En fouillant j'ai trouvé une rustine qui fonctionne la voici :
Code : Tout sélectionner
-- encode du texte pour le passer dans une url
function url_encode(str)
if (str) then
str = string.gsub (str, "\n", "\r\n")
str = string.gsub (str, "([^%w %-%_%.%~])",
function (c) return string.format ("%%%02X", string.byte(c)) end)
str = string.gsub (str, " ", "+")
end
return str
end
puis :
Code : Tout sélectionner
local txt = '"' ..otherdevices["Thermostat_Salon"].. '"'
commandArray['OpenURL']="http://192.168.1.191/control?cmd=nextion,temp.txt="..url_encode(txt)
la fonction servira pour d'autres...
Merci à Vil1driver qui reconnaitra sa participation

Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 22:22
par pronoob
la requête était recopiée du message précédant, je voulais juste imager l'usage du numéro de page.
je n'ai nullement la prétention de l'avoir vérifiée..
je rappel, j'utilise juste un arduino, aucun lien avec domoticz pour le moment. je débute totalement.
ici sans indiquer la page, le seul fait d'avoir la variable en global ne suffisait pas.
Jeff tu dis que ça marche sans indiquer la page, pourtant j'avais cru comprendre que tu avais des soucis avec cela ?
désolé si j'ai mal compris et n'ai juste fait que polluer votre discussion.
Je trouvais juste impensable que ce super hmi ne puisse être mis a jour que sur la page en cours..
cela aurait été rédhibitoire pour moi, et voyant (j'ai cru) que cela posait problème chez vous, j'ai voulu aider.
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 22:23
par Jeff
Super ! Bien vu, j'utilise aussi cette bibliothèque auquel Vil1driver et d'autres ont bien contribué.
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 14 déc. 2021, 22:47
par pronoob
je ne sais pas ce que tu souhaites encoder d'une valeur de thermostat.
si le but est juste j'ajouter un " dans une chaîne, il faut en principe juste l’échapper (non testé dans ce cas précis)
est ce que ceci fonctionne ?
Code : Tout sélectionner
commandArray['OpenURL']="http://192.168.1.191/control?cmd=nextion,temp.txt=\""..otherdevices["Thermostat_Salon"].."\""
ou ceci ?
Code : Tout sélectionner
commandArray['OpenURL']='http://192.168.1.191/control?cmd=nextion,temp.txt="'..otherdevices["Thermostat_Salon"]..'"'
si cela fonctionne, nous pouvons ici aussi remercier Vil1driver qui a posté pléthore d'exemples de ce genre
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 15 déc. 2021, 08:32
par padbol2002
Hélas non, les 2 types d’échappement n’ont pas fonctionné.
Re: TUTO Esp Easy + Nextion + Domoticz
Publié : 15 déc. 2021, 09:04
par pronoob
je ne sais pas quoi dire
