Ophelia analyys
Ülevaade
Ophelia on hajussüsteem, mis koosneb kolmest osast: klientrakendusest, veebiteenusest ja ilmajaamast. Kasutajatel on võimalik endale luua personaliseeritud ilmajälgimise tabel ning ka oma ilmajaamadest saata andmeid Ophelia-sse.
Klientrakendus
Klientrakendus on ReactJS raamistikule loodud süsteem, mis kuvab kasutajale eesti kaardil ilma Eesti eripaigust. Samuti on võimalik kaardile märkida oma ilmajaamast saadetud andmeid. Klientrakenduses on registreeritud kasutajal võimalik salvestada isiklikud asukohad ning vaadata erinevaid ilmaandmeid, mis selles asukohas on mõõdetud. Klientrakenduses on võimalik registreeritud kasutajal teha endale API võti ning saata kokkulepitud kujul andmeid oma ilmajaamast Veebiteenusesse ning neid, siis läbi klienrakenduse näha. Samuti on klientrakenduses võimalik ennast registreerida, parooli meelde tuletada.
Veebiteenus
Veebiteenus pakub informatsiooni klientrakendusele, võtab vastu ilma informatsiooni erinevatelt osapooltelt ning teeb ise päringuid Ilmateenistus-e serverile, et uuendada ilma Eesti eripaigust korra ühe tunni jooksul.
Endpointid
Admin + kasutaja
- GET /weather - esilehele kaardile kuvatav informatsioon, WeatherStation{Location,WeatherData}
- GET /weather/preferences - kasutaja lemmikasukohtade WeatherStation data võtmine
- POST /weather/preferences - kasutaja lemmikasukohtade salvestamine
- POST /signup
- POST /password/remind
- GET /weather/station - kasutaja enda ilmajaamade ülevaade
- POST /weather/station - lisab ilmajaama kasutajale
- DELETE /weather/station/[id] - kustutab kasutaja poolt salvestatud ilmajaama
- GET /oauth - ülevaade API keydest
- POST /oauth - genereeri kasutajale API key
- POST /login
Admin
- GET /user - kuva list kõikidest kasutajatest
- PATCH /user/[id]/[status] - keela kasutajale lehe kasutamine / luba keelatud kasutajal lehe kasutamine
- GET /stats - erinev statistika lehe kasutuse kohta
Automaatsed tööd
- Korra tunnis tuleb Ilmateenistuse lehel teha päring ning salvestada uued ilmaandmed andmebaasi