Restart Safe - đź”” To-do List Chore Notifications!

Hello Everyone! Excited to share my first blueprint, I hope you all find it as useful as I do.
You can also visit the Github Repository for this blueprint.

:bell: To-do List Chore Notifications

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

:notebook: Description

Create Actionable Notifications from a Home Assistant To-do List!

This blueprint does not use Wait triggers, so that means that all notification actions will still work even after Home Assistant is restarted!

Notifications are sent every day at the time you specify in Notification Time or at the time a to-do item is due. See the Setup Notification Times section below for details.
Notifications are sent to every device you specify in Devices to Notify. It will generate 1 notification for each passed due item, with the ability to mark the item as completed right from the notification!

When a Task is Marked Complete (from the notification):

  • The notifications will be cleared from all devices it was sent to!
    This way, if a task is marked as done noone has a notification telling them to complete it.
  • Through the When chore is completed actions you can specify any actions you would like to happen after a task is marked as done.

View Some Example Use Cases

:watch: Setup Notification Times

There are two options for how notifications are sent out:

  1. If Use To-do Task Times is toggled off then notifications are sent every day at the time you specify in Notification Time. the blueprint will generate 1 notification for each item due today or on a previous day.
    If an item doesn’t have a due date, it will go out every day at the Notification Time.
  2. If Use To-do Task Times is toggled on the blueprint will generate 1 notification for each item at the time the item is due, for any item due today or on a previous day.
    If the to-do item does not have a time or date set then the notification will go out at the specified Notification Time.
    • For example. If todays date is January 2nd here is a list of to-do item due dates and times and when you will receive them:
      • No Date or Time - Notification will be sent out at the Notification Time
      • January 1st - Notification will be sent out at the Notification Time
      • January 1st @ 1:00PM - Notification will be sent out at 1:00PM
      • January 2nd - Notification will be sent out at the Notification Time
      • ** January 2nd @ 2:16PM** - Notification will be sent out at 2:15PM (See note below about this).
      • ** January 3rd @1:00PM** - Notification will not be sent out today because it is not due until tomorrow.

:information_source: Note
By default To-do items are checked every 15 minutes. This is why in the example above the item due at 2:16PM was sent out at 2:15PM.
It checks every 15 minutes and creates notifications for any item that is due before the next time it checks. So items are sent out before they are due rather than after they are due in these cases.
How often tasks are checked can be altered in the Advanced Notification Options section by updating the Time Check Frequency setting.
Use Caution checking too often can put a strain on your system, especially if you have large To-do lists. If you have a large To-do list and are having issues, try setting it to a higher value.

:green_book: F.A.Q

1. What to-do / task tracking integrations work with this Blueprint?

Any integration that makes use of Home Assistants To-do entities should work with this blueprint.
Integrations I have tested myself are:

  • Home Assistants built in Local To-do integration.
  • Google Tasks
    • Google Tasks has the advantage of being able to create recurring tasks that will automatically “uncheck” themselves and update their due date after they are marked done.

2. What notify services work with this Blueprint?

Although this blueprint was designed to work the easiest with the notification services provided by the Home Assistant Companion App, for both Android and IOS,
it can also work with Notify Groups and other notifiers. Seting up the groups or other notifiers can be done in the Advanced Notification Options
section when setting up the blueprint.

:warning: Important
In order for the notifier to work the action must be notify.name_of_notifier. It does not work with the notify.send_message action.

3. IOS Notifications aren’t showing the “Mark Done!” notification action, whats wrong?

Apple devices running IOS do not show the notification actions automatically. On IOS you must tap and hold on the notification then the “Mark Done!” action will be displayed.
Simply tapping on the notification, or swipping it away will not mark the task as done.
This is a limitation of IOS, and there is no way to change this functionality.

:bulb:Tip
If this is an issue I recommend putting a note in the task name or description, on each to-do list item, to remind you to tap and hold on the notification in order to mark it as done.

:page_with_curl: Post-Chore Actions - Custom Actions After Task is Marked Done

:warning: Important
These actions will only run if the task was marked done through the notification!
If the task is marked done directly through the Home Assistant To-do list screen, or from the integration screen these actions will not run.

Example Use Cases:

:bulb:Tip
A variable named todo_item is created when a task/chore is marked complete, this can be used within your custom actions along with Home Assistants Chose
action and Template Condition to specify different actions for each task/chore.

1. Use a Counter Helper to Keep Track of an Item in Stock

If you have a task/chore that requires having something in stock, such as Air filters or Chlorine Tablets, you can create a Home Assistant Counter Helper
to keep track of how much you have in stock.
Then when your “Replace Air Conditioner Tablets” task/chore is marked complete on your to-do list, you can call the counter.decrement service
for that Counter Helper to automatically update how much is left in stock.

Yaml put into the “When chore is completed” blueprint input.

choose:
  - conditions:
      - condition: template
        value_template: "{{ todo_item == 'Replace Air Conditioner Tablets' }}"
        alias: "Make sure name is: Replace Air Conditioner Tablets"
    sequence:
      - service: counter.decrement
        target:
          entity_id: counter.ac_tablets_in_stock
        data: {}

The important part is the template condition’s value_template where we compare the todo_item variable, which is the task/chore that was just marked done, with the name of the chore we want to perform that specific action for:

value_template: "{{ todo_item == 'Replace Air Conditioner Tablets' }}"
3 Likes

Bridwing, thanks for writing this up… This is excellent if I could get the notifications to show up. I have an iphone and ipad with the companion app I’m testing on and I’m not blocking push notifications. Unfortunately it isn’t working. I know my push notifications work as I receive me frigate ones.

Hey nonamer,

Sorry it took me so long to get back to you.
What is the Name of your device?

I made the “Notify Devices” dropdown a select list of “devices” of type mobile_app.
The action called to send the notification is derived from the Device name and the only way to do that is to “slugify” the device name.

So for example if your device is called:

“Nonamers Phone” the called is expected to be “notify.mobile_app_nonamers_phone”

I’m curious if there is something in the device name that causes it not not properly determine the action to call.

Hello Everyone!

There has been an update to the To-do List Chore Notifications!
Thanks to help by @mathmaniac43

The To-do List Chore notifications can now work with more than just the Companion App. Through the new Advanced Notification Options section, you can now specify Notify Groups and other notifiers as the target!

The main post and readme has been updated with the new options.
Thanks again @mathmaniac43 for your work!

1 Like

Hello again! Back with a fresh new feature :smile:

It is now possible to have notifications go out based on the time that a task is due! :open_mouth:
Don’t worry, this new feature is off by default so if you don’t want it it will not break your blueprints to update :wink:

Here are the release notes:

  • Added a Use To-do Task Times toggle setting that allows for notifications to be sent out based on the time a task is due.
    • Notification Time is still used for tasks that don’t have a time or a date set.
  • Added an advanced notification option of Time Check Frequency to control how often the blueprint automation checks for tasks that are due based on their time.

The main post and readme has been updated with the new options.