Bonjour
Je possède une station météo qui transmets ces données sur un serveur MQTT via le logiciel WEEWX.
j’arrive à lire ces données en ligne de codes DEBIAN :
mosquitto-sub -h 192.168.1.xx -u <user> -P <Password> -t weather/loop
Le retour des données est :
{"windSpeed10_kph": "0.0", "monthET": "0.0", "cloudbase_meter": "1250.10325", "outHumidity": "53.0", "pressure_mbar": "995.580909583", "rain_cm": "0.0", "dayET": "0.008", "maxSolarRad": "149.546423213", "barometer_mbar": "1005.85887481", "yearRain_cm": "45.8200000115", "consBatteryVoltage_volt": "4.54", "dewpoint_C": "3.28213624359", "insideAlarm": "0.0", "inHumidity": "48.0", "sunrise": "1635747600.0", "windGust_kph": "0.0", "heatindex_C": "12.6111111111", "dayRain_cm": "0.0", "outsideAlarm1": "0.0", "inDewpoint_C": "11.237297004", "outsideAlarm2": "0.0", "windSpeed_kph": "0.0", "forecastRule": "192.0", "rainAlarm": "0.0", "altimeter_mbar": "1005.61377267", "windchill_C": "12.6111111111", "appTemp_C": "11.160006244", "outTemp_C": "12.6111111111", "extraAlarm1": "0.0", "extraAlarm2": "0.0", "extraAlarm3": "0.0", "extraAlarm4": "0.0", "extraAlarm5": "0.0", "extraAlarm6": "0.0", "extraAlarm7": "0.0", "extraAlarm8": "0.0", "humidex_C": "12.6111111111", "rain24_cm": "0.0", "forecastIcon": "3.0", "hourRain_cm": "0.0", "inTemp_C": "22.8333333333", "soilLeafAlarm4": "0.0", "trendIcon": "20.0", "soilLeafAlarm2": "0.0", "soilLeafAlarm3": "0.0", "usUnits": "16.0", "soilLeafAlarm1": "0.0", "leafWet4": "0.0", "txBatteryStatus": "0.0", "yearET": "41.4", "monthRain_cm": "0.0", "UV": "0.0", "rainRate_cm_per_hour": "0.0", "dateTime": "1635753499.0", "stormRain_cm": "0.0", "sunset": "1635784260.0", "radiation_Wpm2": "16.0"}
Soit :
"inHumidity":"48.0",
"sunrise":"1635747600.0",
"windGust_kph":"0.0",
"heatindex_C":"12.6111111111",
"dayRain_cm":"0.0",
"outsideAlarm1":"0.0",
"inDewpoint_C":"11.237297004",
"outsideAlarm2":"0.0",
"windSpeed_kph":"0.0",
"forecastRule":"192.0",
"rainAlarm":"0.0",
"altimeter_mbar":"1005.61377267",
"windchill_C":"12.6111111111",
"appTemp_C":"11.160006244",
"outTemp_C":"12.6111111111",
"extraAlarm1":"0.0",
"extraAlarm2":"0.0",
"extraAlarm3":"0.0",
"extraAlarm4":"0.0",
"extraAlarm5":"0.0",
"extraAlarm6":"0.0",
"extraAlarm7":"0.0",
"extraAlarm8":"0.0",
"humidex_C":"12.6111111111",
"rain24_cm":"0.0",
"forecastIcon":"3.0",
"hourRain_cm":"0.0",
"inTemp_C":"22.8333333333",
"soilLeafAlarm4":"0.0",
"trendIcon":"20.0",
"soilLeafAlarm2":"0.0",
"soilLeafAlarm3":"0.0",
"usUnits":"16.0",
"soilLeafAlarm1":"0.0",
"leafWet4":"0.0",
"txBatteryStatus":"0.0",
"yearET":"41.4",
"monthRain_cm":"0.0",
"UV":"0.0",
"rainRate_cm_per_hour":"0.0",
"dateTime":"1635753499.0",
"stormRain_cm":"0.0",
"sunset":"1635784260.0",
"radiation_Wpm2":"16.0"
}
Sur Home Assistant, j’ai écrit les lignes suivants :
mqtt:
broker: 192.168.1.208
username: !secret mqtt_user
password: !secret mqtt_password
#Définition des capteurs
sensor:
- platform: mqtt
name: "Temp ext"
state_topic: "weather/loop"
unit_of_measurement: '°C'
Bien sûr, ca ne marche pas car par cela, je ne récupère pas la seule mesure de la température extérieure.
D’où ma question : comment trier ces données.
Merci pour votre aide