Skip to content

Commit

Permalink
Added import documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
FrancescoWeik authored and nicokant committed Jul 14, 2023
1 parent 56c645d commit 3d124d7
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -182,3 +182,10 @@ L'applicazione è costituita da:
Le domande vengono generate tramite i file presenti nella cartella [create_geometry_spatialite](AllNeededDirectories/create_geometry_remake/create_geometry_spatialite). Qui le missioni vengono generate consultando un file .yaml e ciclando su di esso. Successivamente le vie comprendenti della loro geometria vengono salvate sottoforma di geojson e xml, in modo da essere poi utilizzate per creare i pbf tramite tippecanoe. I pbf serviranno poi a MapLibre per mostrare le vie.</br>
Una volta generate le domande; tramite [tippecanoe](AllNeededDirectories/tippecanoe/tippecanoe_funzionante/NewSystem) vengono generati i pbf e uniti alcuni file in un unico solo per comodità. I pbf vengono poi letti da MapLibre per mostrare i dati al giocatore. Vengono utilizzati i pbf in quanto peseranno meno lato utente durante il caricamento. (pesano di più però lato server)</br>
La [web-app](AllNeededDirectories/bicycle-osm-app) per ora contiene solo 2 lingue, inglese e italiano. Se si vogliono aggiungere lingue basterà modificare il file [translation.js](AllNeededDirectories/bicycle-osm-app/src/utils) rispettando i parametri usati.

# IMPORT LOGIC: </br>
L'import dei dati verso OSM viene effettuato tramite socket. In particolare la web-app fa una richiesta ogni 40 minuti per vedere se le domande hanno ricevuto una risposta e se queste hanno ricevuto 2 validazioni. Per ogni risposta con 2 validazioni viene ricercato lo user che ha dato la risposta, se questo viene trovato e ha fatto il login tramite OSM allora il dato viene importato dallo user verso OSM. Se lo user invece non ha effettuato il login tramite OSM il dato viene importato tramite un nostro account custom. Se invece lo user non viene trovato allora il dato non viene inviato. Il procedimento viene effettuato ogni 40 minuti e, se lo user non viene trovato dopo 5 volte, allora il dato viene inviato direttamente da un nostro account custom.
Prima di effettuare l'import viene fatta una richeista get dell'elemento di cui si vuole fare l'update. Se questa richiesta non va a buon fine allora l'elemente non verrà aggiornato e verrà quindi scartato.
Durante l'import viene aperto un changeset con sorgente Biking-Improver. Una volta inviato il dato i cambiamenti che sono stati effettuati vengono salvati anche nel database nel caso in cui sia necessario effettuare un reverse.
è necessario quindi avere un account dotato di pw e id per effettuare gli importche non vengono eseguiti dagli user.

0 comments on commit 3d124d7

Please sign in to comment.