Integration de API du contrôleur de piscine Oklyn - Entraide Home Assistant - Home Assistant Communauté Francophone
Mon problème Bonjour a tous, j’essaye d’integrée les mesures et les commande posible par mon boitier qui controle ma piscine : OKLYN, Je suis complètement débutant, J’ai trouvé leur doc pour leur API : 8/ API – Aide & …
Integration de API du contrôleur de piscine Oklyn - Entraide Home Assistant - Home Assistant Communauté Francophone Integration de API du contrôleur de piscine Oklyn Entraide Home Assistant bart40140 Août 21, 2022, 2:50 1 Mon problème Bonjour a tous, j’essaye d’integrée les mesures et les commande posible par mon boitier qui controle ma piscine : OKLYN, Je suis complètement débutant, J’ai trouvé leur doc pour leur API : 8/ API – Aide & Support Oklyn Apres quelque cherche j’ai compris qu’il fallait editer le fichier configuration.yaml, je me suis servi du Tuto pour commencé par de bonne base : # Loads default set of integrations. Do not remove. default_config: # Text to speech tts: - platform: google_translate automation: !include automations.yaml script: !include scripts.yaml scene: !include scenes.yaml frontend: themes: !include_dir_merge_named themes sensor: !include sensors.yaml Puis créer donc un fichier sensors.yaml avec les info de l’api et l’aide de RESTful Sensor - Home Assistant # Mesure Ph Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/ph method: GET name: "Ph Piscine" scan_interval: 60 headers: X-API-TOKEN: xxxxx # Mesure air Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/air method: GET name: "Air Piscine" scan_interval: 60 headers: X-API-TOKEN: xxxxx # Mesure Eau Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/water method: GET name: "Eau Piscine" scan_interval: 60 headers: X-API-TOKEN: xxxx # Mesure redox - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/orp name: "redox Piscine" scan_interval: 60 headers: X-API-TOKEN: xxxx Apres redemarage j’ai bien les info qui remonte mais brutcomme leur doc en une ligne qui ne permet pas de l’integré par la suite sur le dashboard air1174×147 23.4 KB eau1190×153 24.1 KB Je souhaiterais si une personne a un peu de temps pour m’aider a ne prendre en compte déjà que les info utile a savoir ce qu’il y dans " value " et dans un deuxième temps utilisé la commande PUT, affin de pilote avec un bouton switch l’auxiliaire en on / OFF, et la pompe en On / auto / Off Ma configuration Home Assistant 2022.8.6 Supervisor 2022.08.3 Operating System 8.4 Interface utilisateur : 20220802.0 - latest Virtualbox Gestion Piscine via Oklyn — intégration + carte Lovelace maison (HACS) Temperature/Pompe/Redox/pH/Auxiliaire/Sel bart40140 Août 21, 2022, 5:36 2 Je m’auto répond pour ma première question pour avoir la " value" : value_template: '{{ value_json.value }}' # Mesure Ph Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/ph method: GET name: "Ph Piscine" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: OPgaFqHAsuknOjV/v4fu1hhXnwg= # Mesure air Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/air method: GET name: "Air Piscine" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: OPgaFqHAsuknOjV/v4fu1hhXnwg= # Mesure Eau Piscine - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/water method: GET name: "Eau Piscine" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: OPgaFqHAsuknOjV/v4fu1hhXnwg= # Mesure redox - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/orp name: "redox Piscine" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: OPgaFqHAsuknOjV/v4fu1hhXnwg= Reste crée les commande PUT , ON / OFF auxiliére et ON/AUTO/OFF pompe je trouve pas comment faire dgaussin Août 21, 2022, 5:59 3 Est ce que tu as regardé cette doc ? Ça a l’air de permettre de faire des PUT sur une API Reste comme tu le souhaites. En cherchant sur le forum je vois que tu n’es pas le premier d’ailleurs a essayer de faire ça… En tout cas je ne connaissais pas Oklyn (quel nom !) donc merci pour la découverte… bart40140 Août 21, 2022, 6:27 4 merci je test ca, j’etais tombé dessus mais je comprenais pas ou mettre sont bloc maintenant je comprend. c’est ok pour un switch on / off : # Switch On / Off auxiliere 1 - platform: rest method: put resource: https://api.oklyn.fr/public/v1/device/my/aux name: "lumiére piscine" body_on: '{ "aux": "on"}' body_off: '{ "aux": "off"}' scan_interval: 600 is_on_template: >- {% if value_json.aux == "on" %} True {% else %} False {% endif %} headers: content-type: "application/json" X-API-TOKEN: xxxxx Reste pour le mode : on / auto / off je suis preneur d’une piste dgaussin Août 21, 2022, 7:47 5 J’ai pas encore assez d’expérience pour te guider plus mais je vois que d’autres essayent un Input_select et de l’automatisme après. Si ça peut t’aider… lio73 Décembre 20, 2022, 4:59 6 Bonjour Dans quel dossier tu a mis le bloc Merci Zigfou Novembre 4, 2023, 2:26 7 Bonjour, il me reste à intégrer le bouton auxiliaire et ceux de la pompe. Est-il possible d’avoir un exemple yaml et l’emplacement du dossier ? leo2v2o Juin 15, 2024, 6:55 10 voici le code pour ajouter le controle de la pompe en mode: on, off et auto. auto sera soit simple ou avancée. Le choix sera celui qui a été fait le dernier à la main depuis l’application. J’ai inclu aussi les 2 sensors de température air/eau sensor: - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/air method: GET name: "Piscine air" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: lacleAPIsur28caracteres unit_of_measurement: "C" - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/water method: GET name: "Piscine eau" scan_interval: 60 value_template: '{{ value_json.value }}' headers: X-API-TOKEN: lacleAPIsur28caracteres unit_of_measurement: "C" rest_command: set_pump_off: url: https://api.oklyn.fr/public/v1/device/my/pump method: PUT headers: X-API-TOKEN: "lacleAPIsur28caracteres" payload: "pump=off" content_type: "application/x-www-form-urlencoded" set_pump_on: url: https://api.oklyn.fr/public/v1/device/my/pump method: PUT headers: X-API-TOKEN: "lacleAPIsur28caracteres" payload: "pump=on" content_type: "application/x-www-form-urlencoded" set_pump_auto: url: https://api.oklyn.fr/public/v1/device/my/pump method: PUT headers: X-API-TOKEN: "lacleAPIsur28caracteres" payload: "pump=auto" content_type: "application/x-www-form-urlencoded" script: pump_off: alias: Set Pump to Off sequence: - service: rest_command.set_pump_off pump_on: alias: Set Pump to On sequence: - service: rest_command.set_pump_on pump_auto: alias: Set Pump to Auto sequence: - service: rest_command.set_pump_auto input_select: pump_mode: name: Pump Mode options: - "off" - "on" - "auto" initial: "off" icon: mdi:water-pump automation: - alias: Set Pump Based on Input Select trigger: - platform: state entity_id: input_select.pump_mode action: - choose: - conditions: - condition: state entity_id: input_select.pump_mode state: "off" sequence: - service: script.pump_off - conditions: - condition: state entity_id: input_select.pump_mode state: "on" sequence: - service: script.pump_on - conditions: - condition: state entity_id: input_select.pump_mode state: "auto" sequence: - service: script.pump_auto Zigfou Septembre 24, 2024, 6:05 11 Merci pour votre aide à tous, ci-joint une copie du resultat Capture d'écran 2024-09-24 2004201448×899 71.2 KB Davidg16 Mars 16, 2025, 6:20 12 bonjour Zigfou, tout comme toi je débute avec HA, et j’ai aussi un boitier oklyn j’ai donc un peu de mal à suivre la démarche dans le post. As tu au final un code complet ? et comme tu as manifestement tâtonné pourrais tu me donner la procédure complète si tu veux bien. Merci beaucoup. David bart40140 Mars 17, 2025, 5:25 13 il faut déjà que tu ajoute toute les entité nécessaire avant de faire un Dashboard comme sur l’image ci dessus : Moi j’ai fais dans : Pour le controle de la pompe dans le fichier configuration.xaml ( j’ai pas test la version de leo2v2o qui je pense est mieux que moi ) #oklyn rest_command: pompe_on: url: "https://api.oklyn.fr/public/v1/device/my/pump" method: put payload: '{ "pump": "on"}' headers: content-type: "application/json" X-API-TOKEN: nOnMs9KutZt0FFwx5ab8C1FtPls= pompe_off: url: "https://api.oklyn.fr/public/v1/device/my/pump" method: put payload: '{ "pump": "off"}' headers: content-type: "application/json" X-API-TOKEN: ton-token pompe_auto: url: "https://api.oklyn.fr/public/v1/device/my/pump" method: put payload: '{ "pump": "auto"}' headers: content-type: "application/json" X-API-TOKEN: ton-token et pour tout les autre sonde dans le dossier sensors.xaml #Oklyn Sensor #Ph - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/ph name: "PH Piscine" unique_id: sensor.ph_piscine scan_interval: 60 value_template: '{{ value_json.value }}' headers: content-type: "application/json" X-API-TOKEN: ton-token #orp - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/orp name: "RedOx Piscine" unique_id: sensor.orp_piscine scan_interval: 60 value_template: '{{value_json["value_raw"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Eau - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/water name: "Temp Piscine" unique_id: sensor.eau_piscine device_class: temperature unit_of_measurement: "°C" scan_interval: 60 value_template: '{{value_json["value_raw"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Air - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/air name: "Temp air Piscine" unique_id: sensor.air_piscine device_class: temperature unit_of_measurement: "°C" scan_interval: 60 value_template: '{{value_json["value_raw"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Mode pompe - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/pump name: "mode pompe piscine " unique_id: sensor.mode_pompe_piscine scan_interval: 60 value_template: '{{value_json["pump"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Statut Ph - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/ph name: "statut PH Piscine" unique_id: sensor.statut_ph_piscine scan_interval: 60 value_template: '{{value_json["status"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Statut ORP - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/data/orp name: "statut Red Ox Piscine" unique_id: sensor.statut_orp_piscine scan_interval: 60 value_template: '{{value_json["status"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Statut Pompe - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/pump name: "statut pompe piscine" unique_id: sensor.statut_pompe_piscine scan_interval: 60 value_template: '{{value_json["status"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Statut Aux - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/aux name: "statut aux" unique_id: sensor.statut_aux_piscine scan_interval: 15 value_template: '{{value_json["aux"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token #Statut Aux 2 - platform: rest resource: https://api.oklyn.fr/public/v1/device/my/aux2 name: "statut electrolyseur" unique_id: sensor.statut_aux2_piscine scan_interval: 15 value_template: '{{value_json["status"]}}' headers: content-type: "application/json" X-API-TOKEN: ton-token Pense a modifier le " ton-token " par le token que tu retrouvera dans l’application oklyn, une fois fait ca tu aura toute les entité nécessaire dans HA pour faire une page piscine Davidg16 Mars 19, 2025, 1:47 14 merci beaucoup de ton retour. Mais comme je suis un total débutant … pas facile. Si j’ai bien compris il faudrait que je charge L’api pour ensuite modifier le code ? J’ai bien vu ma clé d’accès API dans mon application mais je n’arrive pas à trouver et charger l api dans …