# Diretta YouTube dall’app (invito staff) Percorso per il **responsabile trasmissione** invitato via email: accede in app, collega **il proprio** canale YouTube e avvia la live. ## Prerequisiti (società) - Piano **Premium Full** attivo - `YOUTUBE_CLIENT_ID` / `YOUTUBE_CLIENT_SECRET` configurati sul server - Partita programmata per la squadra ## 1. Invito 1. Il titolare società → **Responsabili trasmissione** → invita `tua@email.it` 2. L’invitato apre il link (web o **Apri invito nell’app**) 3. Registrazione / login con **la stessa email** dell’invito 4. L’app accetta l’invito automaticamente dopo il login API: `GET /api/v1/invitations/:token`, `POST /api/v1/invitations/:token/accept` ## 2. Collega canale YouTube (tuo) 1. Nell’app: nuova diretta → passo **Piattaforma** 2. Tocca **YouTube Live** → si apre Google OAuth 3. **Avanzate** → continua (se app OAuth in verifica) 4. Scegli l’account del **tuo** canale → Consenti 5. Torna all’app → messaggio «Canale collegato» Il token OAuth è salvato sulla **squadra**; chi collega deve essere `can_stream` (responsabile trasmissione o titolare). ## 3. Scegli la partita Nella home app (**Partite**): - **Partita programmata** — scegli dal calendario una gara già inserita (sito o app) - **Nuova partita** — programma data/ora oppure **Avvia subito** senza orario Poi tocca la card o conferma dal foglio: si apre il wizard (Partita → Trasmissione → …). ## 4. Avvia diretta 1. Nel wizard, seleziona **YouTube Live** (dopo il collegamento canale) 2. Completa i passi → **Camera** 3. Il telefono invia RTMP a MediaMTX; il server inolvia su YouTube con la stream key della live creata via API ## Sviluppo locale - App: `flutter run --dart-define=API_BASE_URL=http://10.0.2.2:3000` (emulatore) o IP LAN del PC (telefono) - Invito deep link: `matchlivetv://join/TOKEN` oppure incolla token aprendo `/login?invite=TOKEN` - OAuth: utente in **Utenti di test** Google Cloud ## Troubleshooting | Problema | Soluzione | |----------|-----------| | Nessuna squadra in app | Accetta invito con email corretta | | YouTube disabilitato | Premium Full + collegamento canale | | «Collega canale» | Tocca YouTube Live per OAuth da app | | OAuth «app non verificata» | Utente di test Google + Avanzate | | Live non su YouTube | Verifica relay ffmpeg / `stream_key` in sessione |