This custom component for Home Assistant adds support for the due_date and due_datetime parameters when adding items to a todo-list with Assist (text or voice).
It adds a new TodoDueAddItem intent that can be called with the same name and item inputs as the core HassListAddItem but with additional inputs.
In "absolute time" mode:
due_day: one oftoday,tomorrow,mon,tue,wed,thu,fri,sat,sundue_hour: between 0 and 23due_minute: between 0 and 59mode: one ofh24(default),am,pm
In "absolute date" mode:
due_date: between 1 and 28-31due_month: one ofjanuary,february, etc.due_hour: between 0 and 23due_minute: between 0 and 59mode: one ofh24(default),am,pm
In "relative" mode:
due_day_offsetdue_hour_offsetdue_minute_offset
This allows sentences like:
- "Remind me to buy bread for tomorrow"
- "Remind hairdresser next tuesday at 9 AM"
- "Remind me to clean the bathroom in 2 hours"
- "Remind me to call John on March 15th"
Not all inputs are required, the intent will try to naturally set the best due date depending on what is provided and the current time. For example "Add xxx at 6 PM" when the current time is 8 PM, will automatically set the item for the next day.
The integration is available in HACS.
-
Install the Integration:
Simply click on the button to open the repository in HACS or search for "Todo Due" and download it through the UI.
-
Add the Integration:
- Open your
configuration.yamlfile - Add
todo_due:at the root level
- Open your
-
Restart Home Assistant:
- Go to Settings > System and click the Restart button.
- Download the latest release from the releases page
- Extract the
todo_duefolder to yourcustom_componentsdirectory - Add
todo_due:at the root level of yourconfiguration.yamlfile - Restart Home Assistant
Some English and French sentences examples are provided in the custom_sentences folder but due to the wide variety of usage it is best to craft your own.
In these examples the name of the todo-list is hardcoded in slots.name in order to have a simpler syntax.
This project is licensed under the MIT License - see the LICENSE file for details.