Author Topic: Recent project: setting up Amazon Echo to announce alerts from Weather Message  (Read 880 times)

0 Members and 1 Guest are viewing this topic.

Offline UpstateWeather.com

  • Signature
  • Contributor
  • ***
  • Posts: 146
    • Upstate Weather
I'm pretty proud of my recent project and wanted to share in case anyone is interested or would like to learn how to do it. This weekend, I finished a project that I've been working on for a few weeks now to have Weather Message alerts automatically (verbally) announced on my Amazon Echo devices. I have a handful of Echo devices throughout my house, and I was able to get alerts broadcasted on all of them. We had some severe storms come through the area this weekend and it was the perfect time to test - and the alerts broadcasted on ALL of my echo devices. In fact, I got those alerts 2 or 3 seconds before any smartphone apps and even the iNWS alerts (text) I get.

Granted, I'm sure there are skills to do this, but I wanted to do it myself, so started working on the project a while ago. I have a "homelab" in my house so have a few different Virtual Machines to make the magic happen. (I wanted to be able to "self host" this as a way for me to learn some new platforms and have fun in the process.) I've already been using Weather Message for pushover notifications, posting to my website (UpstateWeather.com) and Twitter alerts (@weatherupstate) as well. For those that don't use the program - it's AMAZING! It specialized software that decodes and processes National Weather Service messages (warnings, etc.) and then allows you the user to chose different communication methods (i.e. twitter, website upload, sms, xmpp, etc.) The alerts always come in a few seconds before anything else (i.e. iNWS texts, local media app notifications, etc.)

For the nuts and bolts:
I run Weather Message on a Windows WM. This is pretty self explanatory.
I set up a XMPP server at home that is the communication method I chose from Weather Message. (For those that don't know, XMPP is a chat / IM communication method - think google talk, jabber, etc.)
I installed OpenFire, which is an open source XMPP server on a Ubuntu VM I have.
At this point, I have Weather Message sending XMPP messages to both individual users and a chat room for any Weather Message alert that comes out. I use an app on my iPhone to receive said messages in real time.

I use Node-Red, which is a GUI web based programing tool for all sorts of different languages, hardware, apis, etc. I also use this to auto-tweet my WXSIM forecast, etc. that I also display on my website. Node-Red has an XMPP node (plugin, add-in if you will) that I configured to listen to XMPP messages coming from a specific user (the user that Weather Message was assigned).

There is an Amazon Alexa node (node-red-contrib-alexa-remote2) that communicates with local echo devices for all sort of reasons - i.e. wake words, announcements, controlling connected IOT devices, etc. I configured my node to auto announce messages to all of my Echo devices.

Then I virtually wired it all up! Basically, it goes like this:
Weather Message -> XMPP Server -> Node-Red XMPP Receiver -> Node-Red Echo Announcement -> Echos Announce!

Like I said, it was the perfect timing to test this weekend, with numerous tornado watches and severe thunderstorm warnings in the area. And it worked like a charm, every time! Hope this helped someone; feel free to ask questions if anyone is interested in setting something similar up.

Cheers everyone! (And sorry, can't help myself - Go Clemson Tigers! Tonight's the NATTY and I'm a Clemson Tiger fan!)


Offline wxthomson

  • Senior Member
  • **
  • Posts: 85
    • http://www.minnetonkaweather.com
That sounds cool but most likely over my head to set up.

 

anything