## 16. Audio-guides multi-séquences ### 16.1 Types d'audio-guides et modes de déplacement **Décision** : 4 modes distincts avec détection automatique #### 16.1.1 Classification par mode | Mode | Vitesse détection | Déclenchement | Use case | |------|-------------------|---------------|----------| | **🚶 Piéton** | <5 km/h | Manuel (bouton "Suivant") | Musées, visites urbaines, monuments | | **🚗 Voiture** | >10 km/h | Auto GPS + Manuel possible | Safari-parc, routes touristiques, circuits auto | | **🚴 Vélo** | 5-25 km/h | Auto GPS + Manuel possible | Pistes cyclables, circuits vélo, parcours nature | | **🚌 Transport** | Variable | Auto GPS + Manuel possible | Bus touristiques, trains panoramiques | **Détection automatique** : - Vitesse moyenne calculée sur 30 secondes - Suggestion mode au démarrage : "Détection : 🚗 Voiture. Est-ce correct ? [Oui] [Changer]" - User peut forcer mode manuellement (settings) **Justification** : - Flexibilité maximale créateurs et utilisateurs - Expériences optimisées par type de déplacement - Gestion cas limites (vélo lent vs piéton rapide) --- #### 16.1.2 Création d'un audio-guide (côté créateur) **Formulaire création** : ``` ┌────────────────────────────────────────┐ │ Nouvel audio-guide multi-séquences │ ├────────────────────────────────────────┤ │ Titre : [Safari du Paugre] │ │ Description : [Découvrez les animaux │ │ du parc en voiture...] │ │ │ │ Mode de déplacement : *obligatoire │ │ ○ 🚶 Piéton (navigation manuelle) │ │ ● 🚗 Voiture (GPS auto + manuel) │ │ ○ 🚴 Vélo (GPS auto + manuel) │ │ ○ 🚌 Transport (GPS auto + manuel) │ │ │ │ Vitesse recommandée : 30-50 km/h │ │ (si voiture/vélo/transport) │ │ │ │ ──────────────────────────────────── │ │ │ │ Séquences (ordre lecture) : │ │ │ │ 1. [📍] Introduction - Point d'accueil │ │ Lat: 43.1234, Lon: 2.5678 │ │ Rayon déclenchement : 30m │ │ Durée : 2:15 │ │ [🎵 Audio uploadé] [✏️] [🗑️] │ │ │ │ 2. [📍] Enclos des lions │ │ Lat: 43.1245, Lon: 2.5690 │ │ Rayon déclenchement : 30m │ │ Durée : 3:42 │ │ [📤 Upload audio] [✏️] [🗑️] │ │ │ │ 3. [📍] Enclos des girafes │ │ [+ Ajouter point GPS] │ │ │ │ [+ Ajouter séquence] │ │ │ │ 📊 Statistiques : │ │ · 2 séquences complètes │ │ · 5:57 durée totale │ │ · 320m distance totale │ │ │ │ [🗺️ Aperçu sur carte] │ │ [✅ Publier audio-guide] │ └────────────────────────────────────────┘ ``` **Métadonnées obligatoires** : | Champ | Requis | Détails | |-------|--------|---------| | **Titre audio-guide** | ✅ | 5-100 caractères | | **Description** | ✅ | 10-500 caractères | | **Mode déplacement** | ✅ | Piéton / Voiture / Vélo / Transport | | **Nombre séquences** | ✅ | Minimum 2, maximum 50 | | **Point GPS par séquence** | ✅ (sauf piéton) | Latitude, longitude (WGS84) | | **Rayon déclenchement** | ✅ (sauf piéton) | 10-100m selon mode | | **Vitesse recommandée** | ❌ | Optionnel, affichée utilisateur | | **Tags** | ✅ | 1-3 parmi liste prédéfinie | | **Classification âge** | ✅ | Tout public / 13+ / 16+ / 18+ | | **Zone diffusion** | ✅ | Polygon géographique | **Wizard de création** : - Étape 1 : Infos générales (titre, description, mode) - Étape 2 : Ajout séquences une par une - Étape 3 : Preview carte (trace + points) - Étape 4 : Validation modération (3 premiers audio-guides) **Justification** : - Contrôle total créateur sur expérience - Carte preview aide visualiser parcours - Wizard guidé = réduction friction création --- ### 16.2 Mode Piéton (manuel) **Décision** : Navigation manuelle avec pub auto-play #### 16.2.1 Passage entre séquences **Séquence normale (sans pub)** : 1. Séquence 1 se termine 2. Player se met en **pause automatique** 3. Message affiché : "Séquence 1 terminée. Appuyez sur Suivant quand vous êtes prêt." 4. User appuie sur [▶|] → Séquence 2 démarre immédiatement **Séquence avec publicité** (1 pub / 5 séquences) : 1. Séquence 2 se termine 2. **Publicité s'enchaîne automatiquement** (pas d'attente bouton) 3. Pub se lit (skippable après 5s) 4. Pub se termine → Player se met en **pause automatique** 5. Message : "Séquence 3 prête. Appuyez sur Suivant." 6. User appuie sur [▶|] → Séquence 3 démarre **Schéma flux** : ``` Séquence 1 [fin] → PAUSE → User clique → Séquence 2 [fin] → PUB AUTO-PLAY → PAUSE → User clique → Séquence 3 ``` **Fréquence pub** : - Gratuits : 1 pub toutes les 5 séquences (paramétrable admin 1/3 à 1/10) - Premium : 0 pub **Justification** : - Pub s'insère naturellement (pas d'attente utilisateur pour déclencher) - User garde contrôle rythme visite (pause après pub) - Monétisation effective créateurs - Premium reste attractif (0 interruption) --- #### 16.2.2 Navigation et contrôles **Décision** : Liberté totale utilisateur **Contrôles disponibles** : | Bouton | Fonction | Comportement | |--------|----------|--------------| | **[▶\|] Suivant** | Passe séquence suivante | Immédiat, même si séquence actuelle pas terminée | | **[\|◀] Précédent** | Retour séquence précédente | Saut direct séquence avant (pas de logique "replay si >10s") | | **[⏸️] Pause** | Pause temporaire | Reprend à position exacte | | **[▶️] Play** | Reprend lecture | Continue position actuelle | | **Liste séquences** | Navigation libre | Tap séquence → saut direct (même séquences non écoutées) | **Interface liste séquences** : ``` ┌────────────────────────────────────────┐ │ 🚶 Audio-guide Piéton │ │ Musée du Louvre │ ├────────────────────────────────────────┤ │ [Cover image] │ │ │ │ ▶️ 0:00 ──●────────── 3:42 │ │ │ │ Séquence 3/12 : La Joconde │ │ │ │ [|◀] [⏸️] [▶|] │ │ │ │ ──────────────────────────────────── │ │ │ │ 📋 Liste des séquences │ │ │ │ ✅ 1. Introduction (2:15) │ │ Écouté le 15/01/2026 │ │ │ │ ✅ 2. Pyramide du Louvre (1:48) │ │ Écouté le 15/01/2026 │ │ │ │ ▶️ 3. La Joconde (3:42) - EN COURS │ │ ──●──────────── 1:22/3:42 │ │ │ │ ⭕ 4. Vénus de Milo (2:58) │ │ │ │ ⭕ 5. Code d'Hammurabi (4:12) │ │ │ │ ⭕ 6. Victoire de Samothrace (3:25) │ │ │ │ ... +6 séquences │ │ │ │ [Tout afficher ▼] │ └────────────────────────────────────────┘ ``` **Navigation libre** : - User peut sauter séquences déjà connues - User peut revenir en arrière à tout moment - User peut aller directement à séquence 8 (même si 4-7 non écoutées) **Sauvegarde progression** : - Checkmarks ✅ sur séquences écoutées >80% - Position exacte sauvegardée dans séquence en cours **Justification** : - Utilisateur contrôle 100% son rythme - Adapté musées : visitor peut voir physiquement une œuvre lointaine et vouloir écouter sa description - Pas de frustration (liberté totale) --- ### 16.3 Mode Voiture (GPS automatique) **Décision** : GPS auto avec navigation manuelle conservée #### 16.3.1 Déclenchement et contrôles **Distinction audio-guides vs contenus géolocalisés simples** : ⚠️ **Important** : Les audio-guides multi-séquences fonctionnent différemment des contenus géolocalisés simples. | Type | Séquences | Déclenchement | Notification | Enchaînement | Comptabilité quota | |------|-----------|---------------|--------------|--------------|-------------------| | **Contenu géolocalisé simple** | 1 séquence unique | Notification 7s avant (temps ETA) | Sonore + icône | Fin → retour buffer normal | 1 contenu = 1 quota | | **Audio-guide multi-séquences** | 2 à 50 séquences | Au point GPS exact (distance 30m) | Ding + toast 2s | Séquences s'enchaînent auto | 1 audio-guide = 1 quota (toutes séquences) | **Fonctionnement GPS automatique** : 1. User démarre audio-guide en voiture (voir section 16.1 pour démarrage) 2. Séquence 1 démarre automatiquement au point GPS défini (rayon 30m) 3. Séquence 1 se termine 4. **Affichage progress bar** : distance temps réel + ETA jusqu'au prochain point 5. User roule vers point GPS suivant 6. Arrivée au point GPS suivant (rayon 30m) → **déclenchement automatique** séquence suivante 7. Notification sonore discrète : "Ding" (0.3s) + toast 2s : "Enclos des girafes" 8. Séquence suivante démarre immédiatement (pas de décompte) **Pas de système "7 secondes avant" pour les audio-guides** : - Contrairement aux contenus géolocalisés simples (voir [05-interactions-navigation.md](05-interactions-navigation.md#511-file-dattente-et-commande-suivant)) - Les séquences se déclenchent **au point GPS exact** (rayon 30m) - Raison : expérience guidée continue, user sait qu'il suit un parcours **Navigation manuelle CONSERVÉE** : | Bouton | État | Comportement | |--------|------|--------------| | **[▶\|] Suivant** | ✅ Toujours actif | Passe séquence suivante immédiatement (même hors point GPS) | | **[\|◀] Précédent** | ✅ Toujours actif | Retour séquence précédente (même hors point GPS) | | **[⏸️] Pause** | ✅ | Pause temporaire | | **Liste séquences** | ✅ | Saut direct possible | **Use cases navigation manuelle** : | Situation | Solution manuelle | |-----------|-------------------| | Embouteillage (séquence finie, point GPS loin) | User clique Suivant → avance manuellement | | Point GPS inaccessible (route fermée) | User clique Suivant → skip point | | Envie réécouter séquence précédente | User clique Précédent → retour | | Passager manipule l'app | Passager navigue librement | **Avertissement sécurité** : - Si vitesse **>10 km/h** ET user clique bouton (Suivant/Précédent) : - Toast 3 secondes : "⚠️ Manipulation en conduite détectée. Pour votre sécurité, demandez à un passager." - **Action quand même exécutée** (pas de blocage) - Justification : sensibilisation sans bloquer (passager peut légitimement manipuler) **Schéma flux** : ``` Point GPS 1 (30m) → Séquence 1 AUTO → User roule → Distance affichée → Point GPS 2 (30m) → Séquence 2 AUTO ↓ User clique Suivant (manuel) → Séquence 2 immédiate ``` **Justification** : - Flexibilité maximale : GPS optimise expérience MAIS user garde contrôle - Gestion cas limites : routes fermées, détours, embouteillages - Sécurité : warning sensibilise sans bloquer (passager légitime) --- #### 16.3.2 Affichage distance et guidage **Décision** : Distance + direction (PAS de carte miniature) **Interface en conduite** : ``` ┌────────────────────────────────────────┐ │ 🚗 Audio-guide Voiture │ │ Safari du Paugre │ ├────────────────────────────────────────┤ │ │ │ ▶️ 0:00 ──●────────── 2:15 │ │ │ │ Séquence 2/8 : Les lions │ │ │ │ ──────────────────────────────────── │ │ │ │ 📍 Prochain point │ │ │ │ Enclos des girafes │ │ │ │ ┌────────────────────────────────┐ │ │ │ │ │ │ │ ↗️ │ │ │ │ (direction) │ │ │ │ │ │ │ │ 320 mètres │ │ │ │ ≈ 40 secondes │ │ │ │ │ │ │ └────────────────────────────────┘ │ │ │ │ Vitesse actuelle : 28 km/h │ │ Vitesse recommandée : 20-30 km/h │ │ │ │ [|◀] [⏸️] [▶|] [📋 Liste] │ └────────────────────────────────────────┘ ``` **Affichage entre deux séquences** : Quand une séquence se termine et qu'il reste un point GPS suivant, l'interface bascule en mode "attente prochain point" : ``` ┌────────────────────────────────────────┐ │ 🚗 Audio-guide Voiture │ │ Safari du Paugre │ ├────────────────────────────────────────┤ │ │ │ ✅ Séquence 2/8 terminée │ │ Les lions │ │ │ │ ──────────────────────────────────── │ │ │ │ 📍 Prochain point │ │ │ │ Enclos des girafes │ │ │ │ ┌────────────────────────────────┐ │ │ │ [Progress bar] │ │ │ │ ████████░░░░░░░░░ 65% │ │ │ │ │ │ │ │ ↗️ │ │ │ │ (direction) │ │ │ │ │ │ │ │ 320 mètres │ │ │ │ ≈ 40 secondes │ │ │ │ │ │ │ └────────────────────────────────┘ │ │ │ │ Vitesse actuelle : 28 km/h │ │ │ │ [|◀] [▶️ Rejouer séq.] [▶|] │ └────────────────────────────────────────┘ ``` **Progress bar dynamique** : - Se remplit au fur et à mesure qu'on se rapproche du point - Calcul : `progress = 100 - (distance_actuelle / distance_initiale * 100)` - Exemple : distance initiale 500m, distance actuelle 175m → progress = 65% - Couleur : vert (#4CAF50) pour la partie remplie, gris (#E0E0E0) pour le reste **Bouton "Rejouer séq."** : - Permet de réécouter la séquence qui vient de se terminer - User clique → séquence actuelle redémarre depuis 0:00 - Utile si distraction pendant l'écoute --- **Informations affichées** : | Info | Mise à jour | Format | |------|-------------|--------| | **Distance** | Chaque seconde | "320 m" / "1.2 km" | | **ETA** | Chaque seconde | "≈ 40 secondes" / "≈ 2 minutes" | | **Direction** | Chaque 5s | Flèche indique direction (8 directions : ↑ ↗ → ↘ ↓ ↙ ← ↖) | | **Vitesse actuelle** | Chaque seconde | "28 km/h" | | **Vitesse recommandée** | Statique | "20-30 km/h" (définie par créateur) | | **Progress bar** | Chaque seconde | Pourcentage parcouru vers prochain point | **Calcul direction** : ```javascript // Calcul angle entre position actuelle et prochain point const currentGPS = getCurrentLocation(); const nextPoint = audioGuide.sequences[currentIndex + 1].location; const angle = calculateBearing(currentGPS, nextPoint); // 0-360° // Conversion en flèche (8 directions) const arrows = ['↑', '↗', '→', '↘', '↓', '↙', '←', '↖']; const index = Math.round(angle / 45) % 8; const direction = arrows[index]; ``` **Calcul ETA** : ```javascript const distance = calculateDistance(currentGPS, nextPoint); // mètres const currentSpeed = getCurrentSpeed(); // km/h if (currentSpeed > 5) { const eta = (distance / 1000) / currentSpeed * 3600; // secondes return formatETA(eta); // "≈ 40 secondes" ou "≈ 2 minutes" } else { return "En attente de déplacement"; } ``` **Justification** : - Distance + ETA = info essentielle sans surcharge visuelle - Direction (flèche) = aide se repérer sans carte complexe - Simplicité = moins distraction conducteur - Économie batterie (pas de rendu carte) --- #### 16.3.3 Rayon de déclenchement et tolérance **Décision** : Rayon configurable créateur avec défauts intelligents **Rayons par défaut** : | Mode | Rayon déclenchement | Rayon "point manqué" | Justification | |------|---------------------|----------------------|---------------| | **🚗 Voiture** | 30 mètres | 100 mètres | Vitesse élevée = anticipation | | **🚴 Vélo** | 50 mètres | 75 mètres | Vitesse variable, arrêts fréquents | | **🚌 Transport** | 100 mètres | 150 mètres | Arrêts bus/train, moins précis | **Configuration créateur** : - Curseur rayon : **10m → 200m** - Défaut pré-sélectionné selon mode choisi - Preview visuel : cercle sur carte (lors création) - Suggestion auto : "Recommandé : 30m pour voiture à 30 km/h" **Gestion point manqué** : ``` User passe à 110m du point GPS (hors rayon déclenchement 30m MAIS dans rayon tolérance 100m) ↓ Toast : "⚠️ Point manqué : Enclos des girafes" ↓ Popup 5 secondes : ┌────────────────────────────────────┐ │ Point manqué │ │ │ │ "Enclos des girafes" │ │ Vous êtes passé à 110m du point │ │ │ │ [🔊 Écouter quand même] │ │ [⏭️ Passer au suivant] │ │ [🔙 Faire demi-tour] │ └────────────────────────────────────┘ ``` **Actions popup** : | Bouton | Comportement | |--------|--------------| | **Écouter quand même** | Lance séquence immédiatement (même hors zone) | | **Passer au suivant** | Skip séquence, continue vers prochain point | | **Faire demi-tour** | Lance navigation GPS externe (Google Maps / Waze) vers point manqué | **Si user au-delà rayon tolérance (>100m)** : - Aucun popup (point trop loin, probablement hors itinéraire) - User peut naviguer manuellement (bouton Suivant) **Justification** : - Flexibilité créateur (ajuste selon terrain, vitesse prévue) - Gestion intelligente imprévus (détours, routes fermées) - User pas bloqué (toujours moyen avancer) --- ### 16.4 Modes Vélo et Transport **Décision** : Même logique voiture avec tolérances ajustées **Différences par rapport à mode voiture** : | Paramètre | Voiture | Vélo | Transport | |-----------|---------|------|-----------| | **Rayon déclenchement** | 30m | 50m | 100m | | **Rayon tolérance "point manqué"** | 100m | 75m | 150m | | **Vitesse recommandée affichée** | 20-50 km/h | 10-25 km/h | Variable (selon ligne) | | **Warning sécurité** | >10 km/h | >5 km/h | Désactivé | **Mode Vélo spécificités** : - Rayon plus large : vitesse variable, nombreux arrêts (feux, piétons) - Warning sécurité dès 5 km/h (vélo en mouvement) - Tolérance GPS moins stricte (tracé moins prévisible qu'auto) **Mode Transport spécificités** : - Rayon très large : arrêts fréquents (bus, train), ligne fixe - Pas de warning sécurité (user = passager, pas conducteur) - Vitesse recommandée = "Selon ligne" (pas de valeur fixe) - Tolérance horaire : si bus en retard, point peut se déclencher avec 2-3 min de délai **Comportement identique voiture** : - Navigation manuelle conservée (boutons actifs) - Affichage distance + ETA + direction - Gestion point manqué - Pub entre séquences **Justification** : - Vélo : moins de contrôle qu'auto (obstacles, arrêts), nécessite tolérance - Transport : moins de contrôle utilisateur (suit ligne fixe), rayon large compense - Même UX globale = cohérence --- ### 16.5 Publicités dans audio-guides **Décision** : Pub auto-play entre séquences TOUS modes #### 16.5.1 Règles universelles **Insertion publicité** : - Fréquence : **1 pub toutes les 5 séquences** (paramétrable admin 1/3 à 1/10) - Gratuits uniquement, **Premium 0 pub** - Pub s'enchaîne **automatiquement** après séquence - Skippable après **5 secondes** (règle standard RoadWave) - Volume normalisé -14 LUFS (comme pubs normales) **Comportement MODE PIÉTON** : ``` Séquence 2 [fin] → Pub AUTO-PLAY → Pub se termine → PAUSE AUTO → Message "Séquence 3 prête. Appuyez sur Suivant." → User clique [▶|] → Séquence 3 démarre ``` **Comportement MODE VOITURE/VÉLO/TRANSPORT** : ``` Séquence 2 [fin] → Pub AUTO-PLAY → Pub se termine → ATTENTE point GPS suivant OU user clique Suivant → Séquence 3 démarre ``` **Schéma complet** : | Mode | Après séquence normale | Après pub | |------|------------------------|-----------| | **Piéton** | Pause + attente user | Pause + attente user | | **Voiture** | Attente GPS OU user clique Suivant | Attente GPS OU user clique Suivant | | **Vélo** | Attente GPS OU user clique Suivant | Attente GPS OU user clique Suivant | | **Transport** | Attente GPS OU user clique Suivant | Attente GPS OU user clique Suivant | **Justification** : - Monétisation équitable créateurs (tous modes participent) - Pub s'insère naturellement (auto-play, pas d'attente utilisateur) - User garde contrôle : piéton clique Suivant, voiture peut skip manuel - Premium reste attractif (expérience 0 interruption) - Modèle économique viable --- #### 16.5.2 Métriques pub audio-guides **Dashboard créateur** : | Métrique | Affichage | |----------|-----------| | **Impressions pub** | Nombre de pubs insérées dans audio-guides | | **Écoutes complètes pub** | Nombre de pubs écoutées >80% | | **Taux skip pub** | % pubs skippées avant 5s vs après | | **Revenus pub audio-guides** | 3€ / 1000 écoutes complètes (6% CA pub) | **Distinction contenus normaux vs audio-guides** : - Dashboard sépare : "Revenus contenus classiques" / "Revenus audio-guides" - Permet créateur voir performance par type **Justification** : - Transparence créateur (comprend revenus) - Incite création audio-guides (nouvelle source revenus) --- ### 16.6 Reprise et sauvegarde progression **Décision** : Sauvegarde complète automatique avec popup intelligente #### 16.6.1 Sauvegarde automatique **Données sauvegardées** : | Info | Détail | Utilité | |------|--------|---------| | **Audio-guide ID** | Identifiant unique | Retrouver audio-guide | | **Séquence actuelle** | Index (ex: 3/12) | Reprise position | | **Position dans séquence** | Timestamp exact (ex: 1:42/3:20) | Reprise exacte | | **Séquences écoutées** | Liste avec checkmarks ✅ | Historique progression | | **Date dernière écoute** | Timestamp | Proposer reprise si <30j | | **GPS dernière position** | Coordonnées optionnelles | Info contextuelle (non utilisée pour reprise) | **Stockage** : | Environnement | Technologie | Utilité | |---------------|-------------|---------| | **Local** | SQLite mobile | Fonctionnement offline | | **Cloud** | PostgreSQL (sync auto) | Multi-device (reprendre sur autre appareil) | **Synchronisation** : - Sauvegarde locale : chaque fin de séquence + chaque 30s - Sync cloud : à la reconnexion réseau (batch) **Justification** : - Expérience fluide (pas de perte progression) - Multi-device (démarrer sur iPhone, continuer sur iPad) - Offline-first (fonctionne sans réseau) --- #### 16.6.2 Interface de reprise **Conditions popup** : - Dernière écoute **<30 jours** - Progression **>0%** et **<100%** (pas terminé) **Popup reprise** : ``` ┌────────────────────────────────────────┐ │ Reprendre l'audio-guide ? │ ├────────────────────────────────────────┤ │ 🚗 Safari du Paugre │ │ @safari_createur │ │ │ │ Progression : 3/8 séquences écoutées │ │ Dernière écoute : il y a 2 jours │ │ │ │ Vous étiez à : │ │ "Les lions" (1:42/3:20) │ │ │ │ [▶️ Reprendre] [🔄 Recommencer] │ │ [📋 Voir toutes les séquences] │ └────────────────────────────────────────┘ ``` **Actions** : | Bouton | Comportement | |--------|--------------| | **Reprendre** | Continue séquence 3 à position 1:42 exacte | | **Recommencer** | Reset progression, démarre séquence 1 depuis 0:00 | | **Voir séquences** | Affiche liste complète, user choisit séquence départ | **Expiration progression** : - Progression conservée **30 jours** - Après 30j : popup "Audio-guide expiré. Recommencez depuis le début ?" - Suppression données progression (mais historique "écouté" préservé) **Justification** : - Contexte clair : user sait exactement où il en est - Flexibilité : reprendre OU recommencer (choix utilisateur) - 30 jours = raisonnable pour tourisme multi-jours ou retour ultérieur --- #### 16.6.3 Multi-device **Scénario** : 1. User démarre audio-guide sur iPhone (séquences 1-3) 2. Progression sync cloud 3. Lendemain : user ouvre app sur iPad 4. Popup : "Reprendre Safari du Paugre sur cet appareil ?" 5. User clique Reprendre → continue séquence 4 **Conflit de version** : - Si modifications simultanées 2 appareils (rare) : **dernière modification gagne** - Toast : "Progression mise à jour depuis votre autre appareil" **Justification** : - Confort utilisateur (change d'appareil librement) - Use case réel : planning trajet sur tablette, écoute sur smartphone en voiture --- ## Récapitulatif Section 16 | Point | Décision | Coût | Complexité | |-------|----------|------|------------| | **16.1** Types audio-guides | 4 modes (piéton/voiture/vélo/transport) avec détection auto | 0€ | Moyenne | | **16.1.2** Création | Formulaire séquences + GPS + rayon + wizard guidé | 0€ | Moyenne | | **16.2.1** Piéton - Passages | Manuel AVEC pub auto-play entre séquences, pause après | 0€ | Faible | | **16.2.2** Piéton - Navigation | Liberté totale (skip, retour, saut direct liste) | 0€ | Faible | | **16.3.1** Voiture - Déclenchement | GPS auto + boutons manuels actifs (warning sécurité si >10 km/h) | 0€ | Moyenne | | **16.3.2** Voiture - Affichage | Distance + ETA + direction (flèche) + vitesse (PAS de carte) | 0€ | Faible | | **16.3.3** Voiture - Rayon | Configurable créateur (défauts 30m/50m/100m selon mode) | 0€ | Faible | | **16.4** Vélo & Transport | Mêmes règles avec tolérances ajustées + warning adapté | 0€ | Faible | | **16.5** Publicités | 1/5 séquences, auto-play TOUS modes, skippable 5s | 0€ | Faible | | **16.6.1** Sauvegarde | Complète (séquence + position + historique) local + cloud | 0€ | Faible | | **16.6.2** Reprise | Popup intelligente avec choix (reprendre/recommencer), expiration 30j | 0€ | Faible | | **16.6.3** Multi-device | Sync cloud PostgreSQL (reprendre sur autre appareil) | 0€ | Faible | **Coût total MVP : 0€** (GPS natif, calcul distance PostGIS) --- ## Points d'attention pour Gherkin - Tester 4 modes audio-guides (détection vitesse auto) - Tester création séquences avec points GPS + rayon configurable - Tester mode piéton : pause après séquence + pub auto-play + pause après pub + clic Suivant - Tester navigation libre piéton (skip, retour, saut direct liste) - Tester mode voiture : déclenchement GPS auto rayon 30m - Tester navigation manuelle voiture : boutons actifs + warning si vitesse >10 km/h - Tester affichage distance + ETA + direction (flèche 8 directions) - Tester rayon tolérance "point manqué" (popup 3 actions) - Tester mode vélo (rayon 50m) et transport (rayon 100m) - Tester insertion pub 1/5 séquences tous modes avec auto-play - Tester sauvegarde progression locale + sync cloud - Tester popup reprise (3 boutons : reprendre/recommencer/voir liste) - Tester expiration progression 30 jours - Tester multi-device : démarrer iPhone, continuer iPad - Tester gestion conflit progression simultanée 2 appareils