μPlaneAlert is small python file which polls a tar1090 instance to report on interesting planes seen by a SDR. This is a subset of the functionality provided by docker-planefence written by Ramon F. Kolb. It's intended to run entirely in RAM and sleep between 90 second runs. It's one file, one process. Less functionally but easier on systems with less resources.
Traditionally you would run upa in the docker-compose.yml stack along with ultrafeeder. It's default configuration is set to directly access the ultrafeeder container and read aircraft data, however that is configurable and it can run anywhere that has access to the either aircraft.json file (commonly from tar1090) or the net-api port of readsb (accessable if you have direct access to the ultrafeeder or readsb container even if you aren't running tar1090).
services:
ultrafeeder: <etc>
upa:
image: ghcr.io/jquagga/upa:main
container_name: upa
hostname: upa
restart: unless-stopped
environment:
- UPA_NOTIFY_URL=mastodons://API_KEY@airwaves.social?visibility=unlistedupa is configured entirely by environmental variables.
- UPA_NOTIFY_URL - An apprise URL stating where to post planealert notifications.
It can be comma separated so you can message multiple services at once.
- UPA_PADATABASE_URL - The URL of interesting planes to send alerts on.
By default, this is the SDR Enthusiasts list (same as planefence proper).
- UPA_JSON_URL - URL to the aircraft.json provided by tar1090.
By default it will work if upa is running in the same network as ultrafeeder.
upa polls data from tar1090 and there are two settings which increase the amount of information it can provide. ENABLE_AC_DB defaults to on I believe, however the addition of --db-file-lt will allow upa to get "long form" plane descriptions. Think "AIRBUS A320-Neo" instead of "A32N". However if you like the short form, omitting this (but including the enable AC_DB) should allow that.
services:
ultrafeeder:
environment:
- TAR1090_ENABLE_AC_DB=true
- READSB_EXTRA_ARGS=--db-file-ltPull requests are welcome! However we are still very much in the build phase so, I'm substantially changing things between updates. Once it settle's down then it may make more sense.
I'm probably going to resist feature creep as this was always supposed to be a basic shell. However it's really easy to fork this repo, have github build docker images (take a look in the .github folder) and change your docker-compose to utilize those images. Less configuration and "just run".
- Ramon F. Kolb and docker-planefence are the basis for which this code is based on.
- wreadsb/tar1090/@wiedehopf is the core of everything upa is producing. It is the upstream data source.
- SDR Enthusiasts maintain a dozen useful images for adsb, acars, and other radio related projects.
- Apprise powers the notification system. Drop the notification to the apprise url and it handles it from there. upa wouldn't do what it does without it.