Update README.md

Reorganize
pull/1/head
Mason10198 3 years ago
parent 565092f346
commit 4d42092193

@ -6,18 +6,18 @@ Tested on ASL 1.01, ASL 2.0.0, and HAMVOIP 1.7-01.
## Features ## Features
* **Human Speech**: Provides a library of recorded human speech for clearer, more understandable alerts. - **Human Speech**: Provides a library of recorded human speech for clearer, more understandable alerts.
* **Performance**: Designed for minimal impact on internet bandwidth and storage, reducing unnecessary I/O operations. - **Performance**: Designed for minimal impact on internet bandwidth and storage, reducing unnecessary I/O operations.
* **Alert Coverage**: Allows specifying multiple counties for alerts, ensuring broad coverage. - **Alert Coverage**: Allows specifying multiple counties for alerts, ensuring broad coverage.
* **Alert Filtering**: Provides advanced options to block or filter alerts using regular expressions and wildcards. - **Alert Filtering**: Provides advanced options to block or filter alerts using regular expressions and wildcards.
* **Remote Control**: Includes a control script that can be mapped to DTMF commands, allowing instant over-the-air control of your system. - **Remote Control**: Includes a control script that can be mapped to DTMF commands, allowing instant over-the-air control of your system.
* **Automatic Courtesy Tones**: Changes repeater courtesy tones based on active alerts. - **Automatic Courtesy Tones**: Changes repeater courtesy tones based on active alerts.
* **Duplicate Filtering**: Ensures the same alert is never broadcast twice. - **Duplicate Filtering**: Ensures the same alert is never broadcast twice.
* **Selective Broadcasting**: Broadcasts alerts on weather conditions' onset or dissipation. - **Selective Broadcasting**: Broadcasts alerts on weather conditions' onset or dissipation.
* **Tailmessage Management**: Provides unobtrusive alerting if alert broadcasting is disabled. - **Tailmessage Management**: Provides unobtrusive alerting if alert broadcasting is disabled.
* **Pushover Integration**: Sends alerts and debug messages directly to your phone. - **Pushover Integration**: Sends alerts and debug messages directly to your phone.
* **Multiple Nodes**: Supports alert distribution to as many local node numbers as desired. - **Multiple Nodes**: Supports alert distribution to as many local node numbers as desired.
* **Developer Options**: Provides a testing environment to inject manually defined alerts for testing how the system functions. - **Developer Options**: Provides a testing environment to inject manually defined alerts for testing how the system functions.
## How It Works ## How It Works
@ -54,6 +54,7 @@ Follow the steps below to install:
Install the required dependencies using the following commands: Install the required dependencies using the following commands:
**Debian (AllStarLink)** **Debian (AllStarLink)**
```bash ```bash
apt update apt update
apt upgrade apt upgrade
@ -62,6 +63,7 @@ Follow the steps below to install:
``` ```
**Arch (HAMVOIP)** **Arch (HAMVOIP)**
```bash ```bash
pacman -S ffmpeg pacman -S ffmpeg
wget https://bootstrap.pypa.io/pip/3.5/get-pip.py wget https://bootstrap.pypa.io/pip/3.5/get-pip.py
@ -88,26 +90,12 @@ Follow the steps below to install:
4. **Edit Configuration** 4. **Edit Configuration**
Edit the configuration file to suit your system: Edit the [config.ini](config.ini) file according to your needs. This is where you will enter your NWS codes, enable/disable specific functions, etc.
```bash ```bash
sudo nano SkywarnPlus/config.ini sudo nano SkywarnPlus/config.ini
``` ```
5. **Crontab Entry**
Add a crontab entry to call SkywarnPlus on an interval. Open your crontab file using the `crontab -e` command, and add the following line:
```bash
* * * * * /usr/bin/python3 /usr/local/bin/SkywarnPlus/SkywarnPlus.py
```
This command will execute SkywarnPlus (poll NWS API for data) every minute.
# Configuration
Edit the [config.ini](config.ini) file according to your needs. This is where you will enter your NWS codes, enable/disable specific functions, etc.
You can find your area code(s) at https://alerts.weather.gov/. Select `County List` to the right of your state, and use the `County Code` associated with the area(s) you want SkywarnPlus to poll for WX alerts. You can find your area code(s) at https://alerts.weather.gov/. Select `County List` to the right of your state, and use the `County Code` associated with the area(s) you want SkywarnPlus to poll for WX alerts.
## **IMPORTANT**: YOU WILL MISS ALERTS IF YOU USE A **ZONE** CODE. DO NOT USE **ZONE** CODES UNLESS YOU KNOW WHAT YOU ARE DOING. ## **IMPORTANT**: YOU WILL MISS ALERTS IF YOU USE A **ZONE** CODE. DO NOT USE **ZONE** CODES UNLESS YOU KNOW WHAT YOU ARE DOING.
@ -115,18 +103,24 @@ You can find your area code(s) at https://alerts.weather.gov/. Select `County Li
According to the official [NWS API documentation](https://www.weather.gov/documentation/services-web-api): According to the official [NWS API documentation](https://www.weather.gov/documentation/services-web-api):
> "For large scale or longer lasting events, such as snow storms, fire threat, or heat events, alerts are issued > "For large scale or longer lasting events, such as snow storms, fire threat, or heat events, alerts are issued
by NWS public forecast zones or fire weather zones. These zones differ in size and can cross county > by NWS public forecast zones or fire weather zones. These zones differ in size and can cross county
boundaries." > boundaries."
> "...county based alerts are not mapped to zones but zone based alerts are mapped to counties." > "...county based alerts are not mapped to zones but zone based alerts are mapped to counties."
This means that if you use a County code, you will receive all alerts for both your County **AND** your Zone - but if you use a Zone code, you will **ONLY** receive alerts that cover the entire Zone, and none of the alerts specific to your County. This means that if you use a County code, you will receive all alerts for both your County **AND** your Zone - but if you use a Zone code, you will **ONLY** receive alerts that cover the entire Zone, and none of the alerts specific to your County.
# Customizing the Audio Files 5. **Crontab Entry**
SkywarnPlus comes with a library of audio files that can be replaced with any 8kHz mono PCM16 WAV files you want. These are found in the `SOUNDS/` directory by default, along with `DICTIONARY.txt` which explains audio file assignments. Add a crontab entry to call SkywarnPlus on an interval. Open your crontab file using the `crontab -e` command, and add the following line:
```bash
* * * * * /usr/bin/python3 /usr/local/bin/SkywarnPlus/SkywarnPlus.py
```
# Tailmessage and Courtesy Tones This command will execute SkywarnPlus (poll NWS API for data) every minute.
# Tailmessage and Automatic Courtesy Tones
SkywarnPlus offers functionalities such as Tailmessage management and Automatic Courtesy Tones, which require specific configurations in the `rpt.conf` file. SkywarnPlus offers functionalities such as Tailmessage management and Automatic Courtesy Tones, which require specific configurations in the `rpt.conf` file.
@ -154,11 +148,13 @@ ct1 = /usr/local/bin/SkywarnPlus/SOUNDS/TONES/CT-LOCAL
ct2 = /usr/local/bin/SkywarnPlus/SOUNDS/TONES/CT-LINK ct2 = /usr/local/bin/SkywarnPlus/SOUNDS/TONES/CT-LINK
remotetx = /usr/local/bin/SkywarnPlus/SOUNDS/TONES/CT-LOCAL remotetx = /usr/local/bin/SkywarnPlus/SOUNDS/TONES/CT-LOCAL
``` ```
Courtesy tone files are located in `SOUNDS/TONES` by default and are configured through `config.ini` and `rpt.conf`. Courtesy tone files are located in `SOUNDS/TONES` by default and are configured through `config.ini` and `rpt.conf`.
# Pushover Integration # Pushover Integration
SkywarnPlus can use the free Pushover API to send WX alert notifications and debug messages directly to your smartphone or other devices. SkywarnPlus can use the free Pushover API to send WX alert notifications and debug messages directly to your smartphone or other devices.
1. Visit https://pushover.net/ to sign up for a free account. 1. Visit https://pushover.net/ to sign up for a free account.
2. Find your UserKey on your main dashboard 2. Find your UserKey on your main dashboard
3. Scroll down and create an Application/API key for your node 3. Scroll down and create an Application/API key for your node
@ -218,6 +214,10 @@ You can map the CONTROL.sh script to DTMF control codes in the `rpt.conf` file o
With this setup, you can control SkywarnPlus' functionality using DTMF commands. With this setup, you can control SkywarnPlus' functionality using DTMF commands.
# Customizing the Audio Files
SkywarnPlus comes with a library of audio files that can be replaced with any 8kHz mono PCM16 WAV files you want. These are found in the `SOUNDS/` directory by default, along with `DICTIONARY.txt` which explains audio file assignments.
# Testing # Testing
SkywarnPlus provides the ability to inject predefined alerts, bypassing the call to the NWS API. This feature is extremely useful for testing SkywarnPlus. SkywarnPlus provides the ability to inject predefined alerts, bypassing the call to the NWS API. This feature is extremely useful for testing SkywarnPlus.

Loading…
Cancel
Save

Powered by TurnKey Linux.