Skip to content

Releases: thehig/routinely

v1.9.8

Choose a tag to compare

@cursor cursor released this 04 Jan 18:46

Multiple Notification Improvements

1. Timer Extension Fix 🔧

You can now extend task timers beyond their original duration! Previously, adding time was capped at the original task duration. Now you can add up to 1 hour extra.

2. Test Notification Button 🔔

Added a "Test" button to the Routinely card nav bar:

  • Click to send a test notification to all configured targets
  • Visual feedback confirms the test was sent
  • Great for debugging notification setup

3. Per-Routine Notification Targets 🎯

Each routine can now have its own notification targets:

  • Configure in routine's notification settings
  • Override global targets for specific routines
  • Falls back to global if not set
  • Useful for different devices for different routines

4. Home Assistant Toast Notifications 📢

New option: "Enable HA toast notifications"

  • Shows notifications in the HA UI sidebar
  • Appears as toast messages in the web interface
  • Perfect for tablet wall panels and browser dashboards
  • Works alongside mobile notifications

All Notification Options

Option Description
Mobile notifications Android/iOS companion app
Smart speaker TTS HomePod, Google Home, etc.
browser_mod TTS iOS Safari Web Speech API
HA toast HA UI sidebar notifications

v1.9.7

Choose a tag to compare

@cursor cursor released this 04 Jan 18:26

iOS TTS via browser_mod 🎉

This release adds browser_mod TTS - the solution for iOS Text-to-Speech!

iOS Safari supports the Web Speech API (speechSynthesis). Using browser_mod's JavaScript service, Routinely can now speak announcements directly on iOS devices that have the Home Assistant dashboard open.

How It Works

When enabled, Routinely calls browser_mod.javascript to execute:

speechSynthesis.speak(new SpeechSynthesisUtterance("Your message here"));

This speaks text directly through the iOS device's speakers - no external hardware needed!

Setup Requirements

  1. Install browser_mod from HACS
  2. Register your browser in browser_mod settings
  3. Keep HA dashboard open on your iOS device
  4. Enable "browser_mod TTS (iOS)" in Routinely options

TTS Options Summary

Option Platform Requires
Android notification TTS Android Companion app
Smart speaker TTS Any HomePod/Google Home/etc
browser_mod TTS iOS/Any browser_mod + dashboard open

Notes

  • Works on any browser with Web Speech API support (Safari, Chrome, Firefox, Edge)
  • Best for iOS devices used as wall panels or dedicated HA displays
  • Test with the "Test Notifications" step in options

v1.9.6

Choose a tag to compare

@cursor cursor released this 04 Jan 18:17

iOS TTS Support

iOS doesn't support Text-to-Speech in mobile notifications like Android does. This release adds support for speaking announcements via smart speakers.

New Features

  • TTS via Smart Speakers: Configure a media player entity (HomePod, Google Home, Alexa, etc.) to receive spoken announcements
  • Works for both iOS and Android users who want speaker-based TTS
  • Test notification now also tests the TTS entity

How to Enable iOS TTS

  1. Go to Routinely options
  2. Enable "Speak announcements via smart speaker"
  3. Enter your media player entity (e.g., media_player.homepod)
  4. Test with the test notification step

Note

  • Android devices continue to receive TTS directly via the notification
  • iOS devices will hear announcements through the configured smart speaker
  • Both can be used together

v1.9.5

Choose a tag to compare

@cursor cursor released this 04 Jan 18:07

Bug Fixes

Thread Safety Fix

  • Fixed async_write_ha_state being called from a thread other than the event loop when using the adjust_time service
  • Now properly schedules state updates on the event loop using call_soon_threadsafe

Android TTS Fix

  • Fixed Text-to-Speech not working on Android devices
  • Android notifications now properly trigger TTS mode by setting message: "TTS" for all notifications with TTS text
  • Previously only worked for critical notifications

Config Flow Improvements

  • Added dedicated "Test Notifications" step in the options flow
  • Users can now send multiple test notifications without re-submitting the entire form
  • Test step shows success/failure status after each send
  • Checkbox control to send tests vs continue to next step

v1.9.4 - Critical Notifications with TTS

Choose a tag to compare

@cursor cursor released this 04 Jan 17:55
6fcab3a

What's New

Critical Notifications with TTS at Maximum Priority

Implemented high-urgency critical delivery notifications based on the Home Assistant Companion docs.

iOS (Top Priority)

  • push.sound.critical: 1 - bypasses Do Not Disturb and mute
  • push.sound.volume: 1.0 - maximum volume
  • push.interruption-level: "critical" - highest iOS priority
  • Works on CarPlay's built-in display

Android (Second Priority)

  • ttl: 0 - immediate delivery
  • priority: high - high priority FCM
  • media_stream: alarm_stream_max - TTS at max volume via alarm stream
  • Automatically reverts volume after speaking

Critical Notifications Used For

  • Task ending soon warnings
  • Task overdue alerts
  • Awaiting user input prompts

v1.9.3

Choose a tag to compare

@cursor cursor released this 04 Jan 12:31

Test Notification Feature

Added a Test notification message field to the options page:

  1. Select your notification device(s)
  2. Type a custom message (or use the default)
  3. Click Submit
  4. Your device should receive a notification with TTS

Default message: "This is a notification test from Routinely"

This helps you verify:

  • ✅ Notifications are reaching your device
  • ✅ TTS is working (if enabled on your device)
  • ✅ Action buttons appear correctly

v1.9.2

Choose a tag to compare

@cursor cursor released this 04 Jan 12:25

Smart Notification Device Selector

The notification targets field is now a multi-select dropdown that:

  • 📱 Auto-discovers your iOS/Android devices with Home Assistant Companion App
  • 🔔 Shows all available notify services
  • ✨ Displays friendly names (e.g., "📱 Pixel 9 (iOS/Android)")
  • 🎯 Prioritizes mobile app devices at the top of the list

Setup

  1. Go to Settings → Devices & Services → Routinely → Configure
  2. Click the Notification devices dropdown
  3. Select your device(s) from the list
  4. Submit

No more typing service names manually!

v1.9.1

Choose a tag to compare

@cursor cursor released this 04 Jan 12:12

iOS Push Notification Improvements

  • Fixed action handler: Notification button presses now properly trigger Routinely actions
  • Better iOS buttons: Cancel/Skip buttons show in red (destructive), Cancel requires device unlock
  • Improved logging: Better debug info for notification events
  • Service documentation: Added adjust_time service to services.yaml

How to Configure iOS Notifications

  1. Go to Settings → Devices & Services → Routinely → Configure
  2. Enable notifications and set Notification targets to your iOS device name (e.g., mobile_app_iphone)
  3. Your device name can be found in Settings → Companion App in Home Assistant

Actionable Buttons

When you receive a notification, long-press (locked) or swipe down (unlocked) to see action buttons:

  • Pause/Resume routine
  • Skip task
  • Complete task (manual mode)
  • Cancel routine

v1.9.0

Choose a tag to compare

@cursor cursor released this 03 Jan 23:43

New Features

  • Overtime Timer: Manual/confirm tasks now count UP when timer expires, shown in red with "⏰ OVERTIME" status
  • Time Adjustment Buttons: Added -5m, -1m, +1m, +5m buttons to adjust current task time
    • Minus buttons disabled if insufficient time remaining
    • Plus buttons disabled when in overtime

Backend

  • New adjust_time service to modify current task duration

v1.8.2

Choose a tag to compare

@cursor cursor released this 03 Jan 23:29
  • Fix: Skip last task error (too many values to unpack)
  • Fix: Show remaining time when paused instead of 00:00