From 4206fde7f06a7b1dd12af2c539b12627507d271a Mon Sep 17 00:00:00 2001 From: Thomas Fransolet Date: Thu, 10 Sep 2026 12:05:06 +0200 Subject: [PATCH] =?UTF-8?q?Ray-Ban=20Meta=20:=20le=20SDK=20DAT=20tel=20qu'?= =?UTF-8?q?il=20est=20r=C3=A9ellement=20int=C3=A9gr=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit flutter_meta_wearables_dat 0.9.1 et app_links remplacent les dépendances « à décommenter quand publiées ». Le SDK natif vit sur GitHub Packages : sans PAT read:packages dans local.properties, le build tombe en 401 — et un token expiré peut passer inaperçu, Gradle servant son cache. Note ce que le SDK ne donne pas (ni micro, ni haut-parleur, ni bouton : le vocal passe par le routage Bluetooth) et pourquoi iOS n'est pas activé. Co-Authored-By: Claude Opus 5 (1M context) --- rayban-meta-integration.md | 39 +++++++++++++++++++++++++++++--------- 1 file changed, 30 insertions(+), 9 deletions(-) diff --git a/rayban-meta-integration.md b/rayban-meta-integration.md index e9abc8c..3169b61 100644 --- a/rayban-meta-integration.md +++ b/rayban-meta-integration.md @@ -25,13 +25,33 @@ L'architecture existante (AssistantService, QR scanner, beacons, géoloc) est ** | **ElevenLabs** | Synthèse vocale TTS | https://elevenlabs.io — tier gratuit ou payant selon volume | ### SDK Flutter (developer preview) -Les packages Meta SDK doivent être ajoutés à `pubspec.yaml` quand publiés : ```yaml -# Décommenter quand disponibles : -# meta_wearables_dat: any # Android -# meta_wearables: any # iOS (ChunkyTofuStudios) +flutter_meta_wearables_dat: ^0.9.1 # Android API 29+ et iOS 17.2+ — SDK DAT 0.9.0 +app_links: ^6.4.1 # retour du deep link Meta AI → handleUrl() ``` -Vérifier les versions actuelles sur pub.dev : `meta_wearables_dat`, `meta_wearables`. + +Le SDK natif est publié sur **GitHub Packages**, pas sur Maven Central. Il faut un +PAT GitHub avec le scope `read:packages`, dans `android/local.properties` : + +```properties +github_token=ghp_xxxx +``` + +Sans lui, le build échoue en `401 Unauthorized` sur `maven.pkg.github.com`. Un build +peut sembler passer alors que le token est expiré : Gradle sert les artefacts depuis +son cache local. Vérifier le token, pas le build. + +**iOS n'est pas activé** malgré le support du package. Le coût réel : +- deployment target à **17.2** pour toute l'app visiteur (Podfile est à 12.0) +- dictionnaire `MWDAT` dans Info.plist (`MetaAppID`, `ClientToken`, `TeamID`) — le + mode développeur `"0"` d'Android ne suffit pas +- choix d'un transport caméra : Wi-Fi (entitlements Hotspot Configuration + Wi-Fi + Information, `NSLocalNetworkUsageDescription`, +10 s à la 1re connexion) ou + Bluetooth Classic (`UISupportedExternalAccessoryProtocols`, bande passante moindre) +- la publication publique reste limitée aux partenaires Meta sous developer preview + +Le SDK DAT n'expose **ni micro, ni haut-parleur, ni bouton** des lunettes. Tout le +pipeline vocal passe hors SDK (routing Bluetooth HFP/A2DP via `AudioRoutingChannel`). --- @@ -130,7 +150,7 @@ flutter run --dart-define=ELEVENLABS_API_KEY=xxx --dart-define=PICOVOICE_ACCESS_ Lunettes Ray-Ban Meta │ Bluetooth (HFP mic, A2DP speakers, camera stream, button) ▼ -[MetaGlassesService] ← SDK DAT lifecycle + photo capture button +[MetaGlassesService] ← SDK DAT lifecycle + capture photo │ ├── [WakeWordService] ← Porcupine détecte "Hey MyVisit" (on-device) │ └── speech_to_text ← transcrit la commande après wake word @@ -173,9 +193,10 @@ Le wake word fonctionne en permanence en background (Foreground Service sur Andr ### 2. Scanner QR via lunettes -**Déclencheurs :** -- Pression courte sur le bouton hardware des lunettes -- Commande vocale "Hey MyVisit, scanne ce QR" +**Déclencheur :** commande vocale "Hey MyVisit, scanne ce QR" + +⚠️ Le bouton hardware des lunettes n'est **pas** un déclencheur : le SDK DAT ne +l'expose pas, et rien n'est implémenté pour lui côté app. **Fonctionnement :** 1. Les lunettes capturent une photo