Open slimonslimon opened 11 months ago
Chápu to tak, že každé auto bude posílat data na sondehub? Mne tato aplikace připadá jako velice nabytečná. A že data na sondehub má posílat jen jedna (ta centrální) aplikace. Tohle tu celou strukturu značně komplikuje a vytváří mnoho cest, jakdata mohou téct. Což mi nepřipadá jako optimální.
Trochu toto řešění chápu. Ale ne v našich měřítkách.
Já bych tuto aplikaci vyřadil a #4 a #5 bych nechal uploadovat přímo na centrální web. #5 může svou polohu posílat na sondehub rovnou.
Vyřazením této aplikace odpadne i mnoho problémů s řešením deduplikace dat v autech a podobné "problémy".
Právě, že každé auto bude posílat data co přijako sik modemem do této aplikace (pomocí #4 ). Tato aplikace pak bude nejlepší polohu balonu přijatou přes Sikmodemy posílat do sonderhubu. (vyhodnocení nejlepší == deduplikace, se bude řešit na servru v této menší aplikaci, nikoliv v autech)
Puvodní centrální aplikace se rozpadá na 3 samostatné aplikace běžící na serveru (tato, #2 a #6 ), aby důležité části byli jednoduché skripty, které jdou snadno zkontrolovat. A zároveň, aby případné potíže #6 nezpůsobily výpadek proudu dat na SonderHub.
Aplikace, která příjmá na HTTP API data od aut a uploaduje je na SonderHub a Ground APP
Nějaké verze zřejmně existovala asi v pythonu (možná každé auto uploadovalo přímo na sonderhub)
Auto může přijmout data z balonu, ale nemusí mít zrovna internet, zasílá tedy data se zpožděním. Jiné auto ale mohlo mezi tím přijmout čerstvejší informace z balonu. Aplikace pak nebude uploadovat na SonderHUB data, která jsou starší než data, která již uploadovala. Data budou opatřena nějakou časovou známkou (asi z autopilota i z auta)
Na Ground APP se zašlou všechna přijatá data, aby je aplikace mohla zalogovat. A zbrazovat, které auto co přijalo
[ ] příjem dat na HTTP API
[ ] deduplikace dat (víc aut přijme stejná data)
[ ] vyřešení příjmu starších dat
[ ] odeslání dat na SonderHUB
[ ] odeslání dat na Ground APP
[ ] heartbeat na Ground APP, aby bylo jasné že aplikace běží