Skip to content

Boncoddo/laMiaTV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

laMiaTV

Screenshot

laMiaTV è un player IPTV che consente di leggere una lista canali in formato M3U, da cui è possibile avviare un determinato canale grazie al lettore video integrato del televisore. L'app è compatibile con le TV Samsung che hanno il sistema operativo Orsay o Tizen, sul sistema WebOS di LG e con altri sistemi supportati dal framework Apache Cordova.

Prerequisiti

laMiaTV ha bisogno dei seguenti software per funzionare, si prega di installarli:

  1. Node.js
  2. Git
  3. Browser Chrome
  4. Samsung Tizen SDK (solo per Tizen OS)
  5. LG WebOS SDK (solo per WebOS)
  6. Moduli npm (cordova, grunt), per installarli digitare dal prompt dei comandi:
  $ npm install -g cordova
  $ npm install -g grunt-cli

Installazione

  1. Creare la cartella principale del progetto
$ mkdir SmartTV-Dev
  1. Entrare nella directory appena creata
$ cd SmartTV-Dev
  1. Effettuare git clone dei repository seguenti:
$ git clone https://github.com/apache/cordova-js.git
$ git clone https://github.com/Samsung/cordova-plugin-toast.git
$ git clone https://github.com/Samsung/cordova-sectv-orsay.git
$ git clone https://github.com/Samsung/cordova-sectv-tizen.git
$ git clone https://github.com/Samsung/cordova-tv-webos.git
$ git clone https://github.com/Samsung/grunt-cordova-sectv.git
  1. Aprire il file presente in cordova-js/Gruntfile.js in un editor, ed aggiungere la virgola e le seguenti righe al compile:
module.exports = function(grunt) {
grunt.initConfig({
  pkg: grunt.file.readJSON('package.json'),
  compile: {
      ...,
      "sectv-orsay": {},
      "sectv-tizen": {},
      "tv-webos": {}
  },
  1. Allo stesso modo, aggiungere al file presente in cordova-js/package.json le seguenti righe:
  ...,
  "cordova-platforms": {
      "cordova-sectv-orsay": "../cordova-sectv-orsay",
      "cordova-sectv-tizen": "../cordova-sectv-tizen",
      "cordova-tv-webos": "../cordova-tv-webos"
  }
}
  1. Infine, sempre nello stesso file (cordova-js/package.json) modificare la versione di execa e fs-extra, così come riportato di seguito:
  "dependencies": {
      "execa": "^3.4.0",
      "fs-extra": "^8.1.0",
      ...
    },
  1. Entrare in ogni cartella di SmartTV-Dev ed eseguire il seguente comando per installare le dipendenze:
npm install
  1. Entrare in cordova-js ed eseguire il seguente comando per compilare:
$ grunt compile:sectv-orsay compile:sectv-tizen compile:tv-webos
  1. Allo stesso modo, entrare in cordova-plugin-toast ed eseguire il seguente comando per compilare:
$ grunt compile:sectv-orsay compile:sectv-tizen compile:tv-webos
  1. Entrare nella directory principale SmartTV-Dev e clonare questo progetto cordova, poi entrare nel progetto:
$ git clone https://github.com/Boncoddo/laMiaTV.git
$ cd laMiaTV
  1. (a) Eseguire la copia dei file per il sistema e compilare (per windows):
$ xcopy ..\grunt-cordova-sectv\sample\* .\ /y /s
$ npm install ../grunt-cordova-sectv
  1. (b) Eseguire la copia dei file per il sistema e compilare (per sistemi unix-like):
$ cp -rf ../grunt-cordova-sectv/sample/. ./
$ npm install ../grunt-cordova-sectv
  1. Per installare le dipendenze del progetto eseguire:
$ npm install
  1. Per poter simulare l'applicazione nel browser eseguire:
$ cordova platform add browser
  1. Plugin obbligatori per l'utilizzo del simulatore del browser (non per altre piattaforme):
$ cordova plugin add cordova-plugin-device
$ cordova plugin add cordova-plugin-network-information
$ cordova plugin add cordova-plugin-globalization
  1. Aggiungere plugin TOAST:
$ cordova plugin add ../cordova-plugin-toast

Configurazione

Per impostare una propria lista canali bisogna entrare nella cartella lista e modificare il file link.txt, avendo l'accortezza di sostituire il link fornito di default con il proprio, è anche possibile linkare una lista locale inserendo l'IP del server privato con relativo numero di porta.

# Inserisci il link alla lista .M3U
# Es. http://192.168.1.234:80/esempio.m3u

http://www.pandasat.info/iptv/kodi

La lista canali predefinita è fornita da PandaSat.

Compilazione ed esecuzione da browser

  1. Eseguire il comando per compilare dalla cartella del progetto:
$ cordova build browser
  1. Avviare l'applicazione con il comando:
$ cordova emulate browser

Se non funziona, provare con una porta diversa:

$ cordova emulate browser --port=8080

Nel caso si visualizzasse nel browser un messaggio di "Errore nel caricamento", controlla di aver disabilitato le restrizioni sulle origini multiple.

Compilazione ed esecuzione su Samsung Orsay

  1. Entrare nella cartella del progetto ed eseguire il comando per preparare la compilazione:
$ grunt sectv-prepare:sectv-orsay
  1. Premere il tasto 'Y' ed il tasto Invio per confermare le scelte di default.

  2. Eseguire il comando per compilare:

$ grunt sectv-build:sectv-orsay
  1. Installare Apache: Clicca qui per entrare nel sito ufficiale e procedere al download

  2. Copiare il file compilato con estensione .zip contenuto nella cartella del progetto platforms\sectv-orsay\build nella cartella htdocs\Widget di Apache. Nota: la cartalla Widget non esiste e va creata.

  3. Creare un nuovo file in htdocs chiamato widgetlist.xml ed inserire il seguente contenuto:

<?xml version="1.0" encoding="UTF-8"?>
<rsp stat="ok">
<list>
    <widget id="laMiaTV">
        <title>laMiaTV</title>
        <compression type="zip" size="xxxxx"/>
        <description/>
        <download>http://xxx.xxx.xxx.xxx/Widget/laMiaTV.zip</download>
    </widget>
</list>
</rsp>

Dove in size bisogna inserire la dimensione in byte del pacchetto .zip compilato, dopodiché al posto di xxx.xxx.xxx.xxx inserire l'indirizzo IP privato del proprio PC.

  1. Avviare il server Apache sul PC, per farlo è possibile servirsi di ApacheMonitor (bin\ApacheMonitor).

  2. Installare l'app nel televisore:

Compilazione ed esecuzione su Samsung Tizen

  1. Entrare nella cartella del progetto ed eseguire il comando per preparare la compilazione:
$ grunt sectv-prepare:sectv-tizen
  1. Premere il tasto 'Y' ed il tasto Invio per confermare le scelte di default.

  2. Per compilare bisogna prima impostare le variabili d'ambiente:

  • Nel caso in cui è stato installato Tizen TV SDK 2.4 digitare il comando (per windows):
$ SET PATH=%PATH%;C:\tizen-sdk\tools\ide\bin
  • Invece, nel caso in cui è stato installato Tizen Studio digitare il comando (per windows):
$ SET PATH=%PATH%;C:\tizen-studio\tools\ide\bin

Nota: per un sistema operativo diverso da windows fare riferimento a comandi equivalenti.

  1. Modifica Gruntfile.js e imposta profilePath e profileName:
    'sectv-Tizen': { 
        profilePath: 'C\:\\tizen-studio-data\\profile\\profiles.xml', 
        profileName: '<tuoNomeProfilo>', 
        www: 'platforms/sectv-tizen/www',
        dest: 'platforms/sectv-tizen/build'
    }
  • Per impostare il tuo profilePath:

    • Nel caso in cui è stato installato Tizen TV SDK 2.4: \.metadata\.plugins\org.tizen.common.sign\profiles.xml
    • Nel caso in cui è stato installato Tizen Studio: C:\tizen-studio-data\profile\profiles.xml (come da esempio)
  • Per impostare il tuo profileName:

    • Nel caso in cui è stato installato Tizen TV SDK 2.4: window > Preferences > Tizen SDK > Security Profiles
    • Nel caso in cui è stato installato Tizen Studio: Tools > Certificate Manager > Certificate Profile
  1. Eseguire il comando per compilare:
$ grunt sectv-build:sectv-tizen
  1. Entrare su platforms\sectv-tizen\www\build e importare il file .wgt su Tizen Studio.

  2. Installare l'app nel televisore:

Compilazione ed esecuzione su LG WebOS

  1. Entrare nella cartella del progetto ed eseguire il comando per preparare la compilazione:
$ grunt sectv-prepare:tv-webos
  1. Premere il tasto 'Y' ed il tasto Invio per confermare le scelte di default.

  2. Per compilare bisogna prima impostare le variabili d'ambiente (per windows):

$ SET PATH=%PATH%;C:\webOS_TV_SDK\CLI

Nota: per un sistema operativo diverso da windows fare riferimento a comandi equivalenti.

  1. Eseguire il comando per compilare:
$ grunt sectv-build:tv-webos
  1. Installare l'app nel televisore, tenendo presente che il file .ipk compilato si trova in platforms\tv-webos\build:

Licenza

Questo progetto è concesso in licenza in base ai termini della GNU General Public License v3.0.

Note dello sviluppatore

Tenete presente che l'applicazione è stata testata su una TV Samsung Orsay del 2014, dunque non è detto che possa funzionare anche su altri ambienti.

Disclaimer

L’uso dell'applicativo per la visione di programmi protetti da diritto d'autore non è consentito dalla legge, si declina qualsiasi responsabilità relativa all'utilizzo improprio del presente software.