Page 1 sur 1
Mqtt
Posté : 30 sept. 2020, 17:21
par sphinxou
Bonjour
Je viens de découvrir le mqtt avec mon poêle à pelet maestro mcz j'arrive à envoyer une commande à mon poêle depuis domoticz avec une commande situé dans un . Sh puis un sélecteur virtuel.
Mais comment je peux remonter la température des fumer dans un capteur de température virtuel ??
Pour info je viens seulement de découvrir le mqtt jai compris le principe mais le reste pas trop.
Merci
Re: Mqtt
Posté : 03 oct. 2020, 09:13
par sphinxou
bonjour
j'ai trouver la commande pour mettre a jour un capteur de température factice dans domoticz mais comment faire pour qu'à chaque publication du message "température des fumées" de mon poêle il soit mis a jour dans domoticz ???
Re: Mqtt
Posté : 03 oct. 2020, 14:24
par sphinxou
bonjour
en tappant cette commande dans terminal: mosquitto_sub -h localhost -t PUBmcz
J'ai ceci:
mosquitto_sub -h localhost -t PUBmcz
{"Fume_Temperature": 55, "RPM_Fam_Fume": 2200, "Active_Live": 326, "Total_Operating_Hours": "39:53:49"}
comment avoir juste la Fume temperature ??
Re: Mqtt
Posté : 07 oct. 2020, 18:23
par sphinxou
bonjour
après des recherche chaotique j'ai' enfin trouver
j'ai un PUBmcz qui m'envoie plusieurs données de ce style
07/10/2020 à 18:05:47node: 27b69836.c2af38
PUBmcz : msg.payload : Object
object
Fume_Temperature: 47
Active_Live: 108
j'ai trouver comment les séparer avec une fonction, le truc c'est qu'il peu m'envoyer jusqu'à 20 données en une fois mais il envoie les données seulement si leur valeur ont changer.
donc quand il m'envoie les données pour fume_temperature j'arrive a mettre a jour un mon capteur de température dasn domoticz le seul hic quant je reçoit des données mais pas fume_temperature il me dit :
07/10/2020 à 18:21:42node: 1
msg.payload : undefined
undefined
et pollue les log de domoticz j'ai essayer mais je n'y arrive pas
ci joint la fonction:
Code : Tout sélectionner
msg1 = {};
msg2 = {};
//msg1.payload = msg.payload.Fume_Temperature
msg2.payload = msg.payload.RPM_Fam_Fume
if (msg1.payload >= 0) {
msg1.payload = {"command":"udevice","idx":1930,"nvalue":0, "svalue": String (msg.payload.Fume_Temperature)};
}
return [msg1,msg2];
Re: Mqtt
Posté : 26 janv. 2021, 18:01
par PSUtec
Bonjour,
Je vois que vous avez réussi à implémenter l'application Maestro à Domoticz.
Félicitations, car moi-même je n'y arrive pas.
J'ai bien le MQTT installé et avec oosquitto_sub je parviens à recevoir les informations; mon problème est que je ne sais pas comment intégrer cela dans Domoticz.
Si vous aviez un peu de temps à me consacrer, cela me serait fort utile.
Merci d'avance
Re: Mqtt
Posté : 31 janv. 2021, 13:47
par sphinxou
bonjour
je n'est eu que peu de temps cette semaine désoler
que voulez vous faire exactement??
Re: Mqtt
Posté : 31 janv. 2021, 19:26
par PSUtec
Merci de me répondre!
En fait je veux pouvoir envoyer des commandes à mon MCZ Maestro.
J'ai implémenté l'application de Chibald (
https://github.com/Chibald/maestrogateway) et j'en suis au stade où je peux intervenir en mode console en utilisant Mosquitto client à travers le daemon.
Je ne vois pas quelle fonction de dzvents je dois utiliser pour commander le poêle.
Bonne soirée,
Re: Mqtt
Posté : 31 janv. 2021, 19:31
par sphinxou
bonsoir
perso j'utilise le lua dans mon script j'utilise ce gnere de commande :
Code : Tout sélectionner
os.execute('mosquitto_pub -h localhost -t SUBmcz -m \'{ "Command": "Fan_State" , "Value" : 1}\'')
Re: Mqtt
Posté : 04 févr. 2021, 17:09
par PSUtec
Astucieux!
Et comment faites-vous pour récupérer des infos?
Merci d'avance!
Re: Mqtt
Posté : 04 févr. 2021, 21:03
par sphinxou
bonsoir
ci joint une copie la récupération de la température des fumées dan node red
Code : Tout sélectionner
[{"id":"19cf429f.7b133d","type":"tab","label":"Flow 1","disabled":false,"info":""},{"id":"59a63d94.7ed9a4","type":"mqtt in","z":"19cf429f.7b133d","name":"","topic":"PUBmcz","qos":"1","datatype":"json","broker":"4493ed52.d27cc4","x":140,"y":200,"wires":[["f020bca7.d71fe8"]]},{"id":"f020bca7.d71fe8","type":"function","z":"19cf429f.7b133d","name":"","func":"msg1 = {};\n\n\n\nmsg1.payload = msg.payload.Fume_Temperature\n\n \nif (msg1.payload > 1) {\nmsg1.payload = {\"command\": \"udevice\",\"idx\" : 1930,\"nvalue\" : 0,\"svalue\" : String (msg.payload.Fume_Temperature)}; \n//var url = \"http://192.168.1.10:8080/json.htm?type=command¶m=udevice&idx=1930&nvalue=0&svalue=msg.payload.Fume_Temperature)\"; \n}\n\nreturn [msg1];\n\n\n","outputs":1,"noerr":0,"x":290,"y":200,"wires":[["ca720633.2eb048"]]},{"id":"ca720633.2eb048","type":"switch","z":"19cf429f.7b133d","name":"fume_temperature","property":"payload","propertyType":"msg","rules":[{"t":"gt","v":"1","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":450,"y":200,"wires":[["2f32cd58.b4a202"]]},{"id":"2f32cd58.b4a202","type":"mqtt out","z":"19cf429f.7b133d","name":"","topic":"domoticz/in","qos":"0","retain":"","broker":"4493ed52.d27cc4","x":650,"y":200,"wires":[]},{"id":"4493ed52.d27cc4","type":"mqtt-broker","z":"","name":"mqtt","broker":"localhost","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]