Domotiser piscine hors sol choix sonde température piscine

Bonjour, peux-tu me dire comme je peux faire pour intégrer la sonde iopool à HA ? Merci beaucoup d’avance.

Hello,

J’ai fait un flow Node-Red qui récupére les infos de l’API pour mettre ça dans MQTT.

Et dans HA, j’ai des sensors MQTT.

Ok, merci. J’ai bien mosquitto en Docker pour Zigbee2mqtt mais je ne sais pas comment envoyer d’autre info que les données z2m. Apparement je dois créer un 2ème topic si j’ai bien compris mais je n’y arrive pas. Merci quand même pour l’info.

Après via HA tu dois pouvoir exploiter l’api avec ceci : RESTful - Home Assistant

1 « J'aime »

tu peux me partager ton flow node red pour l’api iopool ? même en PV si tu veux. Merci

tres interressé egalement par le flow node red

J’ai réussi à le reproduire, les données remontent bien sur HA … si j’y pense je te partage le flow demain …

1 « J'aime »

Bonjour,

Voici le flow node red pour la sonde iopool, ce n’est peut-être pas le plus beau, mais il est fonctionnel. Attention, dans la première fonction, dans api-key, bien mettre a la place de « apikey » ta clé api et dans http request, mettre l’url de la piscine.

