# 🔑 Ghid Complet: Extragere Token DIGI Online ## 📖 De ce este necesar? API-ul DIGI Online are **protecții anti-bot** care blochează automatizarea directă. Soluția: **Extragi token-ul manual** din browser după autentificare. --- ## 🎯 Metoda 1: Local Storage (CEA MAI SIMPLĂ) ⭐ ### **Pas 1: Autentifică-te** 1. Deschide **Chrome**, **Edge** sau **Firefox** 2. Mergi pe: **https://www.digionline.ro** 3. Click pe **"Autentificare"** (sus-dreapta) 4. Introdu: - **Email**: eddmanoo@gmail.com - **Parolă**: parola ta 5. Click **"Autentifică-te"** ### **Pas 2: Deschide Developer Tools** - **Windows**: Apasă **F12** sau **Ctrl + Shift + I** - **Mac**: Apasă **Cmd + Option + I** ### **Pas 3: Mergi la Application Tab** ``` Developer Tools (F12) └── Application (tab sus) └── Storage (meniu stânga) └── Local Storage └── https://www.digionline.ro ``` ### **Pas 4: Găsește Token-ul** În lista de chei, caută: - **"token"** - **"auth_token"** - **"access_token"** - **"jwt"** - **"bearer"** ### **Pas 5: Copiază Token-ul** 1. Click pe cheia **"token"** 2. În dreapta vezi **Value** (valoarea) 3. **Dublu-click** pe valoare pentru a o selecta 4. **Ctrl + C** pentru a copia Token-ul arată așa: ``` eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c ``` --- ## 🎯 Metoda 2: Network Tab (ALTERNATIVĂ) ### **Pas 1-2: Autentifică-te și Deschide Developer Tools** (Același ca la Metoda 1) ### **Pas 3: Mergi la Network Tab** ``` Developer Tools (F12) └── Network (tab sus) ``` ### **Pas 4: Filtrează Cererile** 1. Click pe **"XHR"** sau **"Fetch"** (filtre sus) 2. Apasă **F5** pentru a reîmprospăta pagina ### **Pas 5: Găsește Cererea de Autentificare** Caută în lista de cereri: - **"login"** - **"user"** - **"auth"** - **"channel"** (orice cerere după autentificare) ### **Pas 6: Extrage Token-ul** 1. Click pe cererea găsită 2. Mergi la tab-ul **"Headers"** 3. Scroll jos la **"Request Headers"** 4. Caută linia: ``` Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9... ``` 5. **Copiază** doar partea după **"Bearer "** (fără "Bearer ") --- ## 🎯 Metoda 3: Console (PENTRU AVANSAȚI) ### **Pas 1-2: Autentifică-te și Deschide Developer Tools** (Același ca la Metoda 1) ### **Pas 3: Mergi la Console Tab** ``` Developer Tools (F12) └── Console (tab sus) ``` ### **Pas 4: Rulează Comanda** Scrie în consolă și apasă **Enter**: ```javascript localStorage.getItem('token') ``` SAU ```javascript localStorage.getItem('auth_token') ``` SAU (pentru toate cheile): ```javascript Object.keys(localStorage).forEach(key => { console.log(key + ': ' + localStorage.getItem(key)); }); ``` ### **Pas 5: Copiază Token-ul** Token-ul va apărea în consolă. **Copiază-l** (fără ghilimele). --- ## 🚀 Folosește Token-ul Extras ### **Pas 1: Rulează Scriptul** Dublu-click pe: ``` run_digi_manual.bat ``` SAU în PowerShell: ```powershell python digi_manual_token.py ``` ### **Pas 2: Lipește Token-ul** Când scriptul cere: ``` 🔑 Token: ``` **Lipește** token-ul copiat (**Ctrl + V**) și apasă **Enter**. ### **Pas 3: Așteaptă Generarea** Scriptul va: 1. ✅ Valida token-ul 2. ✅ Obține lista de canale 3. ✅ Genera `digi_authenticated.m3u` --- ## ⚠️ Troubleshooting ### **Eroare: "Token invalid sau expirat"** **Cauză:** Token-ul a expirat sau este greșit. **Soluție:** 1. Reautentifică-te pe digionline.ro 2. Extrage un token NOU 3. Rulează din nou scriptul ### **Nu găsesc token-ul în Local Storage** **Soluție:** 1. Asigură-te că ești **autentificat** pe digionline.ro 2. Reîmprospătează pagina (**F5**) 3. Verifică din nou Local Storage 4. Încearcă **Metoda 2** (Network Tab) ### **Token-ul este prea scurt** **Cauză:** Ai copiat doar o parte din token. **Soluție:** 1. Token-ul are de obicei **100-500 caractere** 2. Asigură-te că ai copiat **TOT** token-ul 3. Token-ul începe cu: `eyJ...` ### **Eroare: "Nu s-au putut obține canalele"** **Cauză:** Token-ul este invalid sau API-ul s-a schimbat. **Soluție:** 1. Extrage un token NOU 2. Verifică că ești autentificat pe digionline.ro 3. Contactează suportul DIGI: 0318.300.300 --- ## 🔄 Cât Durează Token-ul? Token-ul **expiră** după: - **2-6 ore** (în funcție de setările DIGI) - **La logout** din digionline.ro - **La schimbarea parolei** **Când expiră:** 1. Canalele nu se mai redau în Dispatcharr/Jellyfin 2. Primești erori de autentificare **Soluție:** 1. Extrage un token NOU din browser 2. Rulează din nou scriptul 3. Playlist-ul va fi actualizat --- ## 💡 Tips & Tricks ### **Automatizare Parțială** Poți crea un **Task Scheduler** care: 1. Deschide browser automat 2. Te autentifică (cu extensie de browser) 3. Extrage token-ul automat (cu script) 4. Generează playlist-ul **Dar:** Necesită configurare avansată și extensii terțe. ### **Token Persistent** Pentru a păstra token-ul mai mult: 1. **NU** te deloga din digionline.ro 2. **NU** închide tab-ul digionline.ro 3. Păstrează browser-ul deschis ### **Backup Token** Salvează token-ul într-un fișier text: ``` C:\Users\EDD\Desktop\IPTV\digi_token.txt ``` Când expiră, extrage unul nou și înlocuiește-l. --- ## 📞 Suport ### **DIGI Romania** - **Website**: https://www.digionline.ro - **Telefon**: 0318.300.300 - **Email**: contact@digi.ro ### **Script Issues** Dacă scriptul nu funcționează: 1. Verifică că token-ul este valid 2. Verifică că ai Python și `requests` instalate 3. Verifică log-urile pentru erori detaliate --- ## 🎉 Succes! Acum știi cum să extragi token-ul și să generezi playlist-ul DIGI pentru Dispatcharr! **Enjoy!** 📺🍿