Repository navigation
v2.5.0
Deliveries
There's an explanation of the aims and design of deliveries, transports and targets in the Roadmap section at Deliveries and Transports.
- Every transport that is available to use is automatically available as a delivery with the same name.
- Transports that don't have unambiguous targets are defined with
selectionasexplicitso they won't be automatically used unless selected explicitly on a notification, or configuration overridden - Deliveries no longer have a
default_prefix, although existing automations which use these will automatically be switched toemail,notify_entityetc - Auto discovery of action name for lots of transports, see list below
- A repair is raised for any deliveries that have the same name as a transport but don't use that transport. The transport name is effectively a reserved delivery name.
- Transports that don't have unambiguous targets are defined with
- Creating
Deliveryobjects now only necessary if there's more than one Delivery for the same transport, likeplain_emailandhtml_email, different Telegram channels etc- Everything that can be done with a
Deliveryconfiguration can be done with thedelivery_defaults:section of aTransportobject - Its also possible to avoid creating Delivery objects in YAML by defining the relevant
data:items in a notification action, although this gets unwieldy (the whole point of Delivery objects is to define this stuff once and not across many notifications).
- Everything that can be done with a
- Switch entities are only published for Transport objects that are available
- So you won't get clutter for things like
ntfy,gotfy,alexa_media_playerif those are not installed
- So you won't get clutter for things like
- Default delivery creation tightened for Notify Entity and Mobile Push, so these Delivery objects don't get created if there are no mobile apps or notify entities on the Home Assistant instance.
- Transports have a
loadcontrol, switching this off means there's no attempt to auto-discover it, and it never has a Delivery or Home Assistant entities created for it - Transports with no automatic or manual Delivery pre-sets get unloaded, so don't appear as entities
- Auto-configure for
emailwill respect the direct mode if connection details present - Transport and Delivery now are controlled by
inclusionrather thanselectionsince that was confusing with the different but similardelivery_selectionin the notification. The older keyword is still supported but deprecated. - Auto generated deliveries give way to manually configured deliveries of the same name, and come last in any selection battle to handle unique targets
Targets
There has a wide overhaul of how targets are categorized and tied back to transports - this has simplified the code, and should make it simpler to configure and more predictable in how it will behave. Regression tests and migration code has been used to keep it backward compatible with existing configurations. There's also a new documentation page for Target Usage.
- A flat target list can scope an entry to a target category with a
category:valueprefix (e.g.topic:some/topic), as shorthand for the dictionary target form - Each transport now declares the target categories it accepts (
entity_idselectors can further narrow by Home Assistant domain and/or registered platform), replacing the oldtarget_categories/target_platform_selectoptions - see Targets - Archive message now has
uncategorized_targetsandunassigned_targetsto help debugging delivery issues - New
topic,discord_channelandmatrix_roomcategories for MQTT, Discord and Matrix - A target category matching a delivery's own name, or its transport's name, always reaches that delivery - so
sms:1234reaches any enabled SMS delivery, while a specific delivery name (e.g.html_email:...) pins a target to just that one - An error will be raised logged if there any targets that can't be mapped to a category - this won't stop the rest of the notification working, but will make it visible
Alexa Devices
- Three automatically generated standard deliveries
alexa_devices- picks up on any Alexa notify entities in the target list, does nothing if no targetsalexa_devices_speak_all- sends notification to all speak Alexa notify entities, takes no targetsalexa_devices_announce_all- sends notification to all announce Alexa notify entities, takes no targets
- This means that it is easy with a Zero YAML configuration to use Alexa announcements - just add
alexa_devices_announce_allto the list of deliveries
Alexa Media Player
- Automatically finds correct notify action by default
Discord
- Automatically finds correct notify action by default
- The internal SMTP integration is used by default, and will reuse the Home Assistant SMTP connection details if SMTP set up via the UI
Gotify
- Automatically finds correct notify action by default
Live Scenarios
- Fix scenarios without entities, such as date based ones using
now()being left out of periodic sweep to recompute
Notify Entity
- Target selection for notify entities now uses Home Assistant domain that provided the entity
- This is used for
html5andalexa_devicesso that Notify Entities are handled correctly by the right transport, with the very basicnotify_entityas a back stop
- This is used for
MQTT
- Delivery now accepts a topic as a target, and takes payload from message. Previous behaviour remains supported.
Mobile Actions
- Exposed
groupon mobile actions asmobile_push_group(previously undocumented and mis-namedaction_category) - Fixed problem with
action_templateandtitle_templateproducing broken buttons - Stop forcing mobile notifications into 'general' or 'appd' group
- New doc page on how they work
Pushover
- Automatically finds correct notify action by default
SMS
- Automatically finds correct notify action by default for Twilio and Mikrotik_SMS integrations
Technical
- Documentation auto-generation moved to
probatio, retiringvoluptuous-openapi - Improved order of fields in archive for most useful to top, and related together
- HomeAssistant compatibility moved to 2026.9.2
- Developer automated documentation for Transports expose the new target configurations they have
- Manifest updated so Supernotify will wait for all its dependent integrations before starting up
What's Changed
- Upload zip release asset for download tracking by @jeyrb in #191
- Bump home-assistant/actions/hassfest from a7c616ce81ccda50150bf1595786c71b1883fabb to 58bff37c8947f690ace498be413a9b78d6f30f93 by @dependabot[bot] in #192
- Bump actions/upload-pages-artifact from 3 to 5 by @dependabot[bot] in #194
- Bump actions/deploy-pages from 4 to 5 by @dependabot[bot] in #193
Full Changelog: v2.4.2...v2.5.0