Mx4
1
Wenn ich das hier [1] richtig verstehe, muss ich eine action erstellen um die forecast-Werte von openweather zu erhalten.
[1] Weather - Home Assistant
Wieso funktioniert das hier aber nicht? Was mache ich falsch?
- trigger:
- platform: time_pattern
hours: "/1"
action:
- service: weather.get_forecasts
data:
type: hourly
target:
entity_id: weather.openweathermap
response_variable: hourlyforecast
sensor:
- name: forecast_weather
unique_id: c4a7bbf2-1814-46ab-9e1f-e6f6ad42410b
state: "{{ hourly['weather.openweathermap'].forecast[0].temperature }}"
icon: mdi:hours-24
unit_of_measurement: °C
Wenn Du als response_variable hourlyforecast
definieren tust, dann must Du auch diese im State auch verwenden und nicht hourly
Also muss es lauten
state: "{{ hourlyforecast['weather.openweathermap'].forecast[0].temperature }}"
Gruß
Osorkon
1 „Gefällt mir“
Mx4
3
Danke, dh. der data generator im apex-chart sollte ihr dann Daten bekommen?
data_generator: |
return entity.attributes.forecast.map((entry) => {
return [new Date(entry.datetime).getTime(), entry.temperature];
});
Mx4
4
Sollten hier nicht die forecast Werte reinkommen?
Mx4
5
@Osorkon hast du noch eine Idee? Danke
Mx4
7
In einem sensor.forecast_old
kommen die Forecast werden mal rein
Nur wie bringe ich die forecast Werte hier in den Graphen dex apex-Charts, damit gehts leider nicht mehr
- entity: weather.openweathermap
name: forceast
curve: smooth
stroke_width: 2
type: line
unit: °C
extend_to: false
show:
in_header: false
legend_value: false
extremas: true
in_chart: true
data_generator: |
return entity.attributes.forecast.map((entry) => {
return [new Date(entry.datetime).getTime(), entry.temperature];
});
Mx4
8
Jetzt hab ichs…im apex chart musste ich hier nur die enitiy weather.openweahtermap mit sensor.forecast_old austauschen:
- entity: sensor.forecast_old
name: forceast
curve: smooth
stroke_width: 2
type: line
unit: °C
extend_to: false
show:
in_header: false
legend_value: false
extremas: true
in_chart: true
data_generator: |
return entity.attributes.forecast.map((entry) => {
return [new Date(entry.datetime).getTime(), entry.temperature];
});
Dann wird der Graph weitergeführt…
