Compare commits
3 Commits
7c2277786d
...
812fec9f08
| Author | SHA1 | Date | |
|---|---|---|---|
| 812fec9f08 | |||
| 8cb27adcaa | |||
| 581c91162b |
26
calibre/.gitignore
vendored
Normal file
26
calibre/.gitignore
vendored
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
# Ignore the environment file containing sensitive data
|
||||||
|
.env
|
||||||
|
|
||||||
|
# Ignore the config directory which may contain persistent data (e.g., Calibre database, metadata)
|
||||||
|
/app-config
|
||||||
|
/web-config
|
||||||
|
/calibre-lib
|
||||||
|
config/
|
||||||
|
|
||||||
|
# Ignore the Docker container image and build files
|
||||||
|
*.log
|
||||||
|
*.pid
|
||||||
|
docker-compose.override.yml
|
||||||
|
|
||||||
|
# Ignore any other temporary or autogenerated files
|
||||||
|
*.swp
|
||||||
|
*.bak
|
||||||
|
*.tmp
|
||||||
|
|
||||||
|
# Ignore Docker-related metadata
|
||||||
|
.docker/
|
||||||
|
|
||||||
|
# Ignore system files created by editors
|
||||||
|
.DS_Store
|
||||||
|
Thumbs.db
|
||||||
|
|
||||||
0
calibre/README.md
Normal file
0
calibre/README.md
Normal file
48
calibre/docker-compose.yml
Normal file
48
calibre/docker-compose.yml
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
services:
|
||||||
|
app:
|
||||||
|
image: lscr.io/linuxserver/calibre:latest
|
||||||
|
container_name: calibre
|
||||||
|
#security_opt:
|
||||||
|
#- seccomp:unconfined #optional
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=America/Detroit
|
||||||
|
#- PASSWORD=${PASSWORD}
|
||||||
|
- CLI_ARGS='--disable-web-password'
|
||||||
|
volumes:
|
||||||
|
- ./app-config:/config
|
||||||
|
- ./calibre-lib:/calibre
|
||||||
|
ports:
|
||||||
|
- 9000:8080 # Calibre desktop gui (only for reverse proxy access)
|
||||||
|
- 9001:8181 # Calibre desktop gui HTTPS
|
||||||
|
- 9002:8081 # Calibre webserver gui (needs to be enabled in gui settings first)
|
||||||
|
shm_size: "1gb"
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
web:
|
||||||
|
image: lscr.io/linuxserver/calibre-web:latest
|
||||||
|
container_name: calibre-web
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ=America/Detroit
|
||||||
|
- WEB_USER=${USERNAME}
|
||||||
|
- WEB_PASSWORD=${PASSWORD}
|
||||||
|
#- DOCKER_MODS=linuxserver/mods:universal-calibre #optional
|
||||||
|
#- OAUTHLIB_RELAX_TOKEN_SCOPE=1 #optional
|
||||||
|
volumes:
|
||||||
|
- ./web-config:/config
|
||||||
|
- ./calibre-lib:/books
|
||||||
|
ports:
|
||||||
|
- 9004:8083
|
||||||
|
networks:
|
||||||
|
- 'homelab'
|
||||||
|
- 'default'
|
||||||
|
restart: unless-stopped
|
||||||
|
|
||||||
|
|
||||||
|
networks:
|
||||||
|
homelab:
|
||||||
|
external: true
|
||||||
|
|
||||||
@@ -14,44 +14,41 @@
|
|||||||
- sat
|
- sat
|
||||||
conditions: []
|
conditions: []
|
||||||
actions:
|
actions:
|
||||||
- action: rest_command.get_phone_weather
|
|
||||||
data: {}
|
|
||||||
response_variable: weather_data
|
|
||||||
- variables:
|
- variables:
|
||||||
max_temp: '{{weather_data.content.daily.temperature_2m_max[0]}}'
|
high: '{{ state_attr(''sensor.daily_forecast'', ''temperature_2m_max'')[0] }}'
|
||||||
min_temp: '{{weather_data.content.daily.temperature_2m_min[0]}}'
|
low: '{{ state_attr(''sensor.daily_forecast'', ''temperature_2m_min'')[0] }}'
|
||||||
temp_unit: '{{weather_data.content.daily_units.temperature_2m_max}}'
|
temp_unit: '{{ state_attr(''sensor.units'', ''temperature_2m'') }}'
|
||||||
condition: "{% set code = weather_data.content.daily.weather_code[0] | int %}
|
loc: '{{ state_attr(''sensor.alexs_iphone_2_geocoded_location'', ''Locality'')
|
||||||
{% set mapper = {\n 0: \"Clear sky\",\n 1: \"Mainly clear\",\n 2: \"Partly
|
}}, {{ state_attr(''sensor.alexs_iphone_2_geocoded_location'', ''Administrative
|
||||||
cloudy\",\n 3: \"Overcast\",\n 45: \"Fog\",\n 48: \"Depositing rime fog\",\n
|
Area'') }}'
|
||||||
\ 51: \"Drizzle - Light intensity\",\n 53: \"Drizzle - Moderate intensity\",\n
|
condition: "{% set code = state_attr('sensor.daily_forecast', 'weather_code')[0]
|
||||||
\ 55: \"Drizzle - Dense intensity\",\n 56: \"Freezing Drizzle - Light intensity\",\n
|
| int %} {% set mapper = {\n 0: \"Clear sky\",\n 1: \"Mainly clear\",\n
|
||||||
\ 57: \"Freezing Drizzle - Dense intensity\",\n 61: \"Rain - Slight intensity\",\n
|
\ 2: \"Partly cloudy\",\n 3: \"Overcast\",\n 45: \"Fog\",\n 48: \"Depositing
|
||||||
\ 63: \"Rain - Moderate intensity\",\n 65: \"Rain - Heavy intensity\",\n
|
rime fog\",\n 51: \"Drizzle - Light intensity\",\n 53: \"Drizzle - Moderate
|
||||||
\ 66: \"Freezing Rain - Light intensity\",\n 67: \"Freezing Rain - Heavy
|
intensity\",\n 55: \"Drizzle - Dense intensity\",\n 56: \"Freezing Drizzle
|
||||||
intensity\",\n 71: \"Snow fall - Slight intensity\",\n 73: \"Snow fall -
|
- Light intensity\",\n 57: \"Freezing Drizzle - Dense intensity\",\n 61:
|
||||||
Moderate intensity\",\n 75: \"Snow fall - Heavy intensity\",\n 77: \"Snow
|
\"Rain - Slight intensity\",\n 63: \"Rain - Moderate intensity\",\n 65:
|
||||||
grains\",\n 80: \"Rain showers - Slight intensity\",\n 81: \"Rain showers
|
\"Rain - Heavy intensity\",\n 66: \"Freezing Rain - Light intensity\",\n
|
||||||
- Moderate intensity\",\n 82: \"Rain showers - Violent intensity\",\n 85:
|
\ 67: \"Freezing Rain - Heavy intensity\",\n 71: \"Snow fall - Slight intensity\",\n
|
||||||
\"Snow showers - Slight intensity\",\n 86: \"Snow showers - Heavy intensity\",\n
|
\ 73: \"Snow fall - Moderate intensity\",\n 75: \"Snow fall - Heavy intensity\",\n
|
||||||
|
\ 77: \"Snow grains\",\n 80: \"Rain showers - Slight intensity\",\n 81:
|
||||||
|
\"Rain showers - Moderate intensity\",\n 82: \"Rain showers - Violent intensity\",\n
|
||||||
|
\ 85: \"Snow showers - Slight intensity\",\n 86: \"Snow showers - Heavy intensity\",\n
|
||||||
\ 95: \"Thunderstorm - Slight intensity\",\n 96: \"Thunderstorm with slight
|
\ 95: \"Thunderstorm - Slight intensity\",\n 96: \"Thunderstorm with slight
|
||||||
hail\",\n 99: \"Thunderstorm with heavy hail\"\n } %}\n {{ mapper.get(code,
|
hail\",\n 99: \"Thunderstorm with heavy hail\"\n } %}\n {{ mapper.get(code,
|
||||||
\"Not Availible\") }}\n"
|
\"Not Availible\") }}\n"
|
||||||
- action: script.general_notificatioon
|
- action: script.general_notificatioon
|
||||||
metadata: {}
|
|
||||||
data:
|
data:
|
||||||
title: Morning Weather
|
|
||||||
message: 'Good Morning!
|
message: 'Good Morning!
|
||||||
|
|
||||||
Here is the weather for today:
|
Here is the weather for today for {{loc}}:
|
||||||
|
|
||||||
High: {{max_temp}} {{temp_unit}}
|
High: {{high}} {{temp_unit}}
|
||||||
|
|
||||||
Low: {{min_temp}} {{temp_unit}}
|
Low: {{low}} {{temp_unit}}
|
||||||
|
|
||||||
Conditions: {{condition}}
|
Conditions: {{condition}}'
|
||||||
|
title: Morning Report
|
||||||
'
|
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1766182515375'
|
- id: '1766182515375'
|
||||||
alias: Dash Test
|
alias: Dash Test
|
||||||
@@ -66,58 +63,3 @@
|
|||||||
- variables:
|
- variables:
|
||||||
max_temp: '{{weather.content.daily.temperature_2m_max[0]}}'
|
max_temp: '{{weather.content.daily.temperature_2m_max[0]}}'
|
||||||
mode: single
|
mode: single
|
||||||
- id: '1766406207253'
|
|
||||||
alias: Morning Test
|
|
||||||
description: ''
|
|
||||||
triggers:
|
|
||||||
- trigger: time
|
|
||||||
at: 07:00:00
|
|
||||||
weekday:
|
|
||||||
- sun
|
|
||||||
- mon
|
|
||||||
- tue
|
|
||||||
- wed
|
|
||||||
- thu
|
|
||||||
- fri
|
|
||||||
- sat
|
|
||||||
conditions: []
|
|
||||||
actions:
|
|
||||||
- action: rest_command.get_phone_weather
|
|
||||||
data: {}
|
|
||||||
response_variable: weather_data
|
|
||||||
- variables:
|
|
||||||
max_temp: '{{weather_data.content.daily.temperature_2m_max[0]}}'
|
|
||||||
min_temp: '{{weather_data.content.daily.temperature_2m_min[0]}}'
|
|
||||||
temp_unit: '{{weather_data.content.daily_units.temperature_2m_max}}'
|
|
||||||
condition: "{% set code = weather_data.content.daily.weather_code[0] | int %}
|
|
||||||
{% set mapper = {\n 0: \"Clear sky\",\n 1: \"Mainly clear\",\n 2: \"Partly
|
|
||||||
cloudy\",\n 3: \"Overcast\",\n 45: \"Fog\",\n 48: \"Depositing rime fog\",\n
|
|
||||||
\ 51: \"Drizzle - Light intensity\",\n 53: \"Drizzle - Moderate intensity\",\n
|
|
||||||
\ 55: \"Drizzle - Dense intensity\",\n 56: \"Freezing Drizzle - Light intensity\",\n
|
|
||||||
\ 57: \"Freezing Drizzle - Dense intensity\",\n 61: \"Rain - Slight intensity\",\n
|
|
||||||
\ 63: \"Rain - Moderate intensity\",\n 65: \"Rain - Heavy intensity\",\n
|
|
||||||
\ 66: \"Freezing Rain - Light intensity\",\n 67: \"Freezing Rain - Heavy
|
|
||||||
intensity\",\n 71: \"Snow fall - Slight intensity\",\n 73: \"Snow fall -
|
|
||||||
Moderate intensity\",\n 75: \"Snow fall - Heavy intensity\",\n 77: \"Snow
|
|
||||||
grains\",\n 80: \"Rain showers - Slight intensity\",\n 81: \"Rain showers
|
|
||||||
- Moderate intensity\",\n 82: \"Rain showers - Violent intensity\",\n 85:
|
|
||||||
\"Snow showers - Slight intensity\",\n 86: \"Snow showers - Heavy intensity\",\n
|
|
||||||
\ 95: \"Thunderstorm - Slight intensity\",\n 96: \"Thunderstorm with slight
|
|
||||||
hail\",\n 99: \"Thunderstorm with heavy hail\"\n } %}\n {{ mapper.get(code,
|
|
||||||
\"Not Availible\") }}\n"
|
|
||||||
- action: script.general_notificatioon
|
|
||||||
metadata: {}
|
|
||||||
data:
|
|
||||||
title: Morning Weather
|
|
||||||
message: 'Good Morning!
|
|
||||||
|
|
||||||
Here is the weather for today:
|
|
||||||
|
|
||||||
High: {{max_temp}} {{temp_unit}}
|
|
||||||
|
|
||||||
Low: {{min_temp}} {{temp_unit}}
|
|
||||||
|
|
||||||
Conditions: {{condition}}
|
|
||||||
|
|
||||||
'
|
|
||||||
mode: single
|
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ http:
|
|||||||
trusted_proxies:
|
trusted_proxies:
|
||||||
#- 172.19.0.2 # Add the IP address of the proxy server
|
#- 172.19.0.2 # Add the IP address of the proxy server
|
||||||
- 172.0.0.0/8 # You may also provide the subnet mask
|
- 172.0.0.0/8 # You may also provide the subnet mask
|
||||||
|
- 192.168.0.56
|
||||||
|
|
||||||
rest_command: # This api shows: Daily code, max/min temp, apperent max/min temp, sunrise/sunset/daylight, UV, percip sum/hours/probability
|
rest_command: # This api shows: Daily code, max/min temp, apperent max/min temp, sunrise/sunset/daylight, UV, percip sum/hours/probability
|
||||||
get_phone_weather: # All in US units for 3 days out
|
get_phone_weather: # All in US units for 3 days out
|
||||||
@@ -24,50 +25,26 @@ rest_command: # This api shows: Daily code, max/min temp, apperent max/min temp,
|
|||||||
https://api.open-meteo.com/v1/forecast?latitude={{lat}}&longitude={{lon}}&daily=weather_code,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,daylight_duration,sunset,uv_index_max,precipitation_sum,precipitation_hours,precipitation_probability_max&timezone=America%2FNew_York&forecast_days=3&wind_speed_unit=mph&temperature_unit=fahrenheit&precipitation_unit=inch
|
https://api.open-meteo.com/v1/forecast?latitude={{lat}}&longitude={{lon}}&daily=weather_code,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,daylight_duration,sunset,uv_index_max,precipitation_sum,precipitation_hours,precipitation_probability_max&timezone=America%2FNew_York&forecast_days=3&wind_speed_unit=mph&temperature_unit=fahrenheit&precipitation_unit=inch
|
||||||
method: GET
|
method: GET
|
||||||
|
|
||||||
rest:
|
rest: !include_dir_merge_list rest/
|
||||||
- resource_template: >
|
|
||||||
{% set lat = state_attr('device_tracker.alexs_phone','latitude') %}
|
|
||||||
{% set lon = state_attr('device_tracker.alexs_phone','longitude') %}
|
|
||||||
https://api.open-meteo.com/v1/forecast?latitude={{lat}}&longitude={{lon}}&daily=weather_code,temperature_2m_max,temperature_2m_min,apparent_temperature_max,apparent_temperature_min,sunrise,daylight_duration,sunset,uv_index_max,rain_sum,snowfall_sum,precipitation_sum,precipitation_hours,precipitation_probability_max&hourly=temperature_2m,apparent_temperature,precipitation_probability,weather_code,precipitation¤t=temperature_2m,apparent_temperature,precipitation,weather_code,is_day&timezone=America%2FNew_York&wind_speed_unit=mph&temperature_unit=fahrenheit&precipitation_unit=inch
|
|
||||||
scan_interval: 900
|
|
||||||
sensor:
|
|
||||||
- name: "Phone Location Minimum Temperature"
|
|
||||||
unique_id: "phone_min_temp"
|
|
||||||
value_template: '{{value_json.daily.temperature_2m_min[0]}}'
|
|
||||||
unit_of_measurement: '°F'
|
|
||||||
device_class: temperature
|
|
||||||
- name: "Phone Location Maximum Temperature"
|
|
||||||
unique_id: "phone_max_temp"
|
|
||||||
value_template: '{{value_json.daily.temperature_2m_max[0]}}'
|
|
||||||
unit_of_measurement: '°F'
|
|
||||||
device_class: temperature
|
|
||||||
|
|
||||||
monitor_docker:
|
monitor_docker:
|
||||||
- name: Docker
|
- name: Docker
|
||||||
containers:
|
containers:
|
||||||
- cloudflared-cloudflared-1
|
|
||||||
- gitea-db-1
|
|
||||||
- gitea-server-1
|
|
||||||
- glances
|
- glances
|
||||||
- habridge
|
- habridge
|
||||||
- homeassistant
|
- homeassistant
|
||||||
- nextcloud-app-1
|
- nextcloud-app-1
|
||||||
- nextcloud-db-1
|
- nextcloud-db-1
|
||||||
- nextcloud-redis-1
|
- nextcloud-redis-1
|
||||||
- nginx-app-1
|
|
||||||
- portainer
|
- portainer
|
||||||
- syncthing
|
- syncthing
|
||||||
rename:
|
rename:
|
||||||
cloudflared-cloudflared-1: 'Cloudflared'
|
|
||||||
gitea-db-1: 'Gitea Database'
|
|
||||||
gitea-server-1: 'Gitea Server'
|
|
||||||
glances: 'Glances'
|
glances: 'Glances'
|
||||||
habridge: 'Home Assistant Bridge'
|
habridge: 'Home Assistant Bridge'
|
||||||
homeassistant: 'Home Assistant'
|
homeassistant: 'Home Assistant'
|
||||||
nextcloud-app-1: 'Nextcloud Server'
|
nextcloud-app-1: 'Nextcloud Server'
|
||||||
nextcloud-db-1: 'Nextcloud Database'
|
nextcloud-db-1: 'Nextcloud Database'
|
||||||
nextcloud-redis-1: 'Nextcloud Redis'
|
nextcloud-redis-1: 'Nextcloud Redis'
|
||||||
nginx-app-1: 'Nginx Proxy Manager'
|
|
||||||
portainer: 'Portainer'
|
portainer: 'Portainer'
|
||||||
syncthing: 'Syncthing'
|
syncthing: 'Syncthing'
|
||||||
monitored_conditions:
|
monitored_conditions:
|
||||||
|
|||||||
@@ -42,3 +42,98 @@ general_notificatioon:
|
|||||||
alias: General Notification
|
alias: General Notification
|
||||||
description: ''
|
description: ''
|
||||||
icon: mdi:bell-badge
|
icon: mdi:bell-badge
|
||||||
|
get_cal_data:
|
||||||
|
sequence:
|
||||||
|
- action: calendar.get_events
|
||||||
|
metadata: {}
|
||||||
|
data:
|
||||||
|
duration:
|
||||||
|
hours: 96
|
||||||
|
minutes: 0
|
||||||
|
seconds: 0
|
||||||
|
response_variable: Events
|
||||||
|
target:
|
||||||
|
entity_id: calendar.szumkoal_gmail_com
|
||||||
|
alias: Get Cal Data
|
||||||
|
description: ''
|
||||||
|
parse_morning_weather:
|
||||||
|
sequence:
|
||||||
|
- variables:
|
||||||
|
high: '{{ state_attr(''sensor.daily_forecast'', ''temperature_2m_max'')[0] }}'
|
||||||
|
low: '{{ state_attr(''sensor.daily_forecast'', ''temperature_2m_min'')[0] }}'
|
||||||
|
temp_unit: '{{ state_attr(''sensor.units'', ''temperature_2m'') }}'
|
||||||
|
condition: "{% set code = state_attr('sensor.daily_forecast', 'weather_code')[0]
|
||||||
|
| int %} {% set mapper = {\n 0: \"Clear sky\",\n 1: \"Mainly clear\",\n
|
||||||
|
\ 2: \"Partly cloudy\",\n 3: \"Overcast\",\n 45: \"Fog\",\n 48: \"Depositing
|
||||||
|
rime fog\",\n 51: \"Drizzle - Light intensity\",\n 53: \"Drizzle - Moderate
|
||||||
|
intensity\",\n 55: \"Drizzle - Dense intensity\",\n 56: \"Freezing Drizzle
|
||||||
|
- Light intensity\",\n 57: \"Freezing Drizzle - Dense intensity\",\n 61:
|
||||||
|
\"Rain - Slight intensity\",\n 63: \"Rain - Moderate intensity\",\n 65:
|
||||||
|
\"Rain - Heavy intensity\",\n 66: \"Freezing Rain - Light intensity\",\n
|
||||||
|
\ 67: \"Freezing Rain - Heavy intensity\",\n 71: \"Snow fall - Slight intensity\",\n
|
||||||
|
\ 73: \"Snow fall - Moderate intensity\",\n 75: \"Snow fall - Heavy intensity\",\n
|
||||||
|
\ 77: \"Snow grains\",\n 80: \"Rain showers - Slight intensity\",\n 81:
|
||||||
|
\"Rain showers - Moderate intensity\",\n 82: \"Rain showers - Violent intensity\",\n
|
||||||
|
\ 85: \"Snow showers - Slight intensity\",\n 86: \"Snow showers - Heavy intensity\",\n
|
||||||
|
\ 95: \"Thunderstorm - Slight intensity\",\n 96: \"Thunderstorm with slight
|
||||||
|
hail\",\n 99: \"Thunderstorm with heavy hail\"\n } %}\n {{ mapper.get(code,
|
||||||
|
\"Not Availible\") }}\n"
|
||||||
|
current_temp: '{{ state_attr(''sensor.current_weather'', ''apparent_temperature'')
|
||||||
|
}}'
|
||||||
|
alias: Parse_Morning_Weather
|
||||||
|
description: ''
|
||||||
|
parse_current_weather:
|
||||||
|
sequence:
|
||||||
|
- variables:
|
||||||
|
time: '{{ state_attr(''sensor.current_weather'', ''time'') | as_timestamp()
|
||||||
|
| timestamp_custom(''%B %d, %Y, %I:%M %p'') }}'
|
||||||
|
temp: '{{ state_attr(''sensor.current_weather'', ''temperature_2m'') }}'
|
||||||
|
apparent_temp: '{{ state_attr(''sensor.current_weather'', ''apparent_temperature'')
|
||||||
|
}}'
|
||||||
|
precip: '{{ state_attr(''sensor.current_weather'', ''precipitation'') }}'
|
||||||
|
weather_code: "{% set code = state_attr('sensor.current_weather', 'weather_code')
|
||||||
|
| int %} {% set mapper = {\n 0: \"Clear sky\",\n 1: \"Mainly clear\",\n
|
||||||
|
\ 2: \"Partly cloudy\",\n 3: \"Overcast\",\n 45: \"Fog\",\n 48: \"Depositing
|
||||||
|
rime fog\",\n 51: \"Drizzle - Light intensity\",\n 53: \"Drizzle - Moderate
|
||||||
|
intensity\",\n 55: \"Drizzle - Dense intensity\",\n 56: \"Freezing Drizzle
|
||||||
|
- Light intensity\",\n 57: \"Freezing Drizzle - Dense intensity\",\n 61:
|
||||||
|
\"Rain - Slight intensity\",\n 63: \"Rain - Moderate intensity\",\n 65:
|
||||||
|
\"Rain - Heavy intensity\",\n 66: \"Freezing Rain - Light intensity\",\n
|
||||||
|
\ 67: \"Freezing Rain - Heavy intensity\",\n 71: \"Snow fall - Slight intensity\",\n
|
||||||
|
\ 73: \"Snow fall - Moderate intensity\",\n 75: \"Snow fall - Heavy intensity\",\n
|
||||||
|
\ 77: \"Snow grains\",\n 80: \"Rain showers - Slight intensity\",\n 81:
|
||||||
|
\"Rain showers - Moderate intensity\",\n 82: \"Rain showers - Violent intensity\",\n
|
||||||
|
\ 85: \"Snow showers - Slight intensity\",\n 86: \"Snow showers - Heavy intensity\",\n
|
||||||
|
\ 95: \"Thunderstorm - Slight intensity\",\n 96: \"Thunderstorm with slight
|
||||||
|
hail\",\n 99: \"Thunderstorm with heavy hail\"\n } %}\n {{ mapper.get(code,
|
||||||
|
\"Not Availible\") }}\n"
|
||||||
|
daytime: '{{ state_attr(''sensor.current_weather'', ''is_day'') }}'
|
||||||
|
alias: Parse Current Weather
|
||||||
|
description: ''
|
||||||
|
parse_hourly_weather:
|
||||||
|
sequence:
|
||||||
|
- variables:
|
||||||
|
iso_time: '{{ state_attr(''sensor.hourly_forecast'', ''time'') }}'
|
||||||
|
temp: '{{ state_attr(''sensor.hourly_forecast'', ''temperature_2m'') }}'
|
||||||
|
precip_prob: '{{ state_attr(''sensor.hourly_forecast'', ''precipitation_probability'')
|
||||||
|
}}'
|
||||||
|
weather_code: '{{ state_attr(''sensor.hourly_forecast'', ''weather_code'') }}'
|
||||||
|
precip: '{{ state_attr(''sensor.hourly_forecast'', ''precipitation'') }}'
|
||||||
|
count: 0
|
||||||
|
formatted_time: []
|
||||||
|
- variables:
|
||||||
|
test: '{% set count = count +1 %}'
|
||||||
|
formatted_time: "\n{% set result = [] %} \n{% for i in range(iso_time | length)
|
||||||
|
%}\n {% set formatted = iso_time[i] | as_timestamp() | timestamp_custom('%B
|
||||||
|
%d, %Y, %I:%M %p') %}\n {% set result = result + [iso_time[i] | as_timestamp()
|
||||||
|
| timestamp_custom('%B %d, %Y, %I:%M %p')] %}\n{% endfor %} \n{{ result }}\n
|
||||||
|
\ \n"
|
||||||
|
- action: notify.persistent_notification
|
||||||
|
metadata: {}
|
||||||
|
data:
|
||||||
|
title: test
|
||||||
|
message: '{{iso_time}}
|
||||||
|
|
||||||
|
{{ formatted_time }}'
|
||||||
|
alias: Parse Hourly Weather
|
||||||
|
description: ''
|
||||||
|
|||||||
@@ -35,9 +35,9 @@ services:
|
|||||||
- MYSQL_USER=${MYSQL_USER}
|
- MYSQL_USER=${MYSQL_USER}
|
||||||
- MYSQL_HOST=db
|
- MYSQL_HOST=db
|
||||||
- REDIS_HOST=redis
|
- REDIS_HOST=redis
|
||||||
- OVERWRITECLIURL=${OVERWRITECLIURL}
|
# - OVERWRITECLIURL=${OVERWRITECLIURL}
|
||||||
- OVERWRITEPROTOCOL=${OVERWRITEPROTOCOL}
|
# - OVERWRITEPROTOCOL=${OVERWRITEPROTOCOL}
|
||||||
- OVERWRITEHOST=${OVERWRITEHOST}
|
# - OVERWRITEHOST=${OVERWRITEHOST}
|
||||||
depends_on:
|
depends_on:
|
||||||
- db
|
- db
|
||||||
- redis
|
- redis
|
||||||
|
|||||||
Reference in New Issue
Block a user