[{"id":"eedf1a193d6f4345","type":"tab","label":"Flow 1","disabled":false,"info":"","env":[]},{"id":"a28c796f940d4ff8","type":"http request","z":"eedf1a193d6f4345","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"https://api.iopool.com/v1/pool/***","tls":"","persist":false,"proxy":"","authType":"basic","senderr":false,"credentials":{"user":"","password":""},"x":530,"y":380,"wires":[["448df951617d97dc","293353468e673357","647b97e0ec7fe810","edf6b8f31568d7ca"]]},{"id":"86736107966c7970","type":"inject","z":"eedf1a193d6f4345","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":200,"y":380,"wires":[["ce112331556eb3be"]]},{"id":"ce112331556eb3be","type":"function","z":"eedf1a193d6f4345","name":"","func":"msg.headers = { \"x-api-key\": \"apikey\"};\nreturn msg;","outputs":1,"noerr":0,"initialize":"// Code added here will be run once\n// whenever the node is started","finalize":"","libs":[],"x":360,"y":380,"wires":[["a28c796f940d4ff8"]]},{"id":"448df951617d97dc","type":"function","z":"eedf1a193d6f4345","name":"temperature","func":"msg.payload = msg.payload.latestMeasure.temperature\nmsg.topic = \"piscine/temperature\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":810,"y":260,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"08d1af35247fb751","type":"mqtt out","z":"eedf1a193d6f4345","name":"","topic":"","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"f14d628b09a34bc3","x":1290,"y":340,"wires":[]},{"id":"293353468e673357","type":"function","z":"eedf1a193d6f4345","name":"ph","func":"msg.payload = msg.payload.latestMeasure.ph\nmsg.topic = \"piscine/ph\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":790,"y":300,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"647b97e0ec7fe810","type":"function","z":"eedf1a193d6f4345","name":"capacite_de_desinfection","func":"msg.payload = msg.payload.latestMeasure.orp\nmsg.topic = \"piscine/orp\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":850,"y":340,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"edf6b8f31568d7ca","type":"function","z":"eedf1a193d6f4345","name":"date_de_derniere_mesure","func":"msg.payload = msg.payload.latestMeasure.measuredAt\nmsg.topic = \"piscine/date\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":850,"y":380,"wires":[["08d1af35247fb751","82cc55453e99221f","107a6b82df05e266"]]},{"id":"055270c9118c7c98","type":"interval","z":"eedf1a193d6f4345","name":"interval","interval":"15","onstart":false,"msg":"ping","showstatus":true,"unit":"minutes","statusformat":"D-MMMM-YYYY HH:mm:ss","x":170,"y":300,"wires":[["ce112331556eb3be"]]},{"id":"82cc55453e99221f","type":"debug","z":"eedf1a193d6f4345","name":"","active":false,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1130,"y":260,"wires":[]},{"id":"107a6b82df05e266","type":"moment","z":"eedf1a193d6f4345","name":"","topic":"","input":"payload","inputType":"msg","inTz":"Europe/Brussels","adjAmount":0,"adjType":"days","adjDir":"add","format":"D-MMMM-YYYY HH:mm","locale":"fr","output":"payload","outputType":"msg","outTz":"Europe/Brussels","x":1100,"y":400,"wires":[["08d1af35247fb751"]]},{"id":"f14d628b09a34bc3","type":"mqtt-broker","name":"","broker":"192.168.1.17","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"sessionExpiry":""}]
1 « J'aime »

Merci beaucoup pour ton partage

1 « J'aime »

Bonjour

J’ai tenté depuis des jours de faire fonctionner l’API REST de iopool sans succès.

Voici mon flow :

[{"id":"eedf1a193d6f4345","type":"tab","label":"iopool","disabled":false,"info":"","env":[]},{"id":"a28c796f940d4ff8","type":"http request","z":"eedf1a193d6f4345","name":"","method":"GET","ret":"obj","paytoqs":"ignore","url":"https://api.iopool.com/v1/pool/xxxxxxxxx","tls":"","persist":false,"proxy":"","authType":"basic","senderr":false,"headers":[],"x":530,"y":380,"wires":[["448df951617d97dc","293353468e673357","647b97e0ec7fe810","edf6b8f31568d7ca"]]},{"id":"86736107966c7970","type":"inject","z":"eedf1a193d6f4345","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":200,"y":380,"wires":[["ce112331556eb3be"]]},{"id":"ce112331556eb3be","type":"function","z":"eedf1a193d6f4345","name":"","func":"msg.headers = { \"x-api-key\": \"xxxxxxxxxxxxxx\"};\nreturn msg;","outputs":1,"noerr":0,"initialize":"// Code added here will be run once\n// whenever the node is started","finalize":"","libs":[],"x":360,"y":380,"wires":[["a28c796f940d4ff8"]]},{"id":"448df951617d97dc","type":"function","z":"eedf1a193d6f4345","name":"temperature","func":"msg.payload = msg.payload.latestMeasure.temperature\nmsg.topic = \"piscine/temperature\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":810,"y":260,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"08d1af35247fb751","type":"mqtt out","z":"eedf1a193d6f4345","name":"","topic":"","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"f14d628b09a34bc3","x":1290,"y":340,"wires":[]},{"id":"293353468e673357","type":"function","z":"eedf1a193d6f4345","name":"ph","func":"msg.payload = msg.payload.latestMeasure.ph\nmsg.topic = \"piscine/ph\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":790,"y":300,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"647b97e0ec7fe810","type":"function","z":"eedf1a193d6f4345","name":"capacite_de_desinfection","func":"msg.payload = msg.payload.latestMeasure.orp\nmsg.topic = \"piscine/orp\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":850,"y":340,"wires":[["08d1af35247fb751","82cc55453e99221f"]]},{"id":"edf6b8f31568d7ca","type":"function","z":"eedf1a193d6f4345","name":"date_de_derniere_mesure","func":"msg.payload = msg.payload.latestMeasure.measuredAt\nmsg.topic = \"piscine/date\"\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":850,"y":380,"wires":[["08d1af35247fb751","82cc55453e99221f","107a6b82df05e266"]]},{"id":"82cc55453e99221f","type":"debug","z":"eedf1a193d6f4345","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","statusVal":"","statusType":"auto","x":1130,"y":260,"wires":[]},{"id":"107a6b82df05e266","type":"moment","z":"eedf1a193d6f4345","name":"","topic":"","input":"payload","inputType":"msg","inTz":"Europe/Brussels","adjAmount":0,"adjType":"days","adjDir":"add","format":"D-MMMM-YYYY HH:mm","locale":"fr","output":"payload","outputType":"msg","outTz":"Europe/Brussels","x":1100,"y":400,"wires":[["08d1af35247fb751"]]},{"id":"678851ddd30a1192","type":"configurable interval","z":"eedf1a193d6f4345","name":"Every 15 min","interval":"15","onstart":false,"do_enable":true,"msg":"ping","showstatus":true,"unit":"minutes","statusformat":"YYYY-MM-D HH:mm:ss","x":170,"y":300,"wires":[["ce112331556eb3be"]]},{"id":"f14d628b09a34bc3","type":"mqtt-broker","name":"","broker":"192.168.0.146","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"3","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthRetain":"false","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closeRetain":"false","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willRetain":"false","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""}]

Une idée de l’endroit où ca pêche ?

Merci

Désolé je viens seulement de voir ton message, j’ai pas reçu de notification de nouveaux messages désolé … j’y regarde et je reviens vers toi !

1 « J'aime »