[Essentials] Severe Weather and Natural Disaster Warning


Update: i am now able to parse CAP data from most of the national warning services that are listed by the Severe Weather Information Center. (Some of the services do not respond properly or provide only test messages.)

Right now i am working on geolocation filtering (turns out there a lot of different schematics for that), as you most likely don’t want to hear warnings about regions that are hundreds of miles away from your own location.

When everything works out as i want my NOAA and Meteoalert skills will become obsolete…


So here it is Severe Weather Information Skill

Currently local weather services for 24 countries are supported, the list will be updated and extended in the future.

Scheduled updates and automatic notification is not implemented yet. My NOAA and Meteoalert skills are now obsolete, i will archive the Github repos soon.


I literally made an account to say, well done on this! Without pulling out the soap box, this sort of thing is proof positive that AI assistants can truly offer something of significant (and potentially life-saving) value to humans, not just make our lives slightly easier.

In theory, would something like this be connectable to an RPi weather station that is pushing readings over a local wifi network? I live in the Alps where storm systems come in fast and hard, but a sharp increase in wind speed is usually the first reliable sign that a storm is on its way. A few extra minutes or warning could make all the difference (bringing kids/pets inside, locking down shutters etc.).

I’ve only just started dabbling in Python, but seeing you make something like this is great motivation to spend a good few hours on my Udemy course this weekend!


I think you could use a sharp drop in air pressure. that would happen several minutes before the winds start to increase dramatically … yeah it easily do able to your RPI or esp weather station


Testing season for the severe weather information skill has begun…


Nothing says we couldn’t just do
weather_data = subprocess.run(‘your bash’, capture_output=True)

I love pure python though, but this seams easier.