Fix: Complete dashboard rewrite - EXTRACT(EPOCH) for time, state ~ regex filter, timeInterval in datasource

This commit is contained in:
hermes
2026-09-09 05:12:45 +00:00
parent 5d657ddde0
commit 18f10bb174
2 changed files with 48 additions and 88 deletions
@@ -38,7 +38,7 @@ data:
"y": 0
},
"id": 14,
"title": "Temperatures",
"title": "Temperaturen",
"panelType": "row",
"type": "row"
},
@@ -108,7 +108,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.thzctl_vorlaufisttemp', 'sensor.thzctl_ruecklaufisttemp')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.thzctl_vorlaufisttemp', 'sensor.thzctl_ruecklaufisttemp')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -181,7 +181,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.tecalor_thz5_5_eco_heissgas_temp', 'sensor.tecalor_thz5_5_eco_olsumpftemperatur', 'sensor.tecalor_thz5_5_eco_invertertemperatur')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_heissgas_temp', 'sensor.tecalor_thz5_5_eco_olsumpftemperatur', 'sensor.tecalor_thz5_5_eco_invertertemperatur')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -270,7 +270,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.tecalor_thz5_5_eco_druck_hochdruck', 'sensor.tecalor_thz5_5_eco_druck_niederdruck', 'sensor.tecalor_thz5_5_eco_druck_heizkreis')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_druck_hochdruck', 'sensor.tecalor_thz5_5_eco_druck_niederdruck', 'sensor.tecalor_thz5_5_eco_druck_heizkreis')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -343,7 +343,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.tecalor_thz5_5_eco_verfluessiger_temp', 'sensor.tecalor_thz5_5_eco_speichersolltemp_tag')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_verfluessiger_temp', 'sensor.tecalor_thz5_5_eco_speichersolltemp_tag')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -416,7 +416,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen', 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen', 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -501,7 +501,7 @@ data:
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n last_changed AS time,\n state::float AS value,\n entity_id AS metric\nFROM recorder_states\nWHERE entity_id IN ('sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh', 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh')\n AND $__timeFilter(last_changed)\nORDER BY last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh', 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -559,7 +559,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -617,7 +617,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -687,7 +687,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_firmware_version'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_firmware_version'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -745,7 +745,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -803,7 +803,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -861,7 +861,7 @@ data:
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT state::float AS value, entity_id AS metric\nFROM recorder_states\nWHERE entity_id = 'sensor.tecalor_thz5_5_eco_raumsolltemp_tag'\nORDER BY last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_raumsolltemp_tag'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -885,4 +885,4 @@ data:
"uid": "tec-waermepumpe",
"version": 1
}
@@ -31,7 +31,7 @@
"y": 0
},
"id": 14,
"title": "Temperatures",
"title": "Temperaturen",
"panelType": "row",
"type": "row"
},
@@ -70,7 +70,7 @@
}
]
},
"unit": "\u00b0C"
"unit": "°C"
},
"overrides": []
},
@@ -83,11 +83,7 @@
"id": 2,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -105,11 +101,11 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.thzctl_vorlaufisttemp', 'sensor.thzctl_ruecklaufisttemp')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.thzctl_vorlaufisttemp', 'sensor.thzctl_ruecklaufisttemp')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
"title": "Vorlauf & R\u00fccklauf Temperatur",
"title": "Vorlauf & Rücklauf Temperatur",
"type": "timeseries"
},
{
@@ -147,7 +143,7 @@
}
]
},
"unit": "\u00b0C"
"unit": "°C"
},
"overrides": []
},
@@ -160,11 +156,7 @@
"id": 3,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -182,11 +174,11 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_heissgas_temp', 'sensor.tecalor_thz5_5_eco_olsumpftemperatur', 'sensor.tecalor_thz5_5_eco_invertertemperatur')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_heissgas_temp', 'sensor.tecalor_thz5_5_eco_olsumpftemperatur', 'sensor.tecalor_thz5_5_eco_invertertemperatur')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
"title": "Kesseltemperatur (Heissgas, \u00d6lsumpftemp, Inverter)",
"title": "Kesseltemperatur (Heissgas, Ölsumpftemp, Inverter)",
"type": "timeseries"
},
{
@@ -253,11 +245,7 @@
"id": 4,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -275,7 +263,7 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_druck_hochdruck', 'sensor.tecalor_thz5_5_eco_druck_niederdruck', 'sensor.tecalor_thz5_5_eco_druck_heizkreis')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_druck_hochdruck', 'sensor.tecalor_thz5_5_eco_druck_niederdruck', 'sensor.tecalor_thz5_5_eco_druck_heizkreis')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -317,7 +305,7 @@
}
]
},
"unit": "\u00b0C"
"unit": "°C"
},
"overrides": []
},
@@ -330,11 +318,7 @@
"id": 5,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -352,11 +336,11 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_verfluessiger_temp', 'sensor.tecalor_thz5_5_eco_speichersolltemp_tag')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_verfluessiger_temp', 'sensor.tecalor_thz5_5_eco_speichersolltemp_tag')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
"title": "Verfl\u00fcssiger & Speichersoll",
"title": "Verflüssiger & Speichersoll",
"type": "timeseries"
},
{
@@ -407,11 +391,7 @@
"id": 6,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -429,7 +409,7 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen', 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen', 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -496,11 +476,7 @@
"id": 7,
"options": {
"legend": {
"calcs": [
"lastNotNull",
"max",
"min"
],
"calcs": ["lastNotNull", "max", "min"],
"displayMode": "table",
"placement": "bottom",
"showLegend": true
@@ -518,7 +494,7 @@
},
"format": "time_series",
"rawQuery": true,
"rawSql": "SELECT\n s.last_changed AS time,\n s.state::float AS value,\n sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh', 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh')\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"rawSql": "SELECT\n EXTRACT(EPOCH FROM s.last_changed) * 1000 as time,\n s.state::float as value,\n sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id IN ('sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh', 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh')\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\n AND $__timeFilter(s.last_changed)\nORDER BY s.last_changed",
"refId": "A"
}
],
@@ -562,9 +538,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -578,7 +552,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_ww_summe_mwh'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -622,9 +596,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -638,7 +610,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_el_energieaufnahme_heiz_summe_mwh'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -694,9 +666,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -710,7 +680,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_firmware_version'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_firmware_version'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -754,9 +724,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -770,7 +738,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_heizen'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -814,9 +782,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -830,7 +796,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_laufzeit_verdichter_ww'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -874,9 +840,7 @@
"justifyMode": "auto",
"orientation": "horizontal",
"reduceOptions": {
"calcs": [
"lastNotNull"
],
"calcs": ["lastNotNull"],
"fields": "",
"values": false
},
@@ -890,7 +854,7 @@
},
"format": "table",
"rawQuery": true,
"rawSql": "SELECT s.state::float AS value, sm.entity_id AS metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_raumsolltemp_tag'\nORDER BY s.last_changed DESC LIMIT 1",
"rawSql": "SELECT EXTRACT(EPOCH FROM s.last_changed) * 1000 as time, s.state::float as value, sm.entity_id as metric\nFROM states s JOIN states_meta sm ON s.metadata_id = sm.metadata_id\nWHERE sm.entity_id = 'sensor.tecalor_thz5_5_eco_raumsolltemp_tag'\n AND s.state ~ '^-?[0-9]+\\.?[0-9]*$'\nORDER BY s.last_changed DESC LIMIT 1",
"refId": "A"
}
],
@@ -900,11 +864,7 @@
],
"refresh": "30s",
"schemaVersion": 40,
"tags": [
"homeassistant",
"tec",
"heat-pump"
],
"tags": ["homeassistant", "tec", "heat-pump"],
"templating": {
"list": []
},
@@ -914,7 +874,7 @@
},
"timepicker": {},
"timezone": "browser",
"title": "Tecalor W\u00e4rmepumpe",
"title": "Tecalor Wärmepumpe",
"uid": "tec-waermepumpe",
"version": 1
}
}