Home
images/headers/slide1_eng.png

SS IPTV permette di indicare nella playlist la url della Guida Tv esterna (EPG), che verrà caricata quando l'utente apre la playlist.

Nota! Spesso i televisori non hanno risorse sufficienti per gestire grandi dimensioni della Guida Tv! L'uso sconsiderato di questa opzione può causare dei lunghi blocchi o l'interruzione dell'applicazione. Noi raccomandiamo fortemente di non usare la Guida Tv per i canali che già hanno EPG nell'applicazione.

Per forzare l'applicazione a richiedere una fonte esterna per l'EPG, bisogna aggiungere l'attributo x-tvg-url nell'intestazione #EXTM3U:

#EXTM3U x-tvg-url="EPG_url"

Adesso l'applicazione supporta il formato jtv e xmltv. La dimensione raccomandata per jtv non deve essere superiore a 0,5 mb, per xmltv non superiore a 5 mb. L'uso della compressione (gzipping) per xmltv non è accettabile.

Per garantire l'avvio dalla Guida Tv su tutti i dispositivi, il file deve essere dato con l'intestazione-http: Access-Control-Allow-Origin: * inoltre, per xmltv è necessario avere le seguenti intestazioni:

Access-Control-Allow-Methods: "GET, POST, OPTIONS, HEAD"
Access-Control-Allow-Headers: "Range"
Access-Control-Expose-Headers: "Accept-Ranges, Content-Encoding, Content-Length, Content-Range"

Ad ogni suo avvio SS IPTV richiede una playlist su questo link http://iptv.local/playlist.m3u

e se trova qualcosa, verra caricata in una nuova piastrella nella schermata principale



L'applicazione richiede la playlist in ogni caso, non importa se l'ISP dell'utente è registrato o no. Significa che è possibile fornire un facile accesso alla playlist per i vostri clienti, configurando il dns, anche se la vostra azienda non è stata aggiunta nella lista degli operatori supportati.

Allo stesso tempo, la registrazione dà agli operatori opportunità più flessibile per la distribuzione di contenuti, compreso i parametri per l'autenticazione degli utenti (login/password, ID dispositivo, ecc..)

Al fine di fornire il caricamento della playlist su qualsiasi dispositivo. Il server deve restituire l'intestazione http Access-Control-Allow-Origin. Tutti i requisiti e le opportunità per la struttura della playlist sono valide anche per playlist in dominio locale.

SS IPTV utilizza una playlist, considerando le specifiche del formato Extended M3U. Informazioni dettagliate sulla struttura del file è possibile trovarle nel nostro articolo Riguardo M3U.

È importante ricordare che le richieste tra domini sono proibite su LG Smart TV, il download del file della playlist non verrà effettuata direttamente dal dispositivo (tv), ma dal server dell'applicazione. Quindi, un collegamento al file deve essere disponibile nella rete (o almeno per il server dell'applicazione). Se si desidera che il dispositivo tv scarichi la vostra playlist direttamente, è necessario realizzare una configurazione del server in conformità con la tecnologia CORS. In pratica, questo significa che l'intestazione http di risposta alla richiesta di una playlist deve contenere la seguente riga

Access-Control-Allow-Origin: *

Inoltre, la playlist deve essere disponibile per gli IP: 195.201.246.115 116.202.118.184, 138.201.198.228 e 94.19.241.39 per i controlli periodici.

Di seguito le informazioni su come configurare il CORS per le diverse piattaforme

Per aggiungere l'autorizzazione CORS all'intestazione usando Apache, è sufficente aggiungere le seguenti righe <Directory>, <Location>, <Files> o <VirtualHost> configurando il server (di solito si trovano in un file *.conf, come ad esempio httpd.conf o apache.conf) o all'interno di un file .htaccess:

Header set Access-Control-Allow-Origin "*"

Per assicurarsi che le modifiche siano corrette, è fortemente consigliato di utilizzare

apachectl -t

per controllare gli errori delle modifiche di configurazione. Dopo questo passaggio, potrebbe essere necessario ricaricare Apache per assicurarsi che siano applicate le modifiche.
Per abilitare il Cors Microsoft IIS6, effettuare le seguenti operazioni:
  1. Aprire Internet Information Service (IIS)
  2. Fare clic col destro nel sito che si desidera attivare CORS e andare su Proprietà
  3. Passare alla scheda HTTP Headers tab
  4. Nella sezione intestazioni personalizzate HTTP, fare clic su Aggiungi
  5. Inserire Access-Control-Allow-Origin come nome dell' intestazione e * come valore
Per Microsoft IIS7, inserire questo dentro il file web.config, nella radice della vostra applicazione o sito:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <system.webServer>
   <httpProtocol>
     <customHeaders>
       <add name="Access-Control-Allow-Origin" value="*" />
     </customHeaders>
   </httpProtocol>
 </system.webServer>
</configuration>

Se non avete un file web.config, o non sapete cos'è, basta creare un nuovo file chiamato web.config contenente il pezzo di codice.
Se non si vuol cambiare configurazione al vostro server, potete usare PHP per aggiungere il necessario nell'intestazione:
<?php
header("Access-Control-Allow-Origin: *");
$playlist = file_get_contents('playlist.m3u');
echo($playlist);
?>
In questo esempio il link della playlist per SS IPTV è lo stesso del link del file php
Aggiungi l'intestazione CORS tramite add_header del file di configurazione Nginx nella sezione "location".
add_header Access-Control-Allow-Origin *;
La posizione predefinita è /etc/nginx/sites-available/default

Per configurare l'Autorizzazione utente in SS IPTV, l'operatore deve creare uno script speciale che rimanderà la playlist sulla base di dati di autenticazione ricevuti dai parametri GET. La playlist inviata da uno script deve soddisfare pienamente le esigenze di CORS e codifica (utf-8)

Esempio di url degli script:

http://example.com/playlist.php?user=test_login&pass=test_pass

Quando lo script è pronto, l'operatore deve cambiare Tipo di Accesso per il pacchetto in Back Office dell'operatore:

  • Token - autorizzazione con un parametro
  • Login/pass - autorizzazione con due parametri

Poi l'operatore deve inserire il link dello script e creare il modello per ricevere i dati dell'utente. Le variabili dei modelli supportati:

  • ${token} - token inserito dall' utente (autorizzazione con un parametro)
  • ${login} - login inserito dall' utente (autorizzazione con due parametri)
  • ${password} - password inserito dall' utente (autorizzazione con due parametri)

Esempio:

http://example.com/playlist.php?user=${login}&pass=${password}

Grazie al sistema di inserimento della playlist in SS IPTV, è possibile creare per gli utenti complicate strutture gerarchiche che includono la transizione da una playlist all'altra. Queste strutture possono essere utili per l'organizzazione di librerie video o archivi di programmi tv.

In questo articolo ci sarà descritto come utilizzare l'inserimento della playlist con la vostra libreria video. A tal fine si avrà probabilmente bisogno degli attributi tvg-logo e description, anche #EXTSIZE e #EXTBG descritto nell'articolo Istruzioni per M3U.

La differenza principale nella radice della playlist con libreria video, dalle solite playlist, è che i suoi contenuti non fanno riferimento a flussi video ma ad altre playlist.Per indicare all'applicazione che il suo contenuto è un link alla playlist (non un flusso), usare l'attribbuto type con il valore playlist.

Nota, se l'url si riferisce al file con estenzione m3u o xspf, non c'è bisogno di usare l'attributo Type. L'applicazione definirà il tipo di contenuto automaticamente.

La radice della playlist con libreria video può essere simile a questo:

#EXTM3U
#EXTINF:0 type="playlist", 2015
http://example.com/playlists/2015.m3u
#EXTINF:0 type="playlist", 2010-2014
http://example.com/playlists/2010-2014.m3u
#EXTINF:0 type="playlist", A-Z
http://example.com/playlists/a-z.m3u
#EXTINF:0 type="playlist", Documentary
http://example.com/playlists/docs.m3u
#EXTINF:0 type="playlist", Drama
http://example.com/playlists/drama.m3u
#EXTINF:0 type="playlist", Comedy
http://example.com/playlists/comedy.m3u
#EXTINF:0 type="playlist", TV Series
http://example.com/playlists/serials.m3u
#EXTINF:0 type="playlist", Triller
http://example.com/playlists/trillers.m3u
#EXTINF:0 type="playlist", Horror
http://example.com/playlists/horror.m3u
#EXTINF:0 type="playlist", Fiction
http://example.com/playlists/fantastic.m3u

Questa playlist sarà così nell'applicazione:




L'uso dell'attributo tvg-logo e della direttiva #EXTSIZE rende la nostra playlist più visiva:

#EXTM3U
#EXTINF:0 type="playlist", 2015
#EXTSIZE: Medium
http://example.com/playlists/2015.m3u
#EXTINF:0 type="playlist", 2010-2014
#EXTSIZE: Medium
http://example.com/playlists/2010-2014.m3u
#EXTINF:0 type="playlist", A-Z
#EXTSIZE: Medium
http://example.com/playlists/a-z.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/docs.png", documentary
http://example.com/playlists/docs.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/drama.png", Drama
http://example.com/playlists/drama.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/comedy.png", Comedy
http://example.com/playlists/comedy.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/serials.png", TV Series
http://example.com/playlists/serials.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/trillers.png", Triller
http://example.com/playlists/trillers.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/horror.png", Horror
http://example.com/playlists/horror.m3u
#EXTINF:0 tvg-logo="http://example.com/logos/fantastic.png", Fiction
http://example.com/playlists/fantastic.m3u

Modificando in questo modo, la playlist sarà così:




Qui di seguito, la playlist contiene i link di flussi specifici, e altre sottosezioni, creando in questo modo un catalogo. Prendendo in considerazione questo esempio del file fantastic.m3u:

#EXTM3U size="medium"
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic1.png" type="video" description="2014", Edge of Tomorrow
http://example.com/stream1
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic2.png" type="video" description="2005", Flightplan
http://example.com/stream12
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic3.png" type="video" description="1997", Gattaca
http://example.com/stream3
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic4.png" type="video" description="2003", Identity
http://example.com/stream4
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic5.png" type="video" description="2014", Interstellar
http://example.com/stream5
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic6.png" type="video" description="2010", Inception
http://example.com/stream6
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic7.png" type="video" description="2001", K-PAX
http://example.com/stream7
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic8.png" type="video" description="1999", Matrix
http://example.com/stream8
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic9.png" type="video" description="2002", The Bourne Identity
http://example.com/stream9
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic10.png" type="video" description="2004", The Butterfly Effect
http://example.com/stream10
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic11.png" type="video" description="2008", The Curious Case of Benjamin Button
http://example.com/stream11
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic12.png" type="video" description="2008", The Dark Knight
http://example.com/stream12
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic13.png" type="video" description="2012", The Dark Knight Rises
http://example.com/stream13
#EXTINF:0 tvg-logo="http://examples.com/logos/films/fantastic14.png" type="video" description="1997", The Fifth Element
http://example.com/stream14

Gli attributi size nell'intestazione #EXTM3U definisce la grandezza predefinita per tutti i titoli della playlist. Ovviamente, è possibile variare le dimensione usando questo parametro, per esempio, per contrassegnare i film più popolari. L'attributo type dice all'applicazione che gli elementi della playlist si riferiscono a VOD (video su richiesta), questi flussi possono essere messi in pausa e riavviati nella schermata di riproduzione. Questi attributi non sono obbligatori, ma consigliamo di utilizzarli per evitare equivoci.

State molto attenti con l'attributo tvg-logo su grandi liste (centinaia di elementi). Il suo valore non deve caricare immaggini di grandi dimensioni, perchè il caricamento può causare un errore Out of memory e la chiusura dell'applicazione.

La playlist fantastic.m3u sopra descritta sarà così:


We use cookies to improve our website and your experience when using it. To find out more about the cookies we use and how to delete them, see our Privacy Policy. I accept cookies from this site