Outside Temperature
The temperatures module allows configuration and reading of outdoor temperature forecasts. The daily average temperature is used by the heating module for the temperature heating curve.
Not supported on this hardware!
Not supported on this hardware!
Not supported on this hardware!
Not supported on this hardware!
temperatures/config
The outside temperature configuration.
# $HOST e.g. wem2-AbCd
Read
curl http://$HOST/temperatures/config
{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}
Write
curl http://$HOST/temperatures/config -d '{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem2/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/temperatures/config
{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}
Write
With MQTT on $PREFIX/temperatures/config_update
mosquitto_pub -h $BROKER -t $PREFIX/temperatures/config_update -m '{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}'
| Name | Description |
|---|---|
enablebool | Indicates whether the temperature forecast is enabled. |
sourceint | Source of the temperature data.
|
api_urlstring | Endpoint URL of the weather service server. |
latint (°/10000) | Latitude (e.g., 51.8846°) |
longint (°/10000) | Longitude (e.g., 8.6251°) |
cert_idint | ID of the CA certificate used to verify the certificate of the weather service server. See |
temperatures/state
The outside temperature state.
{
"last_sync": 28899840,
"last_check": 28899840,
"next_check": 28900200,
"current": 185,
"today_min": 95,
"today_max": 225,
"today_avg": 160,
"tomorrow_min": 80,
"tomorrow_max": 210,
"tomorrow_avg": 145
}
| Name | Description |
|---|---|
last_syncint | A Unix timestamp in minutes indicating when the temperature data was last successfully updated. |
last_checkint | A Unix timestamp in minutes indicating when the temperature data was last queried. |
next_checkint | A Unix timestamp in minutes indicating when the temperature data will be queried next. |
currentint | Current outdoor temperature in tenths of °C. 0x7FFF if not available. |
today_minint | Minimum daily temperature for today in tenths of °C. 0x7FFF if not available. |
today_maxint | Maximum daily temperature for today in tenths of °C. 0x7FFF if not available. |
today_avgint | Daily average temperature for today in tenths of °C. 0x7FFF if not available. |
tomorrow_minint | Minimum daily temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
tomorrow_maxint | Maximum daily temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
tomorrow_avgint | Daily average temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
temperatures/temperatures
Hourly temperature forecast.
{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}
| Name | Description |
|---|---|
first_dateint | A Unix timestamp in minutes indicating the time for which the first temperature value in the |
temperaturesint[..] | Array of temperature values in tenths of °C. The first element of the array is for the time |
temperatures/temperatures_update
Updates the temperature forecast via the API. Only works when the source is set to Push (1).
# $HOST e.g. wem2-AbCd
Write
curl http://$HOST/temperatures/temperatures_update -d '{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. wem2/AbCd
Write
mosquitto_pub -h $BROKER -t $PREFIX/temperatures/temperatures_update -m '{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}'
| Name | Description |
|---|---|
first_dateint | A Unix timestamp in minutes indicating the time for which the first temperature value in the |
temperaturesint[..] | Array of temperature values in tenths of °C. The first element of the array is for the time |
temperatures/config
The outside temperature configuration.
# $HOST e.g. warp-AbCd
Read
curl http://$HOST/temperatures/config
{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}
Write
curl http://$HOST/temperatures/config -d '{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Read
mosquitto_sub -v -C 1 -h $BROKER -t $PREFIX/temperatures/config
{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}
Write
With MQTT on $PREFIX/temperatures/config_update
mosquitto_pub -h $BROKER -t $PREFIX/temperatures/config_update -m '{
"enable": true,
"source": 0,
"api_url": "https://api.open-meteo.com/",
"lat": 518846,
"long": 86251,
"cert_id": -1
}'
| Name | Description |
|---|---|
enablebool | Indicates whether the temperature forecast is enabled. |
sourceint | Source of the temperature data.
|
api_urlstring | Endpoint URL of the weather service server. |
latint (°/10000) | Latitude (e.g., 51.8846°) |
longint (°/10000) | Longitude (e.g., 8.6251°) |
cert_idint | ID of the CA certificate used to verify the certificate of the weather service server. See |
temperatures/state
The outside temperature state.
{
"last_sync": 28899840,
"last_check": 28899840,
"next_check": 28900200,
"current": 185,
"today_min": 95,
"today_max": 225,
"today_avg": 160,
"tomorrow_min": 80,
"tomorrow_max": 210,
"tomorrow_avg": 145
}
| Name | Description |
|---|---|
last_syncint | A Unix timestamp in minutes indicating when the temperature data was last successfully updated. |
last_checkint | A Unix timestamp in minutes indicating when the temperature data was last queried. |
next_checkint | A Unix timestamp in minutes indicating when the temperature data will be queried next. |
currentint | Current outdoor temperature in tenths of °C. 0x7FFF if not available. |
today_minint | Minimum daily temperature for today in tenths of °C. 0x7FFF if not available. |
today_maxint | Maximum daily temperature for today in tenths of °C. 0x7FFF if not available. |
today_avgint | Daily average temperature for today in tenths of °C. 0x7FFF if not available. |
tomorrow_minint | Minimum daily temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
tomorrow_maxint | Maximum daily temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
tomorrow_avgint | Daily average temperature for tomorrow in tenths of °C. 0x7FFF if not available. |
temperatures/temperatures
Hourly temperature forecast.
{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}
| Name | Description |
|---|---|
first_dateint | A Unix timestamp in minutes indicating the time for which the first temperature value in the |
temperaturesint[..] | Array of temperature values in tenths of °C. The first element of the array is for the time |
temperatures/temperatures_update
Updates the temperature forecast via the API. Only works when the source is set to Push (1).
# $HOST e.g. warp-AbCd
Write
curl http://$HOST/temperatures/temperatures_update -d '{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}'
# $BROKER e.g. my_mosquitto.localdomain
# $PREFIX e.g. warp/AbCd
Write
mosquitto_pub -h $BROKER -t $PREFIX/temperatures/temperatures_update -m '{
"first_date": 28899360,
"temperatures": [125, 120, 115, 110, 105, 100, 95, 100, 115, 135, 155, 175, 195, 210, 220, 225, 220, 210, 195, 180, 165, 155, 145, 140, 130, 125, 120, 115, 110, 105, 100, 95, 100, 120, 140, 160, 180, 195, 205, 210, 205, 195, 180, 165, 150, 140, 130, 120]
}'
| Name | Description |
|---|---|
first_dateint | A Unix timestamp in minutes indicating the time for which the first temperature value in the |
temperaturesint[..] | Array of temperature values in tenths of °C. The first element of the array is for the time |