Add data providers for most other programmes

This commit is contained in:
Ian Renton
2025-09-27 10:00:12 +01:00
parent 7bdf6cf203
commit 27a61393cf
14 changed files with 439 additions and 102 deletions

29
main.py
View File

@@ -1,14 +1,17 @@
# Main script
import signal
from time import sleep
from providers.dxcluster import DXCluster
from providers.gma import GMA
from providers.pota import POTA
from providers.sota import SOTA
from providers.wwbota import WWBOTA
from providers.wwff import WWFF
# Shutdown function
def shutdown(sig, frame):
# Start data providers
print("Stopping program, this may take a few seconds...")
for p in providers: p.stop()
@@ -20,8 +23,18 @@ if __name__ == '__main__':
# Create providers
providers = [
POTA(),
DXCluster("hrd.wa9pie.net", 8000)
] # todo all other providers
SOTA(),
WWFF(),
WWBOTA(),
GMA(),
# todo HEMA
# todo PNP
# todo RBN
# todo packet?
# todo APRS?
DXCluster("hrd.wa9pie.net", 8000),
# DXCluster("dxc.w3lpl.net", 22)
]
# Set up spot list
spot_list = []
# Set up data providers
@@ -32,12 +45,16 @@ if __name__ == '__main__':
# todo thread to clear spot list of old data
# Todo serve spot API
# Todo spot API arguments e.g. "since" based on received_time of spots, sig only, dx cont, dxcc, de cont, band, mode, filter out qrt, filter pre-qsy
# Todo serve status API
# Todo serve apidocs
# Todo serve website
# TODO NOTES FOR NGINX REVERSE PROXY
# local cache time of 15 sec to avoid over burdening python?
# NOTES FOR FIELD SPOTTER
# TODO NOTES FOR FIELD SPOTTER
# Still need to de-dupe spots
# Still need to do QSY checking
# Still need to do QSY checking in FS because we can enable/disable showing them and don't want to re-query the API.
# Filter comments, still do in FS or move that here?