[Tuto] Esp Easy + Nextion + DomoticZ

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message par Jeff »

Je suis content que le tuto te plaise :D

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

Code : Tout sélectionner

\"	Double quotes
Dans nodered, à un endroit j'utilise : "\""msg.payload"\""
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
pronoob
Messages : 43
Inscription : 16 oct. 2021, 18:16

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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 :

Code : Tout sélectionner

http://192.168.1.191/control?cmd=nextion,temp.txt=19.00
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
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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.
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
padbol2002
Messages : 84
Inscription : 23 oct. 2017, 08:53

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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 :

Code : Tout sélectionner

http://192.168.1.191/control?cmd=nextion,temp.txt=19.00
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
padbol2002
Messages : 84
Inscription : 23 oct. 2017, 08:53

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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 ;-)
pronoob
Messages : 43
Inscription : 16 oct. 2021, 18:16

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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.
Dernière modification par pronoob le 14 déc. 2021, 22:26, modifié 1 fois.
Jeff
Messages : 1007
Inscription : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message par Jeff »

Super ! Bien vu, j'utilise aussi cette bibliothèque auquel Vil1driver et d'autres ont bien contribué.
Version: 2023.1 sur VM Synology, docker Zwave Js UI (Z-stick GEN5, Fibaro...), Zigbeefordomoticz. Nextion RGB Led Screen
pronoob
Messages : 43
Inscription : 16 oct. 2021, 18:16

Re: TUTO Esp Easy + Nextion + Domoticz

Message 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
padbol2002
Messages : 84
Inscription : 23 oct. 2017, 08:53

Re: TUTO Esp Easy + Nextion + Domoticz

Message par padbol2002 »

Hélas non, les 2 types d’échappement n’ont pas fonctionné.
pronoob
Messages : 43
Inscription : 16 oct. 2021, 18:16

Re: TUTO Esp Easy + Nextion + Domoticz

Message par pronoob »

je ne sais pas quoi dire :|
Répondre