@ablyes Sadly itās the default behaviour of the companion app
My wife has the same complaintā¦
Maybe it would be wise for the notification to open HA instead when it is clicked.
@ablyes Sadly itās the default behaviour of the companion app
My wife has the same complaintā¦
Maybe it would be wise for the notification to open HA instead when it is clicked.
Thank you for sharing your changes! Have added a link to your comment under the forks subheader, and will review the changes to be added in future versions!
P.S. may take awhile, got a bad case of COVID , will do testing and changes after Iām back.
Sounds good! Iām certainly no power user, so Iām sure it could be done better.
Another frustration I have that I donāt see a way to fix is the timeout function.
If you donāt clear the notification on timeout, the action buttons no longer work. But a timeout is required, so you either have to set a very long timeout (for example 24 hours) and donāt clear the notification, or you have to use a timeout action.
I think the answer for me is going to be create a blueprint without the timeout functionality for when I donāt need it, but I was curious of your thoughts.
Edit: For now Iāve created another blueprint without any timeout functions. Iām sure thereās a way to set a variable to either use or not use the timeout function if itās set, but I donāt have the know-how to do that!
Thatās a good point that I did not face in my use case.
Iāll have to do some digging into the docs to see if we can use some data payloads when triggering the script.
Itās a great suggestion and valid use case, Iāll add that to the list of things to think about!
Maybe just to help me understand better, could you go into a little more detail for your use case? The ideal flow youāre expecting the script to be capable of, and the context would be helpful!
Sure thing!
I have this triggered from my garage door opening. I have it set to persistent, with the actions being Close Door and Dismiss.
I donāt want the notification to timeout, and thereās no action I want to perform after a timeout.
So I left timeout action blank and timeout time set to the default, 0.
The problem is the actions didnāt work, as it would see that as timing out immediately and the ātriggered byā would run with the timeout action (none)
So my other action buttons didnāt work, as the timeout action already āranā and the script was no longer listening for the other actions.
Iām glad to say the changes this time are all backwards compatible.
Replace blueprint file at config/blueprints/script/samuelthng/notifications.yaml
with intended version.
Reload your scripts on the Developer Tools Yaml page, or use this button:
Check your scripts!
It should show the new options and trigger properly if the upgrade went well.
This is an amazing blueprint, thanks a lot for sharing!
How is Timeout supposed to work on iOS? Iām setting tag, timeout action and timeout duration but the action is never triggered
Looks like clear_on_timeout
is not properly initialized so turning it off and back on fixed the issue.
Changing line 131 from
default: "leave_notification"
to
default: true
Fixes the variable and creating a new notification executes the timeout action correctly
EDIT 2: I see you already had a PR for this issue, nice!
Good eye! Yeah I missed that in the initial commit, should be fixed after V1.1
@samuelthng I have a few other ideas Iād like to see about implementing. Namely a clickAction so that if you tap on the notification it opens a URL/navigates to a specific spot in the app.
Itās a simple call under data, in the same spot as the icon and color. Unfortunately, itās named clickAction for Android, and just url for iPhoneā¦ so thereās probably not a good way to implement this universally and easily.
clickAction: "lovelace/home" #Android
url: "lovelace/home" #iPhone
Another idea I had is in regards to timeouts.
I had a weird case today where the timeout occurred when my phone was without reception. It did not receive the clear_notification notification from the automation timing out, so the notification remained even though the script had already timed out.
It might be a bit cleaner to include the following in the notification itself if timeout is enabled. That way the app on the phone removes the notification instead of relying on home assistant to send a clear_notification to the device. This is also under data: in the notification setup and would only be set if clear_on_timeout and timeout_duration are both set.
timeout: 600 # How many seconds the notification should be received by the device
Iāve had a few different blueprints for notifications and this has quickly become my favorite by far!
Great suggestions yet again! Yeah we could probably work those in.
We might still need the current timeout just for the sake of triggering timeout action HA side, but using the same timeout variable.
Iāll give it some brain cell time
Exactly. I didnāt come up with a clean solution myselfā¦ Iām more of an ideas guy!
Eventually it could get so complicated you might as well just copy and paste all the code anyway!
Again, thanks to joe.cole1 for the insights in this minor release.
Also, thanks to RemyyB for identifying the incorrect variable and raising a PR.
Sorry to everyone for taking a week to fix this. šš»āāļø
( Color picker is easy enough to configure, so it shouldnāt be absolutely breaking to warrant a major)
Clear Notification
is correctly set/unsetIcon Color
and Enable Icon Color
are correctly set/unsetThis script would notify the user that a new update is available, with an option to call the update service, or the skip update service.
Upon clicking the notification - not the action buttons - it will navigate the user to the Home Assistant updates page.
If nothing has been selected for 30 minutes, the notification will be cleared automatically without taking any actions.
notify_home_assistant_core_update:
alias: "\U0001F514 Home Assistant Core Update Notification"
use_blueprint:
path: samuelthng/notifications.yaml
input:
notify_device: <my_device_entity_id>
title: My Awesome Home
message: New update available!
timeout:
hours: 0
minutes: 30
seconds: 0
tag: ha_core_update
clear_on_timeout: true
notification_link: /config/updates
icon: mdi:archive-arrow-up
enable_icon_color: true
icon_color:
- 98
- 234
- 125
confirm_text: Update Now
confirm_action:
- service: update.install
data:
backup: true
target:
entity_id: update.home_assistant_core_update
dismiss_text: Skip
dismiss_action:
- service: update.skip
data: {}
target:
entity_id: update.home_assistant_core_update
This is an Android only fix, iOS users may ignore this patch.
Enable Icon Color
- No longer overrides icon colour if disabled.Icon Color
hex template - Remove unrequired code, minor change.Apologies for the frequent update - similar bug to last time, incorrect flag for Enable Icon Color
.
Enable Icon Color
disabled, should not override icon colour on Android phones.Fine to ignore if you donāt need icons for iOS, and wonāt be creating new scripts anytime soon.
Action Icons
- ļ£æ iOS Only
- Thanks @ChrisMancini
Version: 1.3.2
Clear on Timeout
since Version 1.3For your issues with iOS clear on timeoutā¦ I donāt have apple devices so I canāt test, but with my modifications to use notify. groups instead of individual devices, I needed to add back in your old style of clearing notifications so that when one device chose an action or dismissed it would do so on all devices. So my modified blueprint has both the ābuilt into the notificationā dismiss function as well as your older timer based clear notification.
Works great! That might be a good solution to cover all bases.
Yup thank you for the suggestion, thatās also exactly what I did! Just wanted to test ithe changes extensively before the next release.
Thereās also be some additional features coming up!
Fine to ignore if you donāt use iOS, new additions are optional.
Subtitle
, Notification Grouping
, Lockscreen Visibility
options, details in blueprint label.š·ļø Tag
is no longer required for some features to work.Version: 1.4
.tag
field if you have added one previouslyThere is at least one case where a user is unable to receive notifications on their iOS device
The issue is not reproducible on my end, but is probably due to an optional feature.
If this is happening to you, you may try to use an older version of the blueprint.
Known working version: Version 1.0
good job to both.
What should I change to use another service, i.e. pushover, if already integrated in HA?
This is an example I use for Internet disconnection:
Sorry for the italian language but itās pretty clear.
Thanks
Iām assuming youāre trying to call another action besides sending the notification alert?
If so, you have a couple of options:
You may simply add another action just like in this example below:
This applies to all action fields.
You may store all the actions you want into a separate script, then call the single script youāve created to trigger all actions. The best part about this is it allows you to house more complex logic into that script and to compartmentalise functionality on your setup.