Skip to main content

Subscribe to alerts from the National Weather Service

Project description

NWS_Alert

A easy way to subscribe to National Weather Service (NWS) alerts.

Install

pip install nws_alert

Usage

from nws import NWS

nws = NWS()


# Subscribe to alerts in North Carolina with severity "Moderate" or "Severe"
@nws.alert(state='NC', severity='Moderate')
@nws.alert(state='NC', severity='Severe')
def MyStateAlert(entry):
    print('MyStateAlert(', entry.severity, entry.title)


# Subscribe to events in my "zone" with urgency "Immediate"
@nws.alert(zone='NCC101', urgency='Immediate')  # See https://alerts.weather.gov/ for complete zone list
def MyZoneAlert(entry):
    print('MyZoneAlert(', entry.urgency, entry.title)


# nws.NowAlerts() will return any event happening now. It will not return future or past events.
# Only events from states/zones you have subscribed to with @nws.alert will be included.
# This will return all events regardless of severity, certainty, or urgency

nowAlerts = nws.NowAlerts()
for entry in nowAlerts:
    print('now entry=', entry)

Notes

The @nws.alert decorator will only be triggered once per NWS alert. The alerts are logged to a JSON file in the current directory so that the code will remember which alerts have already been triggered.

Synchronous Subscriptions

You can update the subscriptions on the fly by creating a Subscription object and calling the .Update()

sub = Subscription(state='NC', severity='Moderate')
entries = sub.Update()
print('entries=', entries)

>>> entries= [<nwscapparser3.nws_cap_parser.CAPEntry object at 0x00000225DD91C7C0>, <nwscapparser3.nws_cap_parser.CAPEntry object at 0x00000225DD91C6A0>]

Event Attributes

See https://docs.oasis-open.org/emergency/cap/v1.2/CAP-v1.2-os.pdf for more detailed CAP info

SEVERITY:

  • Severe: Significant threat to life or property

  • Moderate: Possible threat to life or property

  • Minor: Minimal to no known threat to life or property

  • Unknown: Severity unknown

CERTAINTY:

  • Observed: Determined to have occurred or to be ongoing

  • Likely: Likely (p > ~50%)

  • Possible: Possible but not likely (p <= ~50%)

  • Unlikely: Not expected to occur (p ~ 0)

  • Unknown: Certainty unknown

URGENCY:

  • Immediate: Responsive action SHOULD be taken immediately

  • Expected: Responsive action SHOULD be taken soon (within next hour)

  • Future: Responsive action SHOULD be taken in the near future

  • Past: Responsive action is no longer required

  • Unknown: Urgency not known

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nws_alerts-1.0.1.tar.gz (4.2 kB view hashes)

Uploaded Source

Built Distribution

nws_alerts-1.0.1-py3-none-any.whl (4.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page