How-To

How to trigger custom Alexa notifications from a smart home event

On this week’s IoT Podcast, we got a great voicemail question from Keith. He wants to know if an Amazon Echo can notify him of external events based on other smart devices in his home. For example, if a webcam sees movement, can Alexa tell him?

There’s no native functionality to make this happen, but the Notify Me Alexa skill works for this. Just keep in mind that the setup isn’t quite a simple process and it does require an external service, such as IFTTT.

Using the webcam motion detection example, here are the steps to make this work. You can adjust them accordingly for whatever smart device you want to use as a trigger event, of course.

First, enable the Notify Me skill found on the Amazon Alexa Skills site, or in your Alexa app.

Note that you’ll have to approve the Alexa Notifications permission for this. Once enabled with the proper permissions, you should receive an email that includes a unique Notify Me access code. This is tied to your Amazon account and is required for the service to work.

If you want to test the skill at this point, there’s also a link in the email to generate a notification to your Echo devices; click it and Alexa should make a sound or light up to inform you of a new notification. Say “Alexa, play notifications” and she should say “Hello world,” which is the test message.

Now it’s time to set up the skill with IFTTT, using the lengthy access code. I chose to create an IFTTT recipe using a Nest Cam in this example.

Step 2 is to choose the appropriate Nest Cam; I have two and for this example, I’ll use the camera that faces our driveway and select the “New Motion Event” option as the trigger. Once you’ve selected the appropriate device, click the “Create Trigger” button.

With the trigger event configured, it’s time to tell IFTTT what to do when that event occurs by clicking the “+that” selection and searching for Webhooks. The reason? We want IFTTT to send a web command to the Notify Me skill.

Here’s where the process gets marginally tricky, but trust me, you can do it! Choose the only option you’ll see for Webhooks, which is the “Make a web request” selection. Then you’ll see four fields to configure the webhook. Use the following information to fill in the first three:

  • URL: https://api.notifymyecho.com/v1/NotifyMe
  • Method: POST
  • Content Type: application/json

This is what the first three fields should look like once you’ve completed this input:

The fourth and final field, Body, is where you’ll create a custom notification based on this format: {“notification”: “Hello World!”, “accessCode”:“ACCESS_CODE”}.

You may want to paste the above line (including the curly braces) right into the body because you’re only going to modify what I’ve put in italics. You can replace “Hello World!” with your custom notification; this is what Alexa will say when she sees motion from my Nest Cam. I’ll use, “I see movement in the driveway” for this implementation.

Finally, replace the italicized “ACCESS_CODE” part with your unique access code, making sure that you put quotes around it. Here’s what it should look like in my example, although I didn’t paste a real access code and my fake code is shorter than the real one.

Once all of the fields are properly filled in, just tap “Create action” to enable your new Alexa notification. That’s it!

In this particular case, Alexa receives a notification whenever my driveway Nest Cam senses movement. Just to reiterate, Alexa won’t simply speak the notification when she receives it: You’ll have to ask her to read the notification aloud, which is how Amazon has implemented notifications.

And there’s one more thing you should know. Regardless of what smart home device you use as a trigger event, Amazon limits the Notification API: Trigger events can only create notifications up to five times in a five minute period. After that, Amazon puts you in a bit of a time-out. I wouldn’t think you’d want notifications every minute but it’s worth a mention if you use the skill several times over a few minutes during the setup or test process.

Thanks to the Notify Me skill, you can have Alexa notify you of any external events triggered by a sensor, camera or any other smart device supported by IFTTT. Notify Me isn’t limited to IFTTT as it also works with ISY, Indigo, HomeSeer and Tasker, but I chose IFTTT for this example since it’s relatively simple and many people are familiar with it.

If you’d rather hear our response to this question, you can hit the play button below to start the podcast right at our IoT Podcast Hotline section:

And remember, you can always leave us your question by calling the IoT Podcast Hotline at 512-623-7424!

Kevin C. Tofel

Share
Published by
Kevin C. Tofel

Recent Posts

Episode 437: Goodbye and good luck

This is the final episode of The Internet of Things Podcast, and to send us…

9 months ago

So long, and thanks for all the insights

This article was originally published in my weekly IoT newsletter on Friday August 18, 2023.…

9 months ago

We are entering our maintenance era

This article was originally published in my weekly IoT newsletter on Friday August 18, 2023.…

9 months ago

IoT news of the week for August 18, 2023

Verdigris has raised $10M for smarter buildings: I am so excited by this news, because roughly eight…

9 months ago

Podcast: Can Alexa (and the smart home) stand on its own?

Amazon's head of devices, David Limp, plans to retire as part of a wave of executives that…

9 months ago

Z-Wave gets a boost with new chip provider

If you need any more indication that Matter is not going to kill all of…

9 months ago