https://github.com/adamsbytes/notifierr
An API server to send SMS messages based on webhooks from Radarr/Sonarr.
https://github.com/adamsbytes/notifierr
api-server automation radarr sonarr
Last synced: 8 months ago
JSON representation
An API server to send SMS messages based on webhooks from Radarr/Sonarr.
- Host: GitHub
- URL: https://github.com/adamsbytes/notifierr
- Owner: adamsbytes
- License: gpl-3.0
- Created: 2022-03-19T20:55:43.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-10-02T08:52:05.000Z (over 2 years ago)
- Last Synced: 2025-09-28T19:15:23.785Z (9 months ago)
- Topics: api-server, automation, radarr, sonarr
- Language: Python
- Homepage: https://pypi.org/project/notifierr/
- Size: 102 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# notifierr
notifierr is an SMS notification service used in conjunction with Radarr/Sonarr to send SMS notifications when movies and TV shows are available to watch.
## Installation
The easiest way to install notifierr is with pip
```sh
python3 -m pip install notifierr
```
You can also clone the repository directly and run setup.py manually
```sh
git clone https://github.com/adamsbytes/notifierr.git
cd notifierr
python3 setup.py install
```
## Usage
### Configuring the Server
You must edit `notifierr/config.py` with your own values before starting the API server. You'll also need to set some environment variables, depending on which SMS provider you're using.
#### *Twilio SMS provider*
The following environment variables are required and can be found in your Twilio console:
`TWILIO_ACCOUNT_SID`: Twilio account SID
`TWILIO_AUTH_TOKEN`: Twilio auth token
`TWILIO_FROM_NUMBER`: the Twilio phone number you want to send messages from
### Starting the Server
__NOTE__: pip installs may need to add `~/.local/bin` to their PATH
For pip installs:
```sh
notifierr --host 0.0.0.0 --port 8181
```
To manually start the server:
```sh
$appdir/cli.py --host 0.0.0.0 --port 8181
```
### Available API endpoints
`GET /version`: responds with the running version of notifierr
`POST /message/movie/{uid}`: sends a detailed notification message for new movies (Radarr) to the phone numbers associated with uid
`POST /message/tv/{uid}`: sends a detailed notification message for new TV episodes (Sonarr) to the phone numbers associated with uid
## Configuring Radarr/Sonarr
### A high level overview
The app uses the UID portion of `http://ip:8181/message/tv/UID` to select which phone numbers to use for the message. These are configured in the app's `config.py` file.
To have granular control over which numbers are messaged about which downloads, use **Tags** in Radarr/Sonarr!
For example, to let Dave know when his favorite show is ready, put his number in the `config.py` with any UID you'd like. Tag Dave's show with a unique tag, then create a notification that triggers with that same tag and use a URL containing Dave's UID at the end.
### A step by step walkthrough
Once notifierr is running, in Radarr/Sonarr, visit Settings > Connect and create a new Connection.
For the connection type, select `Webhook`
For the notification triggers, choose `On Download` or `On Import` (depending on the option available)
For the URL, enter `http://notifierr-ip-address:8181/message/tv/$uid`, replacing `$uid` with the UID you entered in `config.py` to correspond with the numbers who should receive the message
For the method, select `POST`
Press `Test` to validate the connection, then press `Save`.
### A picture is worth a thousand words
#### Radarr Configuration Picture

#### Sonarr Configuration Picture
