Politique de confidentialité
Dernière mise à jour : juin 2025 · Version app 1.0 · Bundle ID : com.laurinschwegler.euroguide
1. Responsable du traitement
Laurin Schwegler
[Adresse postale à compléter]
Suisse
E-mail : [email protected]
Cette application est un projet de travail de maturité non commercial. Aucun traitement de données à des fins commerciales n'est effectué.
2. Nos principes
EuroGuide ne traite que les données strictement nécessaires au fonctionnement de l'application. Il n'y a ni pistage ni publicité. Aucune donnée analytique, identifiant publicitaire ou empreinte numérique n'est collecté.
3. Données collectées et finalités
3.1 Données de localisation (CoreLocation)
L'application demande la permission de localisation pour deux raisons :
- Affichage sur la carte : Votre position actuelle est affichée localement sur l'appareil. Elle n'est jamais transmise au serveur.
- Géofencing : Jusqu'à 20 zones circulaires du parc (CLCircularRegion) sont surveillées. Lorsque vous entrez dans une zone, seul l'identifiant anonyme de la zone (une chaîne comme
zone_adventureland) est envoyé via HTTPS àep.connect-laur.in— aucune coordonnée GPS.
Permissions utilisées : NSLocationWhenInUseUsageDescription (défaut) et NSLocationAlwaysAndWhenInUseUsageDescription (optionnel, pour le géofencing en arrière-plan).
Les données de localisation ne sont pas journalisées ni conservées sur le serveur.
3.2 Notifications push (APNs)
Avec votre consentement, l'application reçoit un jeton APNs. Ce jeton est :
- stocké localement dans UserDefaults sous la clé
apns.deviceToken, - transmis via HTTPS à
ep.connect-laur.in/notifications/register, - stocké sur le serveur pour vous envoyer des conseils contextuels lors des entrées de zone.
Vous pouvez désactiver les notifications à tout moment dans les Réglages iPhone sous Notifications → EuroGuide. Le jeton stocké sera désenregistré à la prochaine ouverture de l'app.
3.3 Identifiant anonyme d'appareil
Au premier lancement, un UUID aléatoire (auth.deviceID) est généré et stocké localement. Il sert à s'authentifier auprès de l'API (flux OAuth2 client credentials). Le serveur stocke cet ID avec la langue choisie dans l'app. Aucune identification personnelle n'est possible à partir de ces données.
Stocké dans UserDefaults : auth.refreshToken, jwt_token, auth.deviceID.
Stocké sur le serveur : device_id, language.
3.4 Cache local
Les données suivantes sont stockées localement dans le cache de l'application et ne quittent jamais l'appareil :
~/Library/Caches/EuroGuideAPI/waitTimes.json– temps d'attente~/Library/Caches/EuroGuideAPI/showTimes.json– horaires des spectacles~/Library/Caches/EuroGuideAPI/openingTimes.json– horaires d'ouverture- Détails des attractions et listes de POI
~/Library/Caches/EuroGuideRouter/walkgraph.json– graphe de chemins (max. 7 jours)tiles.db– tuiles de carte hors-ligne (1,5 Mo, inclus dans l'app)
Le cache peut être effacé à tout moment via les Réglages iPhone (Général → Stockage iPhone → EuroGuide → Supprimer les données hors-ligne) ou en désinstallant l'application.
4. Services tiers
| Service | Finalité | Données transmises |
|---|---|---|
| ep.connect-laur.in (API propre) | Temps d'attente, spectacles, attractions, planification IA, push | JWT, device_id, langue, ID de zone (le cas échéant) |
| Overpass API (OpenStreetMap) | Graphe de chemins au premier lancement | Requête par bounding box uniquement ; aucune donnée utilisateur |
| Valhalla / FOSSGIS Routing | Routage de secours | Coordonnées de départ et d'arrivée (enceinte du parc) |
| Apple Push Notification Service (APNs) | Acheminement des notifications | Jeton APNs de l'appareil |
| MapLibre Native | Affichage de la carte hors-ligne | Aucune communication réseau |
5. Ce que l'application ne collecte pas
- Aucune donnée analytique ni statistique d'utilisation
- Aucun pistage, identifiant publicitaire ou empreinte numérique
- Aucun accès à HealthKit, Contacts, Photos, Microphone ou Caméra
- Aucun journal de localisation permanent sur le serveur
- Aucun identifiant Apple, aucune adresse e-mail, aucun mot de passe
6. Sécurité des données
Toute communication avec l'API est chiffrée via HTTPS (TLS 1.2+). Les jetons d'accès sont stockés dans UserDefaults iOS et ne sont pas partagés avec des tiers.
7. Vos droits
Vous avez le droit d'accéder à vos données, de les corriger et de les supprimer. Les seules données côté serveur étant votre device_id anonyme et votre préférence de langue, il suffit de désinstaller l'app ou de me contacter par e-mail.
Contact : [email protected]
8. Licences open source
- OpenStreetMap – Données cartographiques © contributeurs OpenStreetMap, ODbL 1.0
- MapLibre Native iOS – BSD 3-Clause
- Valhalla / FOSSGIS Public Routing – Mozilla Public License 2.0
- Swift OpenAPI Generator / Runtime – Apache 2.0
- Yams, swift-collections, swift-algorithms, swift-numerics – Apache 2.0
9. Modifications de cette politique
Tout changement significatif sera reflété dans la politique de confidentialité intégrée à l'application et la date en haut de ce document sera mise à jour. En tant que projet scolaire non commercial, des changements fondamentaux de logique de traitement des données ne sont pas prévus.