Create an Alarm on Alexa Device

Hi, I am in the process of migrating my automations from Hubitat to Home Assistant.
In Hubitat I used an integration called Echo Speaks which was a quite powerful tool for controlling Alexa devices. I have setup the Alexa integration in Home assistant but a couple of things that I havnen’t been able to figure out how t do are:

  • Create an Alexa Alarm (alarm clock not notification)
  • Get Alexa to perform a custom action without calling an Alexa routine (e.g. “Alexa create an alarm on Bedroom Echo for 6:00 am”)

I like having my alarm creation in my automations so that I can add flags to only create it if my ‘disable morning routine’ flag is not true and if its not a public holiday.

The ability to send custom actions to Alexa is good so that you can do certain things that there aren’t integrations for (e.g. “Alexa show front door camera on Fire tablet”).

Does anyone know if these thigs are possible?

thanks

There is a custom alexa integration which allows you to connect alexa devices into home assistant. You can either send commands to execute on alexa (show front door on fire tablet) or announcement

Ok yep I use that but didn’t realize you could send commands to Alexa devices.

Example below

Awesome thanks!

Oh hey what is the content type that you specify please?

The content_type is custom

Alexa Media Player Custom Commands

Thanks that works great. don’t suppose you know how to not have Alexa say what it just did out loud?
At the moment, when I run a custom command like “create alarm on the Kitchen Echo for 6:30 a.m”, Alexa says out loud that it has created an alarm. I want this to be silent as it happens early in the morning.
I have tried setting the volume to 0 before the custom command and setting do not disturb mode on and setting mute to on but it seems to ignore that and still say it out loud.

It’s impossible to find in the Alexa App, but you can set the device to respond with a tone.
In the app select “Settings”
then the echo device,
then “Sounds & Notifications”
then “Request Sounds”
then turn on “End of Request”, which will play the tone after it recognizes your Alexa command.

You can’t change the tone, but this should make it less objectionable.

Thanks but it still says “alarm set for 6:45 on kitchen echo” after it has created the alarm.

So for now I have had to do 2 automations:

Automation 1

  1. Set the volume on an echo down the other end of the house to 0
  2. Send custom command to this echo to create the alarm on my bedroom echo

Automation 2

  1. Set the volume on the echo that the command was sent to back to normal levels.

Seems like you can’t do this in the one command. Even if I try from an Alexa routine it wont allow you to set the volume back after a custom command.

This has the result of speaking very quietly (apparently volume level 0 isn’t actually muted) down the other end of the house when it create the alarm and then setting the volume back to normal.

It is interesting, i never heard the command through Alexa device, just a short beep and it is executed after all. Probably, there is some setting in alexa app itself?

Amazon has not implemented a way to disable or completely mute the alarm confirmation message… even though people have been asking about it for years now. What you did is exactly what I ended up doing… call the service on the echo in the basement to set the alarm in the bedroom.

You can, however, do it in one automation. You just need to add a delay action between your alarm creation action and your media_player.volume_set action. I use a 20 sec delay just to give Alexa time to finish “thinking” and “talking”, but you may be able to get away with something shorter (I haven’t bothered testing).

Here’s another idea. The reply comes to the Alexa unit that issued the command. So use one without a speaker. Like the Echo Input

That’s an interesting idea…

I wouldn’t use a $50 Echo Input… but it might worth picking up a Flex and desoldering the crappy speaker or converting an extra RaspPi Zero to have a quiet target for Alexa commands.

Most early Echo devices have a speaker jack, but I wouldn’t want no load on the amplifier. Solder a pair of 16Ω from the left and right channels to ground.

Thanks. Yeah I did also read about a guy who used an old unused echo and just stuck a headphone jack in it to mute it.

Fixed it…well solved my problem anyway.
I was thinking that all I am trying to do is play an alarm sound on an echo at a given time.
So started looking into just playing mp3 files from HA on an echo and sure enough you can!
So you just need to find an alarm tone mp3 file on the internet of your choice and then upload to HA and play from your automation. This YoutTube video helped (4) ALEXA CUSTOM MP3’s (Using Home Assistant) - YouTube

There are a number of sounds available in the Alexa sound library which can be called from home assistant.

service: media_player.play_media
target:
  entity_id: media_player.guest_room
data:
  media_content_type: sound
  media_content_id: amzn_sfx_scifi_alarm_04
2 Likes

Didgerdrew is this still working, I can trigger play sound but Alexa devices do not play.