Otodata (Nee-Vo) Script de surveillance du niveau du réservoir de propane

Jul 28, 2026

Laisser un message

Otodata (Nee-Vo) Script de surveillance du niveau du réservoir de propane : Guide complet de Home Assistant et ESPHome Automation

Dans ce guide : Tout ce que vous devez savoir sur les scripts pour les moniteurs de niveau de réservoir de propane Otodata et Nee{{0}Vo - couvrant les scripts d'automatisation de Home Assistant, les configurations ESPHome, les configurations d'interrogation de l'API REST, les intégrations de proxy BLE, les scripts-vérifiés par la communauté de r/homeassistant et le guide de mise en œuvre complet-par-étape pour 2026.


Otodata (Nee-Vo) Script de surveillance du niveau du réservoir de propane : réponse rapide

Les moniteurs de niveau de réservoir de propane Otodata et Nee-Vo peuvent être intégrés à Home Assistant et aux systèmes domotiques intelligents via trois approches de script principales : (1) les scripts de capteur REST de Home Assistant qui interrogent l'API d'Otodata ou l'API de Nee-Vo pour les données de niveau du réservoir ; (2) Scripts proxy ESPHome BLE qui capturent les publicités BLE des capteurs Otodata ou Nee-Vo et les transmettent à Home Assistant ; et (3) des scripts d'automatisation Home Assistant qui déclenchent des notifications, des ajustements du thermostat et des alertes des fournisseurs en fonction des seuils de niveau du réservoir. L'approche vérifiée par la communauté-la plus fiable pour Otodata consiste à utiliser un capteur ESPHome BLE parallèle (puisque l'accès direct à l'API d'Otodata est limité), tandis que les utilisateurs de Nee-Vo ayant un accès à l'API peuvent utiliser des scripts d'interrogation REST. Pour les deux plateformes, les scripts d'automatisation suivent la même structure : surveiller le niveau du réservoir → comparer aux seuils → déclencher des actions (notifier, ajuster, automatiser). Ce guide fournit des scripts complets, prêts à copier-coller-pour Home Assistant, ESPHome et Node-RED - testés et discutés par la communauté r/homeassistant - couvrant tous les niveaux d'automatisation de la surveillance du propane Otodata et Nee-Vo que vous pouvez créer en 2026.


Comprendre Otodata et Nee-Vo pour les scripts

Architecture de plate-forme pour l'intégration DIY

Avant d'écrire des scripts, comprenez où se situent Otodata et Nee-Vo dans l'écosystème de la maison intelligente DIY -, car cela détermine quelle approche de script fonctionnera pour votre configuration.

L'architecture d'Otodata :Les moniteurs de propane Otodata utilisent la connectivité cellulaire LTE comme chemin de données principal - le moniteur envoie les données de niveau du réservoir directement aux serveurs cloud d'Otodata via le réseau cellulaire, et l'application Otodata les récupère à partir de là. Otodata ne documente pas publiquement une API accessible au client-, et la capacité BLE du moniteur est principalement destinée à la vérification locale (vérification du niveau en marchant jusqu'au réservoir), et non au streaming BLE continu vers un hub de maison intelligente. Cela rend difficile l'écriture directe des scripts Otodata-vers-Home Assistant. - L'approche communautaire recommandée consiste à utiliser Otodata pour l'intégration des fournisseurs tout en déployant un capteur ESPHome ou Mopeka distinct pour les données Home Assistant.

L'architecture de Nee-Vo :La plate-forme de Nee-Vo est plus centrée sur le fournisseur-- les données circulent depuis le capteur Nee-Vo BLE → la passerelle Nee-Vo → le cloud Nee-Vo → le tableau de bord du fournisseur + l'application client. Nee-Vo peut exposer une API REST dans certains déploiements, ce qui permet l'interrogation REST depuis Home Assistant, mais l'accès à l'API dépend de la configuration Nee-Vo du fournisseur spécifique et n'est pas garanti. La communauté r/homeassistant a découvert que le format de publicité BLE de Nee{{11}Vo n'est pas bien-documenté publiquement, ce qui rend l'analyse BLE brute peu fiable sans-ingénierie inverse.

La stratégie de scripting communautaire :Le consensus de la communauté r/homeassistant sur les scripts Otodata et Nee-Vo est pragmatique : étant donné que l'accès direct à l'API et l'analyse BLE ne sont pas fiables pour ces plates-formes gérées par le fournisseur-, la meilleure approche de script est une stratégie de capteurs parallèles. Déployez un capteur ESPHome ou Mopeka dédié pour les scripts Home Assistant (sur lequel vous avez un contrôle total), tandis qu'Otodata ou Nee-Vo gère l'automatisation des fournisseurs de manière indépendante. Cela vous offre le meilleur des deux mondes : des recharges automatisées à partir du programme fournisseur et la propriété totale des données + des scripts d'automatisation à partir de votre propre capteur.


Script 1 : Sondage de l'API REST de Home Assistant pour Nee-Vo

Configuration du capteur REST

Pour les utilisateurs de Nee{{0}Vo dont le déploiement de fournisseur expose une API client, utilisez ce script de capteur REST Home Assistant pour extraire les données de niveau du réservoir directement dans votre tableau de bord Home Assistant :

yaml复制

# configuration.yaml - Ajoutez à votre configuration Home Assistant le reste : - nom : "Nee-Vo Propane Tank API" scan_interval : 300 # Sondage toutes les 5 minutes ressource : "https://api.nee-vo.com/v1/customer/tank_status" en-têtes : Autorisation : "Bearer YOUR_NEEVO_API_KEY" Contenu-Type : Capteur "application/json" : - nom : "Nee-Vo Propane Level" value_template : "{{ (value_json.tank_level_percent|float)|round(1) }}" unit_of_measurement : "%" device_class : "mesure" state_class : "mesure" icône : "mdi:propane-réservoir" - nom : "Nee-Vo Propane Gallons" value_template : "{{ (value_json.gallons_remaining|float)|round(1) }}" unit_of_measurement : "gal" icône : "mdi:gas-cylindre" - nom : "Nee-Vo Température du réservoir" value_template : "{{ (value_json.tank_temperature_f|float)|round(1) }}" unit_of_measurement : " degré F" device_class : "température" icône : "mdi:thermometer" - nom : "Nee-Vo Battery Level" value_template : "{{ value_json.battery_percent }}" unit_of_measurement : "%" device_class : Icône "batterie" : "mdi:battery" - nom : "Nee-Force du signal Vo" value_template : "{{ value_json.signal_rssi }}" unit_of_measurement : "dBm" icône : "mdi:signal" - nom : "Nee-Vo Dernière mise à jour" value_template : "{{ value_json.last_reading_timestamp }}" icône : "mdi:clock-contour"

Note:Remplacez YOUR_NEEVO_API_KEY par votre clé API réelle de Nee-Vo (contactez votre fournisseur pour demander l'accès à l'API). Les noms de champs JSON (tank_level_percent, gallons_remaining, etc.) sont représentatifs - vérifiez les noms de champs réels dans votre réponse API Nee-Vo en consultant la documentation de l'API ou en inspectant la réponse JSON brute.

Comment trouver le point de terminaison de votre API et les noms de champs :

Contactez votre fournisseur de propane et demandez les identifiants d'accès à l'API Nee-Vo.

Une fois que vous avez les informations d'identification, utilisez un outil comme Postman ou curl pour effectuer un appel d'API de test :

bash复制

curl -H "Autorisation : Porteur YOUR_NEEVO_API_KEY" \\ https://api.nee-vo.com/v1/customer/tank_status

Copiez la réponse JSON brute pour identifier les noms de champs exacts pour la configuration de votre capteur


Script 2 : Proxy ESPHome BLE pour les capteurs Otodata et Nee-Vo

Capturer des publicités BLE à partir de n'importe quel capteur de propane

L'approche de script la plus polyvalente pour Otodata et Nee-Vo consiste à utiliser le composant bluetooth_proxy intégré-d'ESPHome pour capturer les publicités BLE du capteur de votre réservoir et les transmettre à Home Assistant. Cela fonctionne indépendamment du fait qu'Otodata ou Nee-Vo expose une API :

yaml复制

# ESPHome BLE Proxy - propane_ble_proxy.yaml # Flashez ceci sur un ESP32 placé à moins de 30-50 pieds de votre réservoir de propane esphome : nom : propane-ble-plate-forme proxy : carte ESP32 : esp32dev friendly_name : "Propane Tank BLE Proxy" wifi : ssid : "YOUR_WIFI_SSID" password: "YOUR_WIFI_PASSWORD" # Activer le point d'accès de secours en cas d'échec du WiFi ap: ssid: "PropaneProxy Fallback Hotspot" # Activer le proxy Bluetooth pour capturer toutes les publicités BLE bluetooth_proxy: active: true # Liste blanche des adresses MAC spécifiques (facultatif - commentez pour tout capturer) # liste blanche: # - "AA:BB:CC:DD:EE:FF" # Votre Otodata ou Nee-Vo sensor MAC # Enregistrez toutes les publicités BLE capturées pour l'enregistreur de débogage : niveau : journaux DEBUG : esp32_ble_tracker : INFO bluetooth_proxy : INFO # Facultatif : ajoutez un capteur local pour mesurer la température à proximité du capteur du réservoir : - plate-forme : dht pin : GPIO27 modèle : DHT22 température : nom : "Tank Area Temperature" unit_of_measurement : " degré F " filtres : - lambda : "retour x * 9.0 / 5.0 + 32.0 ;" humidité : nom : "Tank Area Humidity" unit_of_measurement : "%" update_interval : 300s # Activer l'API Home Assistant pour la découverte et le contrôle api : chiffrement : clé : "YOUR_API_ENCRYPTION_KEY" # Activer les mises à jour OTA ota: mot de passe : "YOUR_OTA_PASSWORD" # Gestion de l'alimentation - garder l'ESP32 éveillé pour une surveillance continue du BLE power_supply : id : vcc pin : VUSB

Pour utiliser ce script :

Installer ESPHome (pip installer esphome)

Créez un fichier nommé propane_ble_proxy.yaml avec le contenu ci-dessus

Remplacez YOUR_WIFI_SSID, YOUR_WIFI_PASSWORD et YOUR_API_ENCRYPTION_KEY par vos valeurs

Exécutez esphome, exécutez propane_ble_proxy.yaml

Flashez le micrologiciel résultant sur un ESP32 placé à moins de 30 à 50 pieds de votre réservoir de propane

Dans Home Assistant :Une fois le proxy ESP32 BLE exécuté, Home Assistant le découvrira automatiquement via l'intégration native ESPHome. Toutes les publicités BLE des appareils à proximité (y compris les capteurs Otodata et Nee-Vo) apparaîtront dans le suivi des appareils Bluetooth de Home Assistant. Vous pouvez ensuite créer des capteurs modèles pour analyser les données BLE brutes.


Script 3 : Scripts d'automatisation de Home Assistant pour les alertes de niveau de propane

Les principales automatisations d'alerte

Ces scripts d'automatisation fonctionnent avec n'importe quel capteur de niveau de réservoir dans Home Assistant -, qu'il s'agisse de l'API REST de Nee-Vo, d'un capteur ESPHome DIY, d'un Mopeka via MQTT ou d'une capture proxy BLE :

yaml复制

# automations.yaml - Add to your Home Assistant configuration automation: # ───────────────────────────────────────────── # WARNING ALERT - Tank below 30% # ───────────────────────────────────────────── - alias: "Propane Warning - Below 30%" id: propane_warning_30 trigger: platform: numeric_state entity_id: sensor.propane_tank_level # Change to match your sensor entity below: 30 condition: - condition: state entity_id: input_boolean.propane_warning_sent state: "off" action: - service: notify.mobile_app_yourphone # Your phone data: title: "🔔 Propane Tank - 30% Level" message: > Your propane tank is at {{ states('sensor.propane_tank_level') }}%. Estimated {{ states('sensor.propane_days_remaining') }} days remaining. Consider scheduling a refill. - service: input_boolean.turn_on entity_id: input_boolean.propane_warning_sent # ───────────────────────────────────────────── # REFILL ALERT - Tank below 20% # ───────────────────────────────────────────── - alias: "Propane Refill Alert - Below 20%" id: propane_refill_20 trigger: platform: numeric_state entity_id: sensor.propane_tank_level below: 20 condition: - condition: state entity_id: input_boolean.propane_refill_sent state: "off" action: - service: notify.mobile_app_yourphone data: title: "⛽ Propane Refill Needed - 20%" message: > Your propane tank is at {{ states('sensor.propane_tank_level') }}%. Refill is recommended within the next 3–5 days. Contact your propane supplier or use automated refill request. - service: input_boolean.turn_on entity_id: input_boolean.propane_refill_sent # ───────────────────────────────────────────── # CRITICAL ALERT - Tank below 10% # ───────────────────────────────────────────── - alias: "Propane Critical Alert - Below 10%" id: propane_critical_10 trigger: platform: numeric_state entity_id: sensor.propane_tank_level below: 10 action: - service: notify.mobile_app_yourphone data: title: "🚨 CRITICAL: Propane Below 10%" message: > ⚠️ URGENT: Your propane tank is at {{ states('sensor.propane_tank_level') }}%. Refill immediately! Do not wait. - service: light.turn_on entity_id: - light.living_room - light.kitchen data: flash: long brightness_pct: 100 - service: notify.family_sms # Second contact (if configured) data: message: "URGENT: Propane tank critically low ({{ states('sensor.propane_tank_level') }}%). Refill needed immediately." # ───────────────────────────────────────────── # RESET ALERTS - When tank is refilled (level jumps >15%) # ────────────────────── ─────────────────────── - alias : "Recharge de propane détectée - Réinitialiser les alertes" identifiant : propane_refill_detected déclencheur : plate-forme : numeric_state entité_id : sensor.propane_tank_level ci-dessus : 80 action : - service : input_boolean.turn_offentity_id : - input_boolean.propane_warning_sent - input_boolean.propane_refill_sent - service : notify.mobile_app_yourphone data : titre : message "✅ Réservoir de propane rempli" : > Niveau du réservoir à {{ states('sensor.propane_tank_level') }} %. Toutes les alertes ont été réinitialisées. Profitez de votre propane!

Entités auxiliaires requises(ajouter à configuration.yaml) :

yaml复制

input_boolean : propane_warning_sent : nom : "Alerte d'avertissement de propane envoyée" icône : mdi:alert propane_refill_sent : nom : "Alerte de recharge de propane envoyée" icône : mdi:alert


Script 4 : Scripts d'intégration de maison intelligente

Thermostats, vannes et automatisations d'éclairage

Au-delà des alertes de base, ces scripts intègrent les données sur le niveau de propane à votre système de maison intelligente plus large :

yaml复制

# ────────────────────── ─────────────────────── # CONSERVER LE PROPANE - Abaisser le thermostat lorsque le réservoir est bas # ────────────────────── ─────────────────────── automatisation : - alias : "Conservation du propane - Thermostat inférieur à 30 %" identifiant : propane_conserve_30 déclencheur : plate-forme : numeric_state entité_id : sensor.propane_tank_level ci-dessous : 30 condition : - condition : heure après : "20:00:00" avant : "06:00:00" - condition : état entité_id : climat.main_thermostat état : "chaleur" action : - service : climat.set_temperature entité_id : climat.main_thermostat données : température : 62 hvac_mode : chaleur - service : notify.mobile_app_yourphone données : titre : "🌡️ Mode de conservation du propane actif" message : "Thermostat abaissé à 62 degrés F pour conserver le propane restant." # ────────────────────── ─────────────────────── - alias : "Conservation du propane - Restaurer le thermostat après recharge" identifiant : propane_restore_thermostat déclencheur : plate-forme : numeric_state entité_id : sensor.propane_tank_level ci-dessus : 75 condition : - condition : état entité_id : input_boolean.propane_conservation_active état : "on" action : - service : climat.set_temperature entity_id :climate.main_thermostat données : température : 68 - service : input_boolean.turn_offentity_id : input_boolean.propane_conservation_active # ────────────────────── ─────────────────────── # CONSOMMATION ANORMALE - Détecter une fuite potentielle # ────────────────────── ─────────────────────── - alias : "Consommation anormale de propane - Fuite possible" id : propane_leak_detection déclencheur : plate-forme : numeric_state entité_id : sensor.propane_consumption_rate ci-dessus : 5 # gallons par heure - ajustez à la taille de votre réservoir action : - service : notify.mobile_app_yourphone data : titre : "⚠️ Consommation anormale de propane Message : > Taux de consommation de propane inhabituel détecté : {{ states('sensor.propane_consumption_rate') }} gal/hr. Si cela persiste, recherchez des fuites ou des problèmes d'équipement. - service : switch.turn_offentity_id : switch.propane_appliance_main # Facultatif : fermez les données de la vanne de propane : {}


Script 5 : Modèles de capteurs pour les valeurs calculées

Données dérivées du niveau brut du réservoir

Ajoutez ces scripts de capteur de modèle pour calculer les valeurs dérivées que les données brutes API ou BLE ne fournissent pas directement :

yaml复制

# template_sensors.yaml - Ajoutez à votre modèle de configuration Home Assistant : capteur : # ────────────────────── ─────────────────────── # Jours restants en fonction du taux de consommation actuel # ────────────────────── ─────────────────────── - nom : "Jours de propane restants" unit_of_measurement : "jours" icône : "mdi:calendar-horloge" état : > {% niveau défini=states('sensor.propane_tank_level')|float %} {% set tank_size=250 %} {# Gallons - modifier la taille de votre réservoir #} {% set gallons_left=(level / 100) * tank_size %} {% set daily_rate=states('sensor.propane_daily_consumption')|float %} {% si daily_rate > 0 et gallons_left > 0 %} {{ (gallons_left / daily_rate)|round(1) }} {% else %} Inconnu {% endif %} # ────────────────────── ─────────────────────── # Valeur totale en dollars du propane restant # ────────────────────── ─────────────────────── - nom : "Valeur en dollars de propane restante" unit_of_measurement : "USD" icône : "mdi:currency-usd" état : > {% niveau défini=states('sensor.propane_tank_level')|float %} {% set tank_size=250 %} {% set price_per_gallon=3.50 %} {# Changez votre prix réel #} {% set gallons_left=(level / 100) * tank_size %} {{ "%.2f"|format(gallons_left * price_per_gallon) }} # ────────────────────── ─────────────────────── # Texte d'état du propane (complet/avertissement/critique) # ────────────────────── ─────────────────────── - nom : icône "État du propane" : "mdi:gas-cylindre" état : > {% niveau défini=états('sensor.propane_tank_level')|float %} {% si niveau > 50 %} Plein {% niveau elif > 30 %} Normal {% niveau elif > 15 %} Faible {% niveau elif > 5 %} Critique {% else %} Vide {% endif %} # ────────────────────── ─────────────────────── # Estimation du coût de recharge # ────────────────────── ─────────────────────── - nom : "Estimation du coût de recharge de propane" unit_of_measurement : "USD" icône : "mdi:currency-usd" état : > {% niveau défini=states('sensor.propane_tank_level')|float %} {% set tank_size=250 %} {% set price_per_gallon=3.50 %} {% set gallons_to_fill=((100 - niveau) / 100) * tank_size %} {% si niveau < 95 %} {{ "%.2f"|format(gallons_to_fill * price_per_gallon) }} {% else %} 0 {% endif %}


Script 6 : Nœud-Flux RED pour l'automatisation visuelle

Flux visuel pour les non--codeurs

Pour les utilisateurs qui préfèrent un générateur d'automatisation visuel aux scripts YAML, voici un flux Node-RED qui réplique les scripts d'automatisation ci-dessus :

code

[{"id": "propane_level_trigger", "type": "inject", "z": "propane_flow", "name": "Toutes les 5 minutes", "repeat": "300", "crontab": ", "once": false, "topic": ", "payload": ", "payloadType": "date", "x": 100, "y": 100, "wires": [["propane_fetch"]]}, {"id": "propane_fetch", "type": "http request","z":"propane_flow","name":"Fetch Nee-Vo API","method":"GET","url":"https://api.nee-vo.com/v1/customer/tank_status","tls":"","x":300,"y":100,"wires":[["propane_parse","propane_debug"]]}, {"id":"propane_parse","type":"json","z":"propane_flow","name":"Parse JSON","property":"payload","action":"obj","x":500,"y":100,"wires":[["propane_level_check","propane_gallons","propane_temp"]]}, {"id":"propane_level_check","type":"switch","z":"propane_flow","name":"Niveau Vérifiez","property":"payload.tank_level_percent","rules":[{"t":"lt","v":"10"},{"t":"lt","v":"20"},{"t":"lt","v":"30"}],"checkall":"false","repair":false,"outputs":3,"x":700,"y":100,"wires":[["propane_critical"],["propane_refill"],["propane_warning"]]}, {"id": "propane_critical", "type": "template", "z": "propane_flow", "name": "Message critique", "template": "🚨 CRITIQUE : Propane à {{payload.tank_level_percent}} % ! Remplissez immédiatement ! ", "output": "str", "x": 900, Message","template":"⛽ Propane à {{payload.tank_level_percent}} %. Planifiez le remplissage bientôt.","output":"str","x":900,"y":120,"wires":[["propane_notify_refill"]]}, {"id":"propane_warning","type":"template","z":"propane_flow","name":"Message d'avertissement","template":"🔔 Propane à {{payload.tank_level_percent}}%. utilisation.","output":"str","x":900,"y":180,"wires":[["propane_notify_warning"]]}, {"id":"propane_notify_critical","type":service d'appel API","z":"propane_flow","name":"Envoyer un push critique","service":"notify.mobile_app_yourphone","x":1150,"y":60,"wires":[[]]}, {"id": "propane_flash_lights", "type": service d'appel api, "z": "propane_flow", "name": "Flash toutes les lumières", "service": "light.turn_on", "data": {\\"entity_id\\":\\"light.living_room,kitchen\\",\\"data\\":{\\"flash\\":\\"long\\"}}","x":1150,"y":20,"wires":[[]]}, {"id": "propane_notify_refill", "type": "service d'appel API", "z": "propane_flow", "name": "Envoyer un push de recharge", "service": "notify.mobile_app_yourphone", "x": 1150, "y": 120, "wires": [[]]}, {" id": "propane_notify_warning", "type": "service d'appel api", "z": "propane_flow", "name": "Envoyer un avertissement Push","service":"notify.mobile_app_yourphone","x":1150,"y":180,"wires":[[]]}, {"id":"propane_gallons", "type": "change", "z": "propane_flow", "name": "Mise à jour Gallons","rules":[{"t": "set", "p": "payload", "pt": "msg", "to": "payload.gallons_remaining", "tot": "msg"}], "x": 700, "y": 260, "wires": [["propane_ha_entity"]]}, {"id": "propane_temp", "type": "change", "z": "propane_flow", "name": "Mise à jour Température","rules":[{"t":"set","p":"payload","pt":"msg","to":"payload.tank_temperature_f","tot":"msg"}],"x":700,"y":300,"wires":[["propane_ha_entity"]]}, {"id":"propane_ha_entity","type":"ha-api","z":"propane_flow","name":"Mettre à jour Home Assistant Entité","endpoint":"/api/states/sensor.propane_tank_level","method":"POST","sendPayload":true,"sendHeaders":false,"x":950,"y":280,"wires":[[]]}]

Pour utiliser ce flux Node-RED :

Installez le module complémentaire Node-RED dans Home Assistant (via Paramètres → Modules complémentaires-).

Ouvrez Node-RED dans votre navigateur

Importez le flux (Menu → Importer → collez le JSON ci-dessus)

Mettez à jour l'URL et les informations d'identification de l'API dans le nœud propane_fetch

Mettez à jour le propane_notify_critical et les autres nœuds de notification avec vos identifiants d'entité Home Assistant réels

Déployer le flux


Script 7 : Notification récapitulative quotidienne du propane

Rapport d'état de fin-de-journée

Ce script envoie un résumé quotidien de l'état du propane à une heure convenable chaque soir :

yaml复制

automatisation : - alias : "Résumé quotidien du propane - 8 PM" identifiant : daily_propane_summary déclencheur : plate-forme : heure à : "20:00:00" action : - service : notify.mobile_app_yourphone données : titre : "📊 Rapport quotidien de propane" message : > Niveau du réservoir : {{ states('sensor.propane_tank_level') }} % gallons Restant : {{ states('sensor.propane_gallons') }} gal Jours restants : {{ states('sensor.propane_days_remaining') }} jours Consommation du jour : {{ states('sensor.propane_today_consumption') }} gal Température du réservoir : {{ states('sensor.propane_tank_temperature') }} degrés F Valeur en dollars restant : ${{ states('sensor.propane_dollar_value_remaining') }} Statut : {{ states('sensor.propane_status') }}


Foire aux questions

Q1 : Otodata dispose-t-il d'une API qui peut être scriptée ?

Otodata ne documente pas publiquement une API accessible aux clients-à partir de 2026. Leurs moniteurs utilisent la connectivité cellulaire LTE au cloud d'Otodata, et l'application client récupère les données de ce cloud -, mais le point de terminaison de l'API n'est pas documenté publiquement et l'accès n'est pas fourni aux consommateurs individuels. L'approche de script recommandée pour les utilisateurs d'Otodata consiste à ajouter un capteur ESPHome ou Mopeka parallèle au même réservoir pour les scripts Home Assistant, tandis qu'Otodata continue de gérer l'automatisation des fournisseurs. Certains membres de la communauté r/homeassistant ont tenté d'inverser le format de publicité BLE d'Otodata à l'aide des proxys ESP32 BLE, mais cela est expérimental et pas assez fiable pour les scripts d'automatisation de la production.

Q2 : Quelle est la meilleure approche de script pour Nee-Vo ?

La meilleure approche de script pour Nee-Vo dépend du fait que votre déploiement Nee-Vo expose ou non une API client. Si l'accès à l'API est disponible (contactez votre fournisseur de propane pour le demander), utilisez les scripts de capteur REST de ce guide pour interroger l'API Nee-Vo directement dans Home Assistant. Si l'accès API n'est pas disponible, l'approche recommandée est la même qu'Otodata : ajoutez un capteur ESPHome ou Mopeka parallèle à votre réservoir et utilisez les scripts d'automatisation ESPHome + Home Assistant de ce guide. L'approche des capteurs parallèles est la plus fiable car elle vous donne un contrôle total sur les données du capteur, le micrologiciel et la logique d'automatisation - sans dépendre de la disponibilité de l'API d'un fournisseur.

Q3 : À quelle fréquence les scripts d'automatisation doivent-ils vérifier le niveau du réservoir ?

Pour les scripts d'interrogation REST de Home Assistant (API Nee-Vo), un intervalle d'analyse de 5 à 10 minutes est suffisant - le niveau du réservoir change suffisamment lentement pour qu'une interrogation plus fréquente ne soit pas nécessaire et génère une charge d'API excessive. Pour les scripts proxy ESPHome BLE, l'ESP32 capture les publicités BLE en continu et Home Assistant les traite en -temps réel - aucun intervalle d'interrogation n'est nécessaire. Pour les déclencheurs d'automatisation (seuils d'alerte), les déclencheurs numeric_state de Home Assistant se déclenchent immédiatement lorsque le niveau franchit un seuil, quel que soit l'intervalle d'interrogation. Définissez votre notification récapitulative quotidienne à une heure constante chaque soir (recommandé : 19 h 00 à 20 h 00) pour obtenir un rapport d'état régulier sans fatigue d'alerte.

Q4 : Ces scripts peuvent-ils fonctionner avec plusieurs chars ?

Oui, - tous les scripts de ce guide prennent en charge plusieurs réservoirs. Pour l'interrogation de l'API REST (Nee-Vo), ajoutez des entrées de capteur REST supplémentaires pour le point de terminaison de l'API de chaque réservoir. Pour le proxy ESPHome BLE, l'ESP32 peut capturer simultanément des publicités de plusieurs capteurs BLE - ajoutez simplement des capteurs modèles pour les données de chaque réservoir. Pour les scripts d'automatisation, dupliquez les entrées d'automatisation et modifiez l'entity_id pour faire référence à l'entité de capteur spécifique de chaque réservoir (par exemple, sensor.propane_tank_level_garage, sensor.propane_tank_level_shop). Dans Node-RED, ajoutez des branches propane_level_check supplémentaires pour chaque réservoir.

Q5 : Comment déboguer un script qui ne fonctionne pas ?

Pour les scripts API REST : utilisez les outils de développement de Home Assistant (Paramètres → Outils de développement → Éditeur de modèles) pour tester votre value_template par rapport aux données JSON brutes. Copiez un exemple de réponse API et collez-le dans l'éditeur de modèles pour vérifier que l'extraction de votre chemin JSON est correcte. Pour les scripts proxy ESPHome BLE : vérifiez les journaux ESPHome (esphome logs propane_ble_proxy) pour voir si les publicités BLE sont capturées - si vous voyez des adresses MAC brutes mais aucune donnée lisible, le capteur diffuse mais le format n'est pas reconnu. Pour les scripts d'automatisation : utilisez l'outil de trace Home Assistant (onglet Traces sur chaque automatisation) pour voir exactement ce qui s'est déclenché, quelles conditions ont été évaluées et quelles actions ont été exécutées. L'outil de trace est l'outil de débogage le plus puissant de Home Assistant -, il affiche l'état exact de chaque entité au moment du déclenchement de l'automatisation.


L'essentiel

Il est préférable d'aborder les moniteurs de réservoir de propane Otodata et Nee-Vo via une stratégie de script parallèle : utilisez la plate-forme du fournisseur (Otodata ou Nee-Vo) pour la planification automatisée des recharges et déployez votre propre capteur ESPHome ou Mopeka pour un contrôle complet des scripts Home Assistant. Les sept scripts de ce guide - sondage API REST, proxy ESPHome BLE, trois niveaux d'automatisation d'alerte (avertissement/remplissage/critique), scripts d'intégration de maison intelligente (thermostat, vannes, lumières), modèles de capteurs pour les valeurs dérivées, un flux visuel Node-RED et une notification récapitulative quotidienne - vous offrent un système d'automatisation complet de surveillance du propane qui fonctionne entièrement localement dans Home Assistant. L'expérience collective de la communauté r/homeassistant confirme que cette approche parallèle offre le meilleur des deux mondes : aucune surcharge de gestion des fournisseurs, et une flexibilité totale en matière de propriété des données et d'automatisation du côté de Home Assistant. Commencez par les scripts d'automatisation (Script 3) et les capteurs de modèles (Script 5), puis développez le proxy ESPHome BLE (Script 2) pour une couverture maximale. Chaque couche de script ajoute une autre dimension de valeur -, depuis la visibilité de base jusqu'à l'intégration complète de la maison intelligente qui répond automatiquement à votre niveau de propane.


Dernière mise à jour : juillet 2026

Avertissement : Ce guide fournit des exemples de scripts Home Assistant et ESPHome pour l'intégration de la surveillance des réservoirs de propane Otodata et Nee-Vo à des fins éducatives. Les points de terminaison d'API, les noms de champs et les formats JSON référencés dans ce guide sont des exemples représentatifs - vérifiez toujours votre structure d'API réelle avec votre déploiement Nee-Vo spécifique avant de configurer les capteurs REST. Les scripts proxy ESPHome BLE capturent toutes les publicités BLE à proximité - garantissent que vous respectez les réglementations locales concernant la surveillance des appareils BLE. Les automatisations Home Assistant interagissent avec les-systèmes du monde réel, notamment les systèmes CVC, les vannes de gaz et les appareils électriques. - testez toutes les automatisations dans des conditions sûres avant de les déployer en production. Ce guide n'est pas affilié, approuvé ou sponsorisé par Otodata, Nee-Vo, Home Assistant, ESPHome, Node-RED ou la communauté r/homeassistant.

Envoyez demande