HaWake HaWake About Home Assistant MQTT Builder Privacy
hawake/iphone/command/create_alarm
Required
Time of day for the alarm
Basic
None selected = one-time alarm
Audio
Snooze
Skip
Mission
Alarm Screen
Command names must already exist in the app
JSON Payload
{}

HA Automation Action


              
            
Target
Found in sensor: hawake_{device}_alarm_{N}_name
Fields to Update (leave blank to skip)
Select days to set them; clear all = leave days unchanged
Mission
Alarm Screen
JSON Payload
{}

HA Automation Action


                
              
Native name targeting: The app resolves the alarm name directly — no HA template required. Just send "name": "Your Alarm" and the app finds the matching alarm (case-insensitive). All the same fields as By Index are available.
Target Alarm
Case-insensitive. Resolved directly by the app — no template required.
Fields to Update (leave blank to skip)
Select days to set them; clear all = leave days unchanged
Mission
Alarm Screen
JSON Payload
{}

HA Automation Action


                
              
Tip: No templates or HACS integration required. The app resolves the alarm name natively. Paste this YAML directly into a script or automation action block.
Target — provide index OR label
From sensor.hawake_{device}_alarm_{N}_name or the Alarm ID sensor
— or —
Matches the alarm's name (case-insensitive). Index takes priority if both are set.
Destructive: There is no confirmation. The alarm is removed from SwiftData immediately. Use the per-alarm Delete button entity in HA instead if you want a button that's always scoped to the right alarm.
JSON Payload
{}

HA Automation Action


              
            
Required
Also used to reference this command in alarm_screen_commands
Appearance
Custom RGB overrides the color name if both are set
Behavior
When this command fires from the alarm screen, optionally change the armed state at the same time — arm arms the device, disarm disarms it, toggle flips whatever it currently is. Useful for commands like "Lock Front Door" that should also arm the alarm.
JSON Payload
{}

HA Automation Action


              
            
What this does: Deleting a command removes it from the app's command list permanently. Any alarms that reference it by name (alarm screen buttons, swipe gestures) will lose that association. The corresponding HACS button entity for this command will also disappear — any HA automations triggering that entity will break. Use with care; there is no undo.
JSON Payload
{}

HA Automation Action


              
            
Required
Optional
Authenticated media? Use the hawake.notify HA service or a TTS action instead — those run inside Home Assistant and can fetch authenticated URLs before sending. Raw MQTT payloads cannot include HA auth tokens.
JSON Payload
{}

HA Automation Action


              
            
Tip: These actions are also available as button entities in the HaWake HACS integration (Dismiss Alarm, Snooze Alarm, Skip Alarm, etc.) which expose real-time availability. Use raw MQTT for automations where the button entity availability isn't guaranteed.
Tip: Each alarm in the HACS integration has its own set of button entities — Dismiss, Snooze, Skip, Unskip, Kill Snoozed, and Delete — already wired to the same topics. Use raw MQTT here when you need to target a specific alarm index directly in an automation without relying on button entity availability.
Find the index from sensor.hawake_{device}_alarm_{N}_name or the Alarm ID sensor.
Sound & Volume
Omit to keep the app's last-used sound.
Accepts 0–100 integers or 0.0–1.0 floats.
Fade-Out
Duration Mode
Until Next Alarm — plays until the next scheduled enabled alarm fires (replaces "until morning alarm").
Topic
JSON Payload

              
            
HA Automation YAML

              
            
🔊 Set Volume sleep_sound_set_volume
HA Automation YAML

          
        
Cross-Fade to New Sound
Changes the playing sound without stopping playback. An equal-power crossfade is applied for a seamless transition.
Topic
JSON Payload

            
          
HA Automation YAML