Ray-Ban Meta : le SDK DAT tel qu'il est réellement intégré
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) <noreply@anthropic.com>
This commit is contained in:
parent
2824ca63c1
commit
4206fde7f0
@ -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
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user