# OK Google — Bons Points sur Nest ## Important : Dialogflow « conversation » ne marche plus sur Nest Depuis le **13 juin 2023**, Google a arrêté les **Conversational Actions** (Dialogflow + « Dis à Bons Points… »). L’endpoint `/api/voice/dialogflow` reste utile pour **tests** et pour d’autres intégrations Dialogflow, mais **ne peut plus être invoqué directement sur une enceinte Nest** via une action conversationnelle. La voie officielle aujourd’hui : **Google Home Smart Home** (capteurs virtuels). --- ## Ce qui est déjà prêt côté serveur | URL | Rôle | |-----|------| | `GET /api/voice/ariana` | Réponse JSON (test) | | `GET /api/voice?prenom=pablo` | Idem | | `POST /api/voice/dialogflow` | Webhook Dialogflow (tests) | | `POST /api/smarthome` | Fulfillment Google Home (SYNC / QUERY) | Test rapide : ```bash curl -s https://bonpoint.ptits-pas.fr/api/voice/ariana curl -s -X POST https://bonpoint.ptits-pas.fr/api/smarthome \ -H "Content-Type: application/json" \ -d '{"requestId":"test","inputs":[{"intent":"action.devices.SYNC"}]}' ``` --- ## Principe Smart Home (recommandé) Chaque enfant apparaît comme un **capteur de batterie** (0–100 %) = son score de bons points. Phrases à essayer sur le Nest (en français) : - « OK Google, **quel est le niveau de batterie d’Ariana** ? » - « OK Google, **quelle est la batterie de Pablo** ? » - « OK Google, **niveau de batterie Hélia** » > Astuce famille : expliquer aux enfants que la « batterie » = leurs bons points. Les scores au-dessus de 100 s’affichent comme 100 % (limite Google). --- ## Configuration Google Home Developer (à faire une fois) ### 1. Créer le projet 1. Ouvrir [Google Home Developer Console](https://console.home.google.com/) 2. **Create project** → nom : `Bons Points` 3. Type d’intégration : **Cloud-to-cloud** ### 2. Fulfillment 1. Menu **Integrations** → votre intégration Cloud-to-cloud 2. **Fulfillment URL** : ``` https://bonpoint.ptits-pas.fr/api/smarthome ``` 3. Enregistrer ### 3. Account linking (obligatoire pour le Nest) Google exige un **OAuth 2.0** pour lier le compte dans l’app Google Home. Options possibles : - **Auth0** ou **Firebase Auth** (gratuit, adapté à un usage familial) - OAuth maison (plus technique) Une fois OAuth configuré, vous liez l’intégration dans **Google Home** → **Paramètres** → **Travaille avec Google**. ### 4. Test avant production 1. Dans la console : **Test Suite** → lancer SYNC et QUERY 2. Vérifier que 3 appareils apparaissent (Ariana, Pablo, Hélia) 3. Tester une QUERY sur un appareil → le score doit correspondre à l’app ### 5. Utilisation au quotidien 1. Lier l’intégration sur le compte Google du foyer 2. Les 3 « capteurs » sont découverts automatiquement 3. Les enfants demandent le niveau de batterie / points à voix haute --- ## Dialogflow (optionnel, tests uniquement) Si vous voulez quand même un agent Dialogflow pour tester le webhook : 1. [Dialogflow ES](https://dialogflow.cloud.google.com/) → nouvel agent **fr** 2. Intent `score_enfant` avec phrases : - Combien de points a Ariana ? - Quel est le score de Pablo ? - Et Hélia elle a combien ? 3. Paramètre `@sys.given-name` ou entité custom `prenom` : Ariana, Pablo, Hélia 4. Intent `score_tous` : Combien de points ? / Les scores ? 5. **Fulfillment** → activer webhook : ``` https://bonpoint.ptits-pas.fr/api/voice/dialogflow ``` 6. Tester dans la console Dialogflow (simulateur) — **pas sur le Nest**. --- ## Dépannage | Problème | Piste | |----------|--------| | Nest ne connaît pas l’action | Normal si vous utilisez encore Dialogflow conversationnel | | Appareils invisibles | Vérifier account linking + SYNC dans Test Suite | | Mauvais score | Vérifier `GET /api/public/scores` | | Hélia mal reconnue | Dire « Hélia » clairement ; le serveur accepte avec/sans accent | --- ## Évolutions possibles - OAuth simplifié intégré à l’app (panneau parent) - Cast TTS vers le Nest après une routine (plus complexe) - Phrases personnalisées via Home Assistant (si un jour vous l’adoptez)