533 lines
47 KiB
YAML
533 lines
47 KiB
YAML
>
|
|
{# Nightly Briefing #}
|
|
{%- macro getReport() -%}
|
|
<p>
|
|
"Good evening. It is {{ now().strftime("%I:%M %p") }}. "
|
|
{{ [
|
|
"Before the day comes to a close, here are my thoughts. Just kidding, I am a computer, I do not think. ",
|
|
"The day grows short, let us gather around the campfire for an epic tale of things to come. ",
|
|
"I am tired after a long day of doing absolutely nothing, but I am still here to give you the latest and greatest uselessness! ",
|
|
"My programmer decided that I should say something interesting here, and then he realized that he is not interesting. ",
|
|
] | random }}
|
|
</p>
|
|
<p>
|
|
{% if is_state('input_boolean.tornado_alarm','on') %}
|
|
"We are under a tornado warning. If you are not already in shelter, you should be. Get on it! "
|
|
{% elif is_state('input_boolean.tornado_watch','on') %}
|
|
{{ [
|
|
"There is currently a tornado watch active. Please keep an eye on the sky and your local weather reports. ",
|
|
"We are currently under a tornado watch. This means the possibility exists for a tornado to form. Be prepared, and be safe! ",
|
|
"The National Weather Service has issued a tornado watch for our area. Be prepared to take shelter if a warning is issued! ",
|
|
] | random }}
|
|
{% endif %}
|
|
{% if states('sensor.weatheralerts_active_alerts') > '0' %}
|
|
"Currently there are weather alerts active. The total number of alerts is {{ states('sensor.weather_alerts_active_corrected') }}. They are as follows. "
|
|
{{ states('sensor.weather_alert_string') }}.
|
|
{% endif %}
|
|
{% if is_state('binary_sensor.lightning_warning','on') %}
|
|
{% set ltgdist = (states('sensor.blitzortung_lightning_distance') | int) / 1.609 | round %}
|
|
{{ [
|
|
"There are reports of lightning in the area, please stay safe. ",
|
|
"My sensors detect the presence of lightning nearby, so you should prepare to take shelter if needed. ",
|
|
"A little birdy told me there is lightning nearby. His feathers were all sticking up, I have no idea why. ",
|
|
"Please exercise caution, as there is lightning in the area. ",
|
|
"That flashing in the sky is not interstellar warfare, it is simply lightning. But you should still be careful outside. ",
|
|
] | random }}
|
|
"The nearest lightning strike is {{ ltgdist }} miles away. "
|
|
{% endif %}
|
|
{% if (states('sensor.kdfi_visibility') | int ) < 3 %}
|
|
"I know it is night time, but just in case, "
|
|
{{ [
|
|
"It is foggy outside, please exercise caution when driving. ",
|
|
"The visibility outside is quite low. If you will be driving soon, please be cautious. ",
|
|
"It is pea soup outside right now, and that is just as awful to drive in as it is to eat. Be careful! ",
|
|
"Look out the window. Do you notice that you cannot see anything? Bear that in mind if you intend to drive any time soon. ",
|
|
"Be advised, it is very difficult to see outside right now. Drive safely. "
|
|
] | random }}
|
|
{% endif %}
|
|
</p>
|
|
<p>
|
|
{% if is_state('input_boolean.tony_streaming_today','on') %}
|
|
{{ [
|
|
"Tony will be pretending to be a real content creator tonight. ",
|
|
"Tony will be doing his best to defeat his impostor syndrome tonight. ",
|
|
"Tony will be playing video games and yelling into a microphone tonight. ",
|
|
"Tony will be scraping out the nickels and dimes tonight for the sake of entertainment. ",
|
|
"Tony is not really all that funny, but tonight he will present himself to a crowd of questionable individuals who seem to think that he is. "
|
|
] | random }} The studio is scheduled to go online at {{ (state_attr('input_datetime.tony_streaming_start_time','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% endif %}
|
|
{% if is_state('binary_sensor.kallen_school_tomorrow','on') %}
|
|
{% if is_state('binary_sensor.kallen_band_tomorrow','on') %}
|
|
"Collin has school tomorrow, and there will be band practice in the morning at {{ as_timestamp(strptime(state_attr('calendar.kallen_school_days','start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom("%I:%M %p") }}. "
|
|
{% else %}
|
|
"Collin has school tomorrow at {{ as_timestamp(strptime(state_attr('calendar.kallen_school_days','start_time'), '%Y-%m-%d %H:%M:%S')) | timestamp_custom("%I:%M %p") }}. "
|
|
{% endif %}
|
|
{% else %}
|
|
"Collin does not have school tomorrow. "
|
|
{% endif %}
|
|
{% set start = (state_attr('binary_sensor.tina_work_tomorrow','start_timestamp') | int) // 1000 %}
|
|
{% set tmrw = (as_timestamp(states('sensor.date')) + 86400) | int %}
|
|
{% set diff = (start - tmrw) %}
|
|
{% if is_state('input_boolean.work_today','on') %}
|
|
{{ [
|
|
"Tina is still at work right now, ",
|
|
"Tina has not yet been released from work, ",
|
|
"Tina is still at the thankless idiot scape known as work, ",
|
|
"Tina is still consumed by the gods of capitalism, ",
|
|
] | random }} she will be done at approximately {{ (state_attr('input_datetime.tina_workday_end','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}.
|
|
{% elif is_state('binary_sensor.tina_work_tomorrow','on') %}
|
|
{{ [
|
|
"Tina must go and please the food gods tomorrow ",
|
|
"Tomorrow, Tina must go and entertain the gremlins known as her customers and coworkers ",
|
|
"Tomorrow, Tina will be owned by our lovely lord and savior, capitalism, ",
|
|
] | random }} at {{ diff | timestamp_custom('%H:%M %p',false) }}. "
|
|
{% else %}
|
|
{{ [
|
|
"Tina seems to have been granted a reprieve from her endless torture tomorrow. ",
|
|
"The powers that be have decided that Tina deserves a break from work tomorrow. ",
|
|
"Tina has been granted time off from the hellscape of work tomorrow. ",
|
|
"Tina will not be attending the gathering of tormented souls known as work tomorrow. ",
|
|
"The scheduling gods have decided that Tina's services will not be required tomorrow. "
|
|
"Tina gets a break tomorrow from grinding it out for the gods of capitalism. ",
|
|
"Tina will not be at the thankless idiot scape known as work tomorrow. ",
|
|
] | random }}
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{% if is_state('input_boolean.sports_updates','on') %}
|
|
{% if is_state('sensor.michigan_wolverines','PRE') %}
|
|
{% set date = state_attr('sensor.michigan_wolverines','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Michigan Wolverines will be playing today against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} at {{ state_attr('sensor.michigan_wolverines','venue') }}. "
|
|
"Kickoff will be at {{ state_attr('sensor.michigan_wolverines','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.ohio_state_buckeyes','PRE') %}
|
|
{% if state_attr('sensor.ohio_state_buckeyes','opponent_abbr') not in ['MICH'] %}
|
|
{% set date = state_attr('sensor.ohio_state_buckeyes','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Ohio State Buckeyes will be playing today against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} at {{ state_attr('sensor.ohio_state_buckeyes','venue') }}. "
|
|
"Kickoff will be at {{ state_attr('sensor.ohio_state_buckeyes','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.toledo_rockets','PRE') %}
|
|
{% if state_attr('sensor.toledo_rockets','opponent_abbr') not in ['OSU','MICH'] %}
|
|
{% set date = state_attr('sensor.toledo_rockets','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Toledo Rockets will be playing today against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} at {{ state_attr('sensor.toledo_rockets','venue') }}. "
|
|
"Kickoff will be at {{ state_attr('sensor.toledo_rockets','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.minnesota_vikings','PRE') %}
|
|
{% set date = state_attr('sensor.minnesota_vikings','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Minnesota Vikings will be playing today against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} at {{ state_attr('sensor.minnesota_vikings','venue') }}. "
|
|
"Kickoff will be at {{ state_attr('sensor.minnesota_vikings','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.san_francisco_49ers','PRE') %}
|
|
{% if state_attr('sensor.san_francisco_49ers','opponent_abbr') not in ['MIN'] %}
|
|
{% set date = state_attr('sensor.san_francisco_49ers','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The San Francisco 49ers will be playing today against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} at {{ state_attr('sensor.san_francisco_49ers','venue') }}. "
|
|
"Kickoff will be at {{ state_attr('sensor.san_francisco_49ers','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.cleveland_guardians','PRE') %}
|
|
{% set date = state_attr('sensor.cleveland_guardians','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Cleveland Guardians will be playing today against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} at {{ state_attr('sensor.cleveland_guardians','venue') }}. "
|
|
"First pitch will be at {{ state_attr('sensor.cleveland_guardians','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.minnesota_twins','PRE') %}
|
|
{% if state_attr('sensor.minnesota_twins','opponent_abbr') not in ['CLE','LAD'] %}
|
|
{% set date = state_attr('sensor.minnesota_twins','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Minnesota Twins will be playing today against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} at {{ state_attr('sensor.minnesota_twins','venue') }}. "
|
|
"First pitch will be at {{ state_attr('sensor.minnesota_twins','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.los_angeles_dodgers','PRE') %}
|
|
{% if state_attr('sensor.los_angeles_dodgers','opponent_abbr') not in ['CLE'] %}
|
|
{% set date = state_attr('sensor.los_angeles_dodgers','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
"The Los Angeles Dodgers will be playing today against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} at {{ state_attr('sensor.los_angeles_dodgers','venue') }}. "
|
|
"First pitch will be at {{ state_attr('sensor.los_angeles_dodgers','date') | as_timestamp | timestamp_custom('%I:%M %p') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{% if is_state('input_boolean.sports_updates','on') %}
|
|
{% if is_state('sensor.michigan_wolverines','POST') %}
|
|
{% set date = state_attr('sensor.michigan_wolverines','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.michigan_wolverines','team_score') | int) > (state_attr('sensor.michigan_wolverines','opponent_score') | int) %}
|
|
"The Michigan Wolverines won their game today against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} by a score of {{ state_attr('sensor.michigan_wolverines','team_score') }} to {{ state_attr('sensor.michigan_wolverines','opponent_score') }}. "
|
|
{% else %}
|
|
"The Michigan Wolverines lost their game today against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} by a score of {{ state_attr('sensor.michigan_wolverines','opponent_score') }} to {{ state_attr('sensor.michigan_wolverines','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.michigan_wolverines','team_record') | replace("-"," and ") }} on the season. "
|
|
{% elif yday == date %}
|
|
{% if (state_attr('sensor.michigan_wolverines','team_score') | int) > (state_attr('sensor.michigan_wolverines','opponent_score') | int) %}
|
|
"The Michigan Wolverines won their game yesterday against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} by a score of {{ state_attr('sensor.michigan_wolverines','team_score') }} to {{ state_attr('sensor.michigan_wolverines','opponent_score') }}. "
|
|
{% else %}
|
|
"The Michigan Wolverines lost their game yesterday against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} by a score of {{ state_attr('sensor.michigan_wolverines','opponent_score') }} to {{ state_attr('sensor.michigan_wolverines','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.michigan_wolverines','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% elif is_state('sensor.michigan_wolverines','IN') %}
|
|
{% if (state_attr('sensor.michigan_wolverines','team_score') | int) > (state_attr('sensor.michigan_wolverines','opponent_score') | int) %}
|
|
"The Michigan Wolverines are currently winning their game against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} with a score of {{ state_attr('sensor.michigan_wolverines','team_score') }} to {{ state_attr('sensor.michigan_wolverines','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.michigan_wolverines','team_score') | int) == (state_attr('sensor.michigan_wolverines','opponent_score') | int) %}
|
|
"The Michigan Wolverines are currently tied in their game against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} with a score of {{ state_attr('sensor.michigan_wolverines','team_score') }} to {{ state_attr('sensor.michigan_wolverines','opponent_score') }}. "
|
|
{% else %}
|
|
"The Michigan Wolverines are currently losing their game against the {{ state_attr('sensor.michigan_wolverines','opponent_name') }} with a score of {{ state_attr('sensor.michigan_wolverines','opponent_score') }} to {{ state_attr('sensor.michigan_wolverines','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.ohio_state_buckeyes','POST') %}
|
|
{% if state_attr('sensor.ohio_state_buckeyes','opponent_abbr') not in ['MICH'] %}
|
|
{% set date = state_attr('sensor.ohio_state_buckeyes','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.ohio_state_buckeyes','team_score') | int) > (state_attr('sensor.ohio_state_buckeyes','opponent_score') | int) %}
|
|
"The Ohio State Buckeyes won their game today against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} by a score of {{ state_attr('sensor.ohio_state_buckeyes','team_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }}. "
|
|
{% else %}
|
|
"The Ohio State Buckeyes lost their game today against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} by a score of {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.ohio_state_buckeyes','team_record') | replace("-"," and ") }} on the season. "
|
|
{% elif yday == date %}
|
|
{% if (state_attr('sensor.ohio_state_buckeyes','team_score') | int) > (state_attr('sensor.ohio_state_buckeyes','opponent_score') | int) %}
|
|
"The Ohio State Buckeyes won their game yesterday against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} by a score of {{ state_attr('sensor.ohio_state_buckeyes','team_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }}. "
|
|
{% else %}
|
|
"The Ohio State Buckeyes lost their game yesterday against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} by a score of {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.ohio_state_buckeyes','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% elif is_state('sensor.ohio_state_buckeyes','IN') %}
|
|
{% if state_attr('sensor.ohio_state_buckeyes','opponent_abbr') not in ['MICH'] %}
|
|
{% if (state_attr('sensor.ohio_state_buckeyes','team_score') | int) > (state_attr('sensor.ohio_state_buckeyes','opponent_score') | int) %}
|
|
"The Ohio State Buckeyes are currently winning their game against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} with a score of {{ state_attr('sensor.ohio_state_buckeyes','team_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.ohio_state_buckeyes','team_score') | int) == (state_attr('sensor.ohio_state_buckeyes','opponent_score') | int) %}
|
|
"The Ohio State Buckeyes are currently tied in their game against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} with a score of {{ state_attr('sensor.ohio_state_buckeyes','team_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }}. "
|
|
{% else %}
|
|
"The Ohio State Buckeyes are currently losing their game against the {{ state_attr('sensor.ohio_state_buckeyes','opponent_name') }} with a score of {{ state_attr('sensor.ohio_state_buckeyes','opponent_score') }} to {{ state_attr('sensor.ohio_state_buckeyes','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.toledo_rockets','POST') %}
|
|
{% if state_attr('sensor.toledo_rockets','opponent_abbr') not in ['OSU','MICH'] %}
|
|
{% set date = state_attr('sensor.toledo_rockets','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.toledo_rockets','team_score') | int) > (state_attr('sensor.toledo_rockets','opponent_score') | int) %}
|
|
"The Toledo Rockets won their game today against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} by a score of {{ state_attr('sensor.toledo_rockets','team_score') }} to {{ state_attr('sensor.toledo_rockets','opponent_score') }}. "
|
|
{% else %}
|
|
"The Toledo Rockets lost their game today against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} by a score of {{ state_attr('sensor.toledo_rockets','opponent_score') }} to {{ state_attr('sensor.toledo_rockets','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.toledo_rockets','team_record') | replace("-"," and ") }} on the season. "
|
|
{% elif yday == date %}
|
|
{% if (state_attr('sensor.toledo_rockets','team_score') | int) > (state_attr('sensor.toledo_rockets','opponent_score') | int) %}
|
|
"The Toledo Rockets won their game yesterday against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} by a score of {{ state_attr('sensor.toledo_rockets','team_score') }} to {{ state_attr('sensor.toledo_rockets','opponent_score') }}. "
|
|
{% else %}
|
|
"The Toledo Rockets lost their game yesterday against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} by a score of {{ state_attr('sensor.toledo_rockets','opponent_score') }} to {{ state_attr('sensor.toledo_rockets','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.toledo_rockets','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% elif is_state('sensor.toledo_rockets','IN') %}
|
|
{% if state_attr('sensor.toledo_rockets','opponent_abbr') not in ['OSU','MICH'] %}
|
|
{% if (state_attr('sensor.toledo_rockets','team_score') | int) > (state_attr('sensor.toledo_rockets','opponent_score') | int) %}
|
|
"The Toledo Rockets are currently winning their game against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} with a score of {{ state_attr('sensor.toledo_rockets','team_score') }} to {{ state_attr('sensor.toledo_rockets','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.toledo_rockets','team_score') | int) == (state_attr('sensor.toledo_rockets','opponent_score') | int) %}
|
|
"The Toledo Rockets are currently tied in their game against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} with a score of {{ state_attr('sensor.toledo_rockets','team_score') }} to {{ state_attr('sensor.toledo_rockets','opponent_score') }}. "
|
|
{% else %}
|
|
"The Toledo Rockets are currently losing their game against the {{ state_attr('sensor.toledo_rockets','opponent_name') }} with a score of {{ state_attr('sensor.toledo_rockets','opponent_score') }} to {{ state_attr('sensor.toledo_rockets','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.minnesota_vikings','POST') %}
|
|
{% set date = state_attr('sensor.minnesota_vikings','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.minnesota_vikings','team_score') | int) > (state_attr('sensor.minnesota_vikings','opponent_score') | int) %}
|
|
"The Minnesota Vikings won their game today against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.minnesota_vikings','team_score') | int) == state_attr('sensor.minnesota_vikings','opponent_score') | int %}
|
|
"The Minnesota Vikings tied in their game today against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% else %}
|
|
"The Minnesota Vikings lost their game today against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','opponent_score') }} to {{ state_attr('sensor.minnesota_vikings','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.minnesota_vikings','team_record') | replace("-"," and ") }} on the season. "
|
|
{% elif yday == date %}
|
|
{% if (state_attr('sensor.minnesota_vikings','team_score') | int) > (state_attr('sensor.minnesota_vikings','opponent_score') | int) %}
|
|
"The Minnesota Vikings won their game yesterday against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.minnesota_vikings','team_score') | int) == state_attr('sensor.minnesota_vikings','opponent_score') | int %}
|
|
"The Minnesota Vikings tied in their game yesterday against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% else %}
|
|
"The Minnesota Vikings lost their game yesterday against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_vikings','opponent_score') }} to {{ state_attr('sensor.minnesota_vikings','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.minnesota_vikings','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% elif is_state('sensor.minnesota_vikings','IN') %}
|
|
{% if (state_attr('sensor.minnesota_vikings','team_score') | int) > (state_attr('sensor.minnesota_vikings','opponent_score') | int) %}
|
|
"The Minnesota Vikings are currently winning their game against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.minnesota_vikings','team_score') | int) == (state_attr('sensor.minnesota_vikings','opponent_score') | int) %}
|
|
"The Minnesota Vikings are currently tied in their game against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_vikings','team_score') }} to {{ state_attr('sensor.minnesota_vikings','opponent_score') }}. "
|
|
{% else %}
|
|
"The Minnesota Vikings are currently losing their game against the {{ state_attr('sensor.minnesota_vikings','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_vikings','opponent_score') }} to {{ state_attr('sensor.minnesota_vikings','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.san_francisco_49ers','POST') %}
|
|
{% if state_attr('sensor.san_francisco_49ers','opponent_abbr') not in ['MIN'] %}
|
|
{% set date = state_attr('sensor.san_francisco_49ers','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.san_francisco_49ers','team_score') | int) > (state_attr('sensor.san_francisco_49ers','opponent_score') | int) %}
|
|
"The San Francisco 49ers won their game today against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.san_francisco_49ers','team_score') | int) == state_attr('sensor.san_francisco_49ers','opponent_score') | int %}
|
|
"The San Francisco 49ers tied in their game today against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% else %}
|
|
"The San Francisco 49ers lost their game today against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','opponent_score') }} to {{ state_attr('sensor.san_francisco_49ers','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.san_francisco_49ers','team_record') | replace("-"," and ") }} on the season. "
|
|
{% elif yday == date %}
|
|
{% if (state_attr('sensor.san_francisco_49ers','team_score') | int) > (state_attr('sensor.san_francisco_49ers','opponent_score') | int) %}
|
|
"The San Francisco 49ers won their game yesterday against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.san_francisco_49ers','team_score') | int) == state_attr('sensor.san_francisco_49ers','opponent_score') | int %}
|
|
"The San Francisco 49ers tied in their game yesterday against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% else %}
|
|
"The San Francisco 49ers lost their game yesterday against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} by a score of {{ state_attr('sensor.san_francisco_49ers','opponent_score') }} to {{ state_attr('sensor.san_francisco_49ers','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.san_francisco_49ers','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% elif is_state('sensor.san_francisco_49ers','IN') %}
|
|
{% if state_attr('sensor.san_francisco_49ers','opponent_abbr') not in ['MIN'] %}
|
|
{% if (state_attr('sensor.san_francisco_49ers','team_score') | int) > (state_attr('sensor.san_francisco_49ers','opponent_score') | int) %}
|
|
"The San Francisco 49ers are currently winning their game against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} with a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.san_francisco_49ers','team_score') | int) == (state_attr('sensor.san_francisco_49ers','opponent_score') | int) %}
|
|
"The San Francisco 49ers are currently tied in their game against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} with a score of {{ state_attr('sensor.san_francisco_49ers','team_score') }} to {{ state_attr('sensor.san_francisco_49ers','opponent_score') }}. "
|
|
{% else %}
|
|
"The San Francisco 49ers are currently losing their game against the {{ state_attr('sensor.san_francisco_49ers','opponent_name') }} with a score of {{ state_attr('sensor.san_francisco_49ers','opponent_score') }} to {{ state_attr('sensor.san_francisco_49ers','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.cleveland_guardians','POST') %}
|
|
{% set date = state_attr('sensor.cleveland_guardians','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.cleveland_guardians','team_score') | int) > (state_attr('sensor.cleveland_guardians','opponent_score') | int) %}
|
|
"The Cleveland Guardians won their game today against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} by a score of {{ state_attr('sensor.cleveland_guardians','team_score') }} to {{ state_attr('sensor.cleveland_guardians','opponent_score') }}. "
|
|
{% else %}
|
|
"The Cleveland Guardians lost their game today against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} by a score of {{ state_attr('sensor.cleveland_guardians','opponent_score') }} to {{ state_attr('sensor.cleveland_guardians','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.cleveland_guardians','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% elif is_state('sensor.cleveland_guardians','IN') %}
|
|
{% if (state_attr('sensor.cleveland_guardians','team_score') | int) > (state_attr('sensor.cleveland_guardians','opponent_score') | int) %}
|
|
"The Cleveland Guardians are currently winning their game against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} with a score of {{ state_attr('sensor.cleveland_guardians','team_score') }} to {{ state_attr('sensor.cleveland_guardians','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.cleveland_guardians','team_score') | int) == (state_attr('sensor.cleveland_guardians','opponent_score') | int) %}
|
|
"The Cleveland Guardians are currently tied in their game against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} with a score of {{ state_attr('sensor.cleveland_guardians','team_score') }} to {{ state_attr('sensor.cleveland_guardians','opponent_score') }}. "
|
|
{% else %}
|
|
"The Cleveland Guardians are currently losing their game against the {{ state_attr('sensor.cleveland_guardians','opponent_name') }} with a score of {{ state_attr('sensor.cleveland_guardians','opponent_score') }} to {{ state_attr('sensor.cleveland_guardians','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.minnesota_twins','POST') %}
|
|
{% if state_attr('sensor.minnesota_twins','opponent_abbr') not in ['CLE','LAD'] %}
|
|
{% set date = state_attr('sensor.minnesota_twins','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.minnesota_twins','team_score') | int) > (state_attr('sensor.minnesota_twins','opponent_score') | int) %}
|
|
"The Minnesota Twins won their game today against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_twins','team_score') }} to {{ state_attr('sensor.minnesota_twins','opponent_score') }}. "
|
|
{% else %}
|
|
"The Minnesota Twins lost their game today against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} by a score of {{ state_attr('sensor.minnesota_twins','opponent_score') }} to {{ state_attr('sensor.minnesota_twins','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.minnesota_twins','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% elif is_state('sensor.minnesota_twins','IN') %}
|
|
{% if state_attr('sensor.minnesota_twins','opponent_abbr') not in ['CLE','LAD'] %}
|
|
{% if (state_attr('sensor.minnesota_twins','team_score') | int) > (state_attr('sensor.minnesota_twins','opponent_score') | int) %}
|
|
"The Minnesota Twins are currently winning their game against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_twins','team_score') }} to {{ state_attr('sensor.minnesota_twins','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.minnesota_twins','team_score') | int) == (state_attr('sensor.minnesota_twins','opponent_score') | int) %}
|
|
"The Minnesota Twins are currently tied in their game against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_twins','team_score') }} to {{ state_attr('sensor.minnesota_twins','opponent_score') }}. "
|
|
{% else %}
|
|
"The Minnesota Twins are currently losing their game against the {{ state_attr('sensor.minnesota_twins','opponent_name') }} with a score of {{ state_attr('sensor.minnesota_twins','opponent_score') }} to {{ state_attr('sensor.minnesota_twins','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('sensor.los_angeles_dodgers','POST') %}
|
|
{% if state_attr('sensor.los_angeles_dodgers','opponent_abbr') not in ['MIN'] %}
|
|
{% set date = state_attr('sensor.los_angeles_dodgers','date') | as_timestamp | timestamp_custom('%m-%d') %}
|
|
{% set yday = (as_timestamp(now()) - (24*3600)) | timestamp_custom('%m-%d') %}
|
|
{% if date == now().strftime('%m-%d') %}
|
|
{% if (state_attr('sensor.los_angeles_dodgers','team_score') | int) > (state_attr('sensor.los_angeles_dodgers','opponent_score') | int) %}
|
|
"The Los Angeles Dodgers won their game today against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} by a score of {{ state_attr('sensor.los_angeles_dodgers','team_score') }} to {{ state_attr('sensor.los_angeles_dodgers','opponent_score') }}. "
|
|
{% else %}
|
|
"The Los Angeles Dodgers lost their game today against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} by a score of {{ state_attr('sensor.los_angeles_dodgers','opponent_score') }} to {{ state_attr('sensor.los_angeles_dodgers','team_score') }}. "
|
|
{% endif %}
|
|
"This brings their record to {{ state_attr('sensor.los_angeles_dodgers','team_record') | replace("-"," and ") }} on the season. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% elif is_state('sensor.los_angeles_dodgers','IN') %}
|
|
{% if state_attr('sensor.los_angeles_dodgers','opponent_abbr') not in ['MIN'] %}
|
|
{% if (state_attr('sensor.los_angeles_dodgers','team_score') | int) > (state_attr('sensor.los_angeles_dodgers','opponent_score') | int) %}
|
|
"The Los Angeles Dodgers are currently winning their game against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} with a score of {{ state_attr('sensor.los_angeles_dodgers','team_score') }} to {{ state_attr('sensor.los_angeles_dodgers','opponent_score') }}. "
|
|
{% elif (state_attr('sensor.los_angeles_dodgers','team_score') | int) == (state_attr('sensor.los_angeles_dodgers','opponent_score') | int) %}
|
|
"The Los Angeles Dodgers are currently tied in their game against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} with a score of {{ state_attr('sensor.los_angeles_dodgers','team_score') }} to {{ state_attr('sensor.los_angeles_dodgers','opponent_score') }}. "
|
|
{% else %}
|
|
"The Los Angeles Dodgers are currently losing their game against the {{ state_attr('sensor.los_angeles_dodgers','opponent_name') }} with a score of {{ state_attr('sensor.los_angeles_dodgers','opponent_score') }} to {{ state_attr('sensor.los_angeles_dodgers','team_score') }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{% if states('input_select.scheduled_climate_mode_master_bedroom_aircon') != 'N/A' or states('input_select.scheduled_climate_mode_master_bedroom_fan') != 'N/A' %}
|
|
{{ [
|
|
"Tonight in master bedroom climate news, ",
|
|
"In the master bedroom, we have the following schedule to share. ",
|
|
"Bedroom climate scheduling will be as follows. ",
|
|
] | random }}
|
|
{% if states('input_select.scheduled_climate_mode_master_bedroom_aircon') != 'N/A' %}
|
|
{% if is_state('climate.master_bedroom_aircon','fan_only') %}
|
|
"The master bedroom air conditioner is already running in fan only mode. "
|
|
{% elif states('climate.master_bedroom_aircon') not in ['off','unknown','unavailable'] %}
|
|
"The master bedroom air conditioner is already running in {{ states('climate.master_bedroom_aircon') }} mode. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_master_bedroom_aircon','AC') and is_state('input_boolean.hot_day','on') %}
|
|
"Today was a hot day, so the master bedroom air conditioner will activate cooling mode a bit earlier tonight at {{ (state_attr('input_datetime.master_bedroom_cooling','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_master_bedroom_aircon','AC') %}
|
|
"The master bedroom air conditioner will activate cooling mode at {{ (state_attr('input_datetime.master_bedroom_cooling','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_master_bedroom_aircon','Fan') %}
|
|
"The master bedroom air conditioner will activate fan only mode at {{ (state_attr('input_datetime.master_bedroom_cooling','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if states('input_select.scheduled_climate_mode_master_bedroom_fan') != 'N/A' %}
|
|
{% if is_state('fan.master_bedroom_fan','on') %}
|
|
"The master bedroom fan is already running. "
|
|
{% else %}
|
|
"The master bedroom fan will activate at {{ (state_attr('input_datetime.master_bedroom_fan','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if is_state('input_boolean.kallen_overnight','off') %}
|
|
{% if states('input_select.scheduled_climate_mode_kallen_fan') != 'N/A' %}
|
|
{{ [
|
|
"In Collin's room, ",
|
|
"For Collin's climate schedule, we have the following. "
|
|
] | random }}
|
|
{% if is_state('fan.kallen_bedroom_fan','on') %}
|
|
"Collin's fan is already running. "
|
|
{% elif is_state('input_boolean.white_noise_kallen_bedroom','on') %}
|
|
"Collin's white noise generator is already running. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_kallen_fan','Fan') %}
|
|
"Collin's fan will activate at {{ (state_attr('input_datetime.kallen_bedtime','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_kallen_fan','White Noise') %}
|
|
"Collin's white noise generator will activate at {{ (state_attr('input_datetime.kallen_bedtime','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
{% else %}
|
|
"Collin's room will be left alone, as he is spending the night elsewhere tonight. "
|
|
{% endif %}
|
|
{% if states('input_select.scheduled_climate_mode_emma_aircon') != 'N/A' %}
|
|
{{ [
|
|
"In Emma's bedroom, ",
|
|
"For Emma's climate scheduling, "
|
|
] | random }}
|
|
{% if is_state('fan.emma_air_conditioner','on') %}
|
|
"Emma's air conditioner is already running. "
|
|
{% elif is_state('input_boolean.white_noise_emma_bedroom','on') %}
|
|
"Emma's white noise generator is already running. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_emma_aircon','AC') %}
|
|
"Emma's air conditioner will be activated at {{ (state_attr('input_datetime.emma_bedtime','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% elif is_state('input_select.scheduled_climate_mode_emma_aircon','White Noise') %}
|
|
"Emma's white noise generator will activate at {{ (state_attr('input_datetime.emma_bedtime','timestamp') | int | timestamp_custom('%I:%M %p', False)) }}. "
|
|
{% endif %}
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{% if (states('sensor.tonights_low_temp') | int) <= (states('input_number.overnight_low_threshold') | int ) %}
|
|
"It will be very cold tonight, make sure to use extra blankets, wear more clothes, or whatever else will help you stay warm! Additionally, make sure Emma's heater is set high enough!"
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{% set windows = states('sensor.windows_open') %}
|
|
{% set doors = states('sensor.doors_open') %}
|
|
{% if states('sensor.total_faults') > '0' %}
|
|
{% if windows > '0' and doors > '0' %}
|
|
"There are currently {{ states('sensor.windows_open') }} {% if windows == '1' %}window {% else %}windows {% endif %}and {{ states('sensor.doors_open') }} {% if doors == '1' %}door {% else %}doors {% endif %}open. "
|
|
{% else %}
|
|
{% if windows > '0' %}
|
|
"There {% if windows == '1' %}is {% else %}are {% endif %}currently {{ states('sensor.windows_open') }} {% if windows == '1' %}window {% else %}windows {% endif %}open. "
|
|
{% endif %}
|
|
{% if doors > '0' %}
|
|
"There {% if doors == '1' %}is {% else %}are {% endif %}currently {{ states('sensor.doors_open') }} {% if doors == '1' %}door {% else %}doors {% endif %}open. "
|
|
{% endif %}
|
|
{% endif %}
|
|
"You will want to close these before the security system is armed for the night. "
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{{ [
|
|
"For some useless trivia that no one asked for, I present to you the following: ",
|
|
"Since the developer who writes my scripts decided that this was somehow interesting, ",
|
|
"In case you had a burning desire to know, ",
|
|
"Since I know everyone lays awake at night wondering the answer to this question, ",
|
|
] | random }}
|
|
{% if (states('sensor.front_door_opened_today') | int) > 0 %}
|
|
"Today, the front door was opened {{ states('sensor.front_door_opened_today') }} times. "
|
|
{% else %}
|
|
"Today, the front door was never opened at all. Wow, did you people seriously not go anywhere? "
|
|
{% endif %}
|
|
{% if (states('sensor.back_door_opened_today') | int) > 0 %}
|
|
{% if (states('sensor.back_door_opened_today') | int) == 1 %}
|
|
"And in a rare and shocking incident, the back door was also opened today! But only just once. There's no telling what could happen otherwise! "
|
|
{% else %}
|
|
"In what has to be considered a near catastrophic incident, the back door was opened multiple times today! {{ states('sensor.back_door_opened_today') }} times, to be precise! "
|
|
{% endif %}
|
|
{% endif %}
|
|
</p>
|
|
|
|
<p>
|
|
{{ [
|
|
"Here is a random dad joke ",
|
|
"In case you hadn't had enough idiotic humor today, here is a little more ",
|
|
"For further proof that the developer responsible for my existence is an idiot, I present the following joke ",
|
|
] | random }}<break time="1s"/> {{ states('sensor.random_joke') }}
|
|
</p>
|
|
|
|
<p>
|
|
{% if is_state('input_boolean.briefing_extras','on') %}
|
|
"And now we have the following extra information to pass along. {{ states('input_text.briefing_extras') }} "
|
|
{% endif %}
|
|
</p>
|
|
|
|
{%- endmacro -%}
|
|
|
|
{# a macro that removes all newline characters, empty spaces, and returns formatted text #}
|
|
{%- macro cleanup(data) -%}
|
|
{%- for item in data.split("\n") if item | trim != "" -%}
|
|
{{ item | trim }} {% endfor -%}
|
|
{%- endmacro -%}
|
|
|
|
{# a macro to call all macros :) #}
|
|
{%- macro mother_of_all_macros() -%}
|
|
{{ getReport() }}
|
|
{%- endmacro -%}
|
|
|
|
{# Call the macro #}
|
|
{{- cleanup(mother_of_all_macros()) -}} |