# language: fr

@api @audio-guides @car-mode @geolocation @mvp
Fonctionnalité: Déclenchement GPS automatique des audio-guides en mode voiture

  En tant qu'utilisateur en voiture
  Je veux que les audio-guides se déclenchent automatiquement à l'approche des points d'intérêt
  Afin de profiter d'une expérience guidée sans interaction manuelle pendant la conduite

  Contexte:
    Étant donné que le système de déclenchement en mode voiture respecte:
      | Paramètre                           | Valeur         |
      | Rayon de déclenchement              | 200-500m       |
      | Vitesse max pour déclenchement      | 90 km/h        |
      | Ordre de séquences                  | Strict         |
      | Notification visuelle               | Minimale       |
      | Notification audio                  | Prioritaire    |
      | Auto-play                           | Obligatoire    |

  Scénario: Démarrage d'un audio-guide en mode voiture
    Étant donné un utilisateur "alice@roadwave.fr" en mode voiture
    Et elle roule à 50 km/h sur l'autoroute A6
    Quand elle lance l'audio-guide "Route des Châteaux de la Loire"
    Alors l'audio de la séquence d'introduction démarre automatiquement
    Et l'interface minimaliste en mode voiture s'affiche:
      | Élément                  | État                              |
      | Carte                    | Simplifiée, zoom automatique      |
      | Notifications visuelles  | Minimales                         |
      | Prochain point           | Château de Chambord - 25 km       |
      | ETA                      | Arrivée dans 18 minutes           |
      | Contrôles audio          | Gros boutons [Pause] [Skip]       |
    Et un événement "AUDIO_GUIDE_STARTED_CAR_MODE" est enregistré
    Et la métrique "audio_guide.started.car_mode" est incrémentée

  Scénario: Déclenchement automatique à l'approche d'un point d'intérêt
    Étant donné un utilisateur "bob@roadwave.fr" en mode voiture à 60 km/h
    Et il écoute l'audio-guide "Route des Châteaux de la Loire"
    Et il approche du Château de Chambord
    Quand il entre dans un rayon de 400m du château (configuré par le créateur)
    Alors l'audio en cours se termine en fondu (3 secondes)
    Et l'audio de la séquence "Château de Chambord" démarre automatiquement
    Et une notification audio est jouée: "À votre droite, Château de Chambord"
    Et une notification visuelle minimale s'affiche brièvement (2s):
      | Élément          | Contenu                    |
      | Titre            | Château de Chambord        |
      | Direction        | → À droite                 |
      | Distance         | 400m                       |
    Et un événement "SEQUENCE_AUTO_TRIGGERED_CAR" est enregistré
    Et la métrique "audio_guide.sequence.car.triggered" est incrémentée

  Scénario: Calcul de l'ETA dynamique basé sur la vitesse réelle
    Étant donné un utilisateur "charlie@roadwave.fr" en mode voiture
    Et il approche du prochain point d'intérêt à 15 km
    Et il roule à 80 km/h
    Quand le système calcule l'ETA
    Alors l'ETA affiché est: "Arrivée dans 11 minutes"
    Quand il ralentit à 50 km/h (bouchon)
    Alors l'ETA est recalculé en temps réel: "Arrivée dans 18 minutes"
    Et un événement "ETA_RECALCULATED" est enregistré
    Et la métrique "audio_guide.eta.updated" est incrémentée

  Scénario: Notification vocale d'approche 2km avant le point
    Étant donné un utilisateur "david@roadwave.fr" en mode voiture à 70 km/h
    Et il écoute l'audio-guide "Route des Châteaux de la Loire"
    Quand il est à 2 km du Château de Chenonceau
    Alors une notification vocale est jouée par-dessus l'audio actuel:
      "Dans 2 kilomètres, vous découvrirez le Château de Chenonceau"
    Et le volume de l'audio actuel est réduit de 50% pendant la notification (ducking audio)
    Et après la notification, le volume reprend normalement
    Et un événement "POI_ADVANCE_NOTIFICATION" est enregistré avec distance: 2000m
    Et la métrique "audio_guide.advance_notification" est incrémentée

  Scénario: Gestion du dépassement d'un point d'intérêt sans déclenchement
    Étant donné un utilisateur "eve@roadwave.fr" en mode voiture à 90 km/h
    Et elle approche du Château d'Amboise (séquence #3)
    Mais elle a manqué la séquence #2 (Château de Chaumont)
    Quand elle entre dans le rayon du Château d'Amboise
    Alors l'audio de la séquence #2 est automatiquement joué d'abord
    Et un message vocal indique: "Séquence précédente: Château de Chaumont"
    Et après la fin de la séquence #2, la séquence #3 démarre
    Et un événement "SEQUENCE_CATCH_UP" est enregistré
    Et la métrique "audio_guide.sequence.catch_up" est incrémentée

  Scénario: Marquage automatique d'une séquence comme "manquée"
    Étant donné un utilisateur "frank@roadwave.fr" en mode voiture à 100 km/h
    Et il a dépassé le Château de Chaumont sans entrer dans son rayon
    Et il s'éloigne maintenant à plus de 5 km
    Alors la séquence "Château de Chaumont" est marquée comme "Manquée"
    Et elle reste disponible dans la liste pour écoute manuelle ultérieure
    Et un événement "SEQUENCE_MISSED" est enregistré avec raison: "too_fast"
    Et la métrique "audio_guide.sequence.missed" est incrémentée

  Scénario: Pause automatique lors d'un appel téléphonique
    Étant donné un utilisateur "grace@roadwave.fr" en mode voiture
    Et elle écoute l'audio-guide à la position 3min 20s
    Quand elle reçoit un appel téléphonique via CarPlay
    Alors l'audio-guide se met automatiquement en pause
    Et la position de lecture est sauvegardée: 3min 20s
    Et un événement "AUDIO_PAUSED_PHONE_CALL" est enregistré
    Quand l'appel se termine
    Alors l'audio-guide reprend automatiquement à 3min 20s
    Et un événement "AUDIO_RESUMED_AFTER_CALL" est enregistré
    Et la métrique "audio_guide.interruption.phone" est incrémentée

  Scénario: Intégration avec CarPlay pour affichage sur écran véhicule
    Étant donné un utilisateur "henry@roadwave.fr" en mode voiture
    Et son iPhone est connecté via CarPlay
    Quand il lance l'audio-guide "Route des Châteaux de la Loire"
    Alors l'interface CarPlay s'affiche sur l'écran du véhicule:
      | Élément                  | Affichage                      |
      | Carte simplifiée         | Vue routière optimisée         |
      | Prochain point           | Nom + distance + ETA           |
      | Contrôles audio          | Gros boutons tactiles          |
      | Progression              | Barre 3/10 séquences           |
      | Commandes vocales        | "Dis Siri, suivant"            |
    Et les contrôles au volant du véhicule fonctionnent (lecture/pause)
    Et un événement "CARPLAY_SESSION_STARTED" est enregistré
    Et la métrique "audio_guide.carplay.used" est incrémentée

  Scénario: Commandes vocales Siri pour contrôle sans les mains
    Étant donné un utilisateur "iris@roadwave.fr" en mode voiture
    Et elle écoute l'audio-guide via CarPlay
    Quand elle dit "Dis Siri, mets en pause"
    Alors l'audio-guide se met en pause
    Quand elle dit "Dis Siri, reprends la lecture"
    Alors l'audio-guide reprend
    Quand elle dit "Dis Siri, séquence suivante"
    Alors la séquence suivante démarre
    Et un événement "VOICE_COMMAND_EXECUTED" est enregistré avec commande: "next"
    Et la métrique "audio_guide.voice_commands.used" est incrémentée

  Scénario: Adaptation du volume en fonction de la vitesse du véhicule
    Étant donné un utilisateur "jack@roadwave.fr" en mode voiture
    Et il écoute l'audio-guide avec volume configuré à 70%
    Quand il roule à 50 km/h
    Alors le volume reste à 70% (bruit ambiant faible)
    Quand il accélère à 130 km/h sur autoroute
    Alors le volume augmente automatiquement à 85% (compensation du bruit)
    Et un événement "VOLUME_AUTO_ADJUSTED" est enregistré avec vitesse: 130, volume: 85
    Et la métrique "audio_guide.volume.auto_adjusted" est incrémentée

  Scénario: Désactivation temporaire en cas de vitesse excessive
    Étant donné un utilisateur "kate@roadwave.fr" en mode voiture
    Et elle écoute l'audio-guide sur autoroute
    Quand elle dépasse les 110 km/h
    Alors l'audio continue de jouer normalement
    Mais aucune nouvelle séquence ne se déclenche automatiquement
    Et un message vocal indique: "Déclenchements automatiques suspendus à haute vitesse"
    Quand elle ralentit en dessous de 90 km/h
    Alors les déclenchements automatiques sont réactivés
    Et un événement "AUTO_TRIGGER_SPEED_LIMITED" est enregistré
    Et la métrique "audio_guide.speed.limited" est incrémentée

  Scénario: Mode nuit avec interface sombre automatique
    Étant donné un utilisateur "luke@roadwave.fr" en mode voiture
    Et il est 22h30 (nuit)
    Quand il utilise l'audio-guide
    Alors l'interface passe automatiquement en mode nuit:
      | Élément              | Mode nuit                    |
      | Fond d'écran         | Noir                         |
      | Texte                | Blanc/Gris clair             |
      | Carte                | Thème sombre                 |
      | Luminosité           | Réduite de 40%               |
    Et les notifications visuelles sont encore plus discrètes
    Et un événement "NIGHT_MODE_AUTO_ENABLED" est enregistré
    Et la métrique "audio_guide.night_mode.enabled" est incrémentée

  Scénario: Connexion automatique via Android Auto
    Étant donné un utilisateur "mary@roadwave.fr" avec téléphone Android
    Et son téléphone est connecté via Android Auto
    Quand elle lance l'audio-guide "Route des Châteaux de la Loire"
    Alors l'interface Android Auto s'affiche sur l'écran du véhicule
    Et les fonctionnalités sont identiques à CarPlay:
      | Fonctionnalité       | Disponible |
      | Carte simplifiée     | Oui        |
      | Contrôles audio      | Oui        |
      | Commandes vocales    | Oui (Google Assistant) |
      | Notifications        | Oui        |
    Et un événement "ANDROID_AUTO_SESSION_STARTED" est enregistré
    Et la métrique "audio_guide.android_auto.used" est incrémentée

  Scénario: Gestion de la perte de signal GPS temporaire
    Étant donné un utilisateur "nathan@roadwave.fr" en mode voiture
    Et il écoute l'audio-guide dans un tunnel
    Quand le signal GPS est perdu pendant 2 minutes
    Alors l'audio en cours continue de jouer normalement
    Et la position estimée est calculée selon la vitesse et direction précédentes
    Et un message discret s'affiche: "Signal GPS perdu - Position estimée"
    Quand le signal GPS est retrouvé
    Alors la position est recalculée immédiatement
    Et les déclenchements automatiques sont réactivés
    Et un événement "GPS_SIGNAL_RESTORED" est enregistré
    Et la métrique "audio_guide.gps.signal_lost" est incrémentée

  Scénario: Statistiques de fin de parcours en mode voiture
    Étant donné un utilisateur "olive@roadwave.fr" en mode voiture
    Et elle vient de terminer l'audio-guide "Route des Châteaux de la Loire"
    Quand elle arrive à destination
    Alors un écran de statistiques s'affiche:
      | Métrique                 | Valeur              |
      | Séquences écoutées       | 9/10                |
      | Séquences manquées       | 1 (trop rapide)     |
      | Distance parcourue       | 142 km              |
      | Temps total              | 2h 15min            |
      | Temps d'écoute           | 1h 05min            |
      | Vitesse moyenne          | 63 km/h             |
      | Badge débloqué           | Voyageur des châteaux |
    Et un bouton "Partager mon voyage" est disponible
    Et un événement "AUDIO_GUIDE_COMPLETED_CAR" est enregistré
    Et la métrique "audio_guide.completed.car_mode" est incrémentée

  Scénario: Métriques de performance du mode voiture
    Étant donné que 50 000 utilisateurs ont utilisé l'audio-guide en mode voiture
    Quand les métriques d'usage sont collectées
    Alors les indicateurs suivants sont disponibles:
      | Métrique                                  | Valeur cible |
      | Taux de déclenchement automatique         | > 90%        |
      | Taux de séquences manquées                | < 15%        |
      | Temps moyen entre déclenchements          | 8 minutes    |
      | Précision du calcul ETA                   | ±3 minutes   |
      | Utilisation de CarPlay/Android Auto       | 65%          |
      | Utilisation de commandes vocales          | 45%          |
    Et les métriques sont exportées vers le système de monitoring
