Come controllare il tuo Kodi Media Center con Amazon Echo
I telecomandi sono così del 1950. Se possiedi un media center Kodi e un Amazon Echo, puoi riprodurre tutti i tuoi film e programmi preferiti con un comando vocale ben piazzato ... se sei disposto a fare un piccolo setup.
Amazon Echo è, a nostro avviso, una delle parti più interessanti di una casa intelligente. Controllare le luci, i ciechi e la TV con il telefono è bello, ma controllarli con la tua voce è davvero il futuro. Ero scettico, ma rapidamente sono stato colpito - e affamato di più.
Essere in grado di accendere la TV è bello, ma quello che volevo veramente era poter controllare il mio media center. Volevo poter dire "Gioca al prossimo episodio di Amici" e farlo cercare nella mia biblioteca, vedere cosa ho visto per ultimo, e iniziare a riprodurre l'episodio successivo. E dopo un po 'di ricerche, ho scoperto che un intraprendente programmatore di nome Joe Ipson lo aveva già fatto.
Questo richiede un po 'di setup e all'inizio sembra molto intimidatorio. Dovrai creare un server web, spingere un po 'di codice da GitHub e fare un piccolo lavoro dalla riga di comando, ma non è necessario essere un programmatore per farlo funzionare correttamente. Ipson ha fatto quasi tutto il lavoro pesante, e hai solo bisogno di copiare il suo codice, modificare alcune parti e caricarlo nel posto giusto. Se segui questa guida alla lettera, dovresti essere attivo e funzionante in pochissimo tempo.
NOTA: stiamo utilizzando Amazon Web Services per questo tutorial, poiché è il più affidabile. Se sei un nuovo utente AWS, Ipson dice che dovresti essere in grado di eseguire l'abilità gratuitamente per circa un anno, dopo di che ti verrà addebitato meno di 20 ¢ al mese. Se vuoi qualcosa di veramente libero, puoi invece configurarlo usando Heroku, sostituendo i passaggi due, tre e quattro di questa guida con le istruzioni di Heroku nella documentazione di Ipson. È, tuttavia, un po 'meno affidabile e alcune richieste potrebbero scadere quando lo si utilizza. Consigliamo AWS se si desidera la migliore esperienza possibile - vale la pena il magro 20 ¢ al mese.
Fase uno: preparare il server Web Kodi
Affinché questo funzioni, Kodi dovrà avere un server accessibile dal web. Fortunatamente, questo è incorporato in Kodi, anche se potrebbe essere necessario inoltrare alcune porte sul router ed eseguire alcune altre attività prima che funzioni senza problemi.
Apri Kodi sul tuo media center e vai su Sistema> Servizi> Server web. Abilitare il server Web se non è già abilitato e dargli un nome utente e una password. Assicurati di utilizzare una password che non utilizzi per nessun altro servizio.
Avrai anche bisogno dell'indirizzo IP pubblico per la tua casa. Tuttavia, poiché questo può cambiare, ti consigliamo vivamente di registrarti per un nome di dominio dinamico usando un servizio come Dynu. Segui la nostra guida qui prima di continuare se non ne hai già uno.
Infine, dovrai configurare il port forwarding per la tua casella Kodi. Questo sarà diverso da router a router, ma puoi consultare la nostra guida qui per maggiori informazioni. Basta inoltrare qualsiasi porta esterna all'indirizzo IP locale della tua casella Kodi (nel mio caso, 192.168.1.12) e alla porta locale (8080 per impostazione predefinita).
NOTA: mentre la porta locale di Kodi è 8080 per impostazione predefinita, puoi cambiarla in qualsiasi modo desideri oppure inoltrarla a un'altra porta esterna per assicurarti che non vi siano complicazioni (dato che altre app potrebbero richiedere la porta 8080). Sto usando 8080 in questo tutorial, ma se usi qualcosa di diverso, sostituisci semplicemente tutte le istanze della porta 8080 con esterno porto che scegli qui.
Se tutto va bene, dovresti essere in grado di accedere all'interfaccia web di Kodi aprendo un browser web e digitando:
my.dynamic-domain.com:8080
dove
my.dynamic-domain.com
è l'URL del tuo dominio dinamico e 8080
è il porto che hai impostato a Kodi. Se ciò non funziona, assicurati che Kodi, il tuo dominio dinamico e il port forwarding siano stati configurati correttamente.
Passaggio 2: imposta il tuo account Amazon Web Services
Successivamente, dovrai configurare un account con Amazon Web Services (AWS). Vai a questa pagina e fai clic su "Crea un account AWS". Accedi con le tue credenziali Amazon quando richiesto. Se non hai già un account AWS, ti verrà chiesto di inserire le tue informazioni di contatto per crearne uno. Assicurati di controllare "Account personale" nella parte superiore.
Passa attraverso il resto dei passaggi nella procedura guidata. Dovrai anche inserire le informazioni della tua carta di credito, ma non preoccuparti, come abbiamo detto, non ti dovrebbe essere addebitato molto, se non del tutto (soprattutto per i primi 12 mesi).
Dopo aver verificato la tua identità con il tuo numero di telefono e aver selezionato il tuo piano di assistenza (ti consigliamo Basic, che è gratuito), fai clic sul pulsante "Registrati completo" nell'angolo destro dello schermo. Amazon effettuerà l'accesso.
Ora vai alla pagina Gestione identità e accesso (accedi di nuovo ad AWS se necessario) e fai clic sulla scheda "Utenti" sul lato sinistro. Fai clic sul pulsante "Aggiungi utente".
Crea un nuovo utente con qualsiasi nome utente desideri. Seleziona la casella "Accesso programmatico" e fai clic su "Avanti: Autorizzazioni".
Successivamente, ti verrà richiesto di impostare le autorizzazioni. Fai clic su "Collega direttamente criteri esistenti", quindi cerca "AdministratorAccess". Controlla l'opzione AdministratorAccess e fai clic su "Next: Review".
Assicurati che il tuo utente assomigli all'immagine qui sotto, quindi fai clic su "Crea utente".
Non chiudere la pagina successiva! Dovrai prendere qui l'ID della chiave di accesso e la chiave di accesso segreta (dovrai fare clic su "Mostra" per mostrare la tua chiave segreta). Copialo in un file di testo per conservarlo in sicurezza, perché non potrai più ricevere la chiave segreta dopo aver lasciato questa pagina.
Una volta che hai scritto quelle parole, puoi chiudere la finestra in modo sicuro.
Passo 3: Installa Python 2.7 e configura le tue variabili
Per poter inviare il codice Ipson ad AWS, avrai bisogno di Python 2.7 installato sul tuo computer. In questo tutorial utilizzeremo Windows, ma dovresti essere in grado di farlo anche su macOS e Linux.
Per installare Python su Windows, vai alla pagina di download di Python e scarica Python 2.7. Esegui il programma di installazione come faresti con qualsiasi altro programma Windows. Utilizza le selezioni predefinite, poiché saranno necessari alcuni degli strumenti forniti con il programma di installazione di Python.
Quindi, fai clic qui per scaricare il codice Ipson. Decomprimi la cartella kodi-alexa-master all'interno del file ZIP da qualche parte sul tuo disco fisso.
Una volta installato, è ora di scavare nella riga di comando. Premi Windows + X sulla tastiera e seleziona "Prompt dei comandi". (Gli utenti Mac e Linux vorranno aprire le rispettive app di Terminale). Da lì, esegui i seguenti due comandi, uno dopo l'altro:
C: \ Python27 \ Scripts \ pip.exe installa awscli
C: \ Python27 \ Scripts \ aws configure
Questo installerà gli strumenti da riga di comando di AWS e avvierà lo strumento di configurazione.
Incolla l'ID chiave di accesso e la chiave di accesso segreto quando richiesto. Quando viene richiesto il nome della regione predefinita, digitare noi-est-1
(se sei negli Stati Uniti) o eu-ovest-1
(se sei in Europa). Puoi lasciare vuoto il tuo Formato di output predefinito (premi semplicemente Invio).
Quindi, esegui il seguente comando:
C: \ Python27 \ Scripts \ pip.exe installa virtualenv
Avrai bisogno di questo installato per dopo.
Ora il CD nella cartella kodi-alexa-master con il seguente comando:
CD C: \ Users \ Whitson \ Documenti \ Codice \ Kodi-Alexa-master
Ovviamente, sostituisci il percorso del file con il percorso ovunque hai salvato la cartella kodi-alexa-master.
Tieni la finestra aperta per ora, dovremo tornare da essa in un attimo.
Innanzitutto, affinché il codice di Ipson funzioni con la configurazione di Kodi e AWS, è necessario definire alcune variabili in un file di configurazione. Scarica questo modello, rinominalo in kodi.config
, e salvalo nella cartella kodi-alexa-master. Aprilo in un editor di testo semplice come Notepad ++ e modifica le seguenti quattro quattro variabili:
address = port = username = password =
Il indirizzo
variabile sarà l'indirizzo dinamico impostato nel primo passaggio (ad es. my.dynamic-domain.com
), porta
sarà la porta che hai usato nel primo passaggio (probabilmente 8080, a meno che tu non l'abbia cambiato), e nome utente
e parola d'ordine
saranno le credenziali dal primo passo.
Se hai molte scatole Kodi in casa, puoi anche usare questo file di configurazione per controllarle separatamente con Alexa. Non lo analizzeremo in questa guida, ma puoi trovare le istruzioni nella documentazione di Ipson qui.
Quando hai finito, salva il file e torna alla finestra del prompt dei comandi.
Passaggio 4: invia il codice a AWS
Con queste variabili, il tuo codice è pronto per la distribuzione. Tornati al tuo prompt dei comandi, esegui questi due comandi:
C: \ Python27 \ Scripts \ virtualenv venv
venv \ Scripts \ activate.bat
Questo creerà un nuovo "ambiente virtuale" e lo attiverà.
Dal prompt venv che appare, esegui i seguenti comandi:
pip installa -r requirements.txt
pip installare l'imballaggio
pip installa zappa
Questo installerà uno strumento chiamato Zappa, che ti aiuterà a distribuire il tuo codice.
Successivamente, dovrai configurare Zappa. Correre:
zappa init
Ti porterà attraverso un mago. Accetta solo le impostazioni predefinite per tutto.
Infine, esegui:
zappa deploy dev
Questo distribuirà il tuo codice a Lambda. Ci vorranno alcuni minuti, quindi lascia correre. Alla fine, ti fornirà un URL, copiarlo, poiché ne avrai bisogno nel prossimo passaggio.
Infine, consiglio anche di eseguire il comando seguente, poiché avrai bisogno dei file risultanti anche nel passaggio successivo:
python generate_custom_slots.py
Assicurati che la tua scatola Kodi sia accesa e funzionante quando esegui questo script, poiché prenderà i nomi di film, spettacoli e altri media dalla tua libreria.
Ci sei quasi! Ora abbiamo solo bisogno di impostare un'abilità Alexa per questo codice.
Passaggio 5: crea la tua abilità Alexa
Per connettere il codice Ipson con il nostro Echo, avremo bisogno di creare un'Abilità "Alexa" che usi quel codice. Questa app non verrà distribuita a nessuno, sarà sempre in "modalità di test" per sempre, collegata al tuo account Amazon da utilizzare con il tuo Echo.
Per iniziare, configura un account Amazon Developer gratuito. Vai a questa pagina, accedi con il tuo account Amazon e registrati per un account sviluppatore. Compila i campi richiesti, accetta i termini e dì "No" quando ti viene chiesto se intendi monetizzare le tue app.
Una volta effettuato l'accesso, vai su "Alexa" nella barra degli strumenti in alto. Fai clic sul pulsante "Inizia" sotto "Alexa Skills Kit".
Successivamente, fai clic sul pulsante "Aggiungi una nuova competenza".
Dai un nome alla tua abilità: ho chiamato il mio "Kodi" e gli ho dato un nome di invocazione. Questo è quello che dirai quando vuoi invocare un comando. Ad esempio, il mio nome di invocazione è anche "il salotto", il che significa che dovrò dire "Chiedi al soggiorno di ..." per dare i comandi di Alexa al mio media center.
Nella mia esperienza, i nomi lunghi delle invocazioni funzionano meglio di quelli più brevi. Ho usato "Kodi" per un po '("Chiedi a Kodi di ...") ma Alexa a volte ha avuto problemi a trovare film. Non potrei dirti perché, ma nomi di invocazione più lunghi come "il salotto" funzionano quasi perfettamente per me. Quindi prova a scegliere qualcosa con poche sillabe.
Fare clic su Avanti al termine.
Fai clic sul pulsante "Aggiungi tipo di slot" nel mezzo della finestra successiva.
Crea un nuovo spazio chiamato SPETTACOLI
. Torna alla cartella kodi-alexa-master, apri il file SHOWS con Notepad ++ e copia gli spettacoli nella casella sulla pagina di Amazon. Questo aiuterà Alexa a riconoscere gli spettacoli che gli detterai.
In alternativa, puoi solo elencare alcuni dei tuoi programmi TV nella scatola, uno per riga. Non è necessario aggiungere ogni spettacolo nella libreria Kodi, ma è bello avere un numero decente di esempi (ho trovato 20 o 30 è piuttosto buono).
Fare clic su OK al termine.
Ripeti questo processo con questi tipi di slot: MOVIES, MOVIEGENRES, MUSICARTISTS, MUSICALBUMS, MUSICSONGS, MUSICPLAYLISTS, VIDEOPLAYLISTS e ADDONS (Se non hai informazioni per uno di questi, crea il tipo di slot in ogni caso, il codice di Ipson lo richiede ... e solo scrivi la parola "Vuoto" nella casella. Non causerà alcun problema.)
Di nuovo, non hai bisogno di ogni singolo spettacolo, film o artista in questi slot, quindi non è necessario aggiornarli ogni volta che aggiungi un nuovo film alla tua libreria. Aiuta solo ad avere un numero decente di esempi in ciascuno.
Quando hai creato tutti e nove i tipi di slot, torna alla cartella kodi-alexa-master. Apri la cartella speech_assets e apri il IntentSchema.json
e SampleUtterances.txt
file con un'app come Blocco note++.
Seleziona tutto il testo nel IntentSchema.json
file e incollalo nella casella "Intent Schema" sul sito web di Amazon Developer. Ripeti questo processo con il SampleUtterances.txt
file, posizionando il testo nella casella "Utilità di esempio".
Al termine, fai clic su Avanti. Potrebbero essere necessari alcuni momenti per costruire il modello di interazione.
Nella pagina successiva, scegli "HTTPS" per il tipo di endpoint e incolla l'URL che hai ottenuto alla fine del quarto passaggio. Scegli la tua regione geografica (Nord America o Europa) e seleziona "No" per il collegamento all'account. Fare clic su Avanti.
Nella pagina successiva, seleziona "Il mio endpoint di sviluppo è un sottodominio di un dominio con certificato jolly da un'autorità di certificazione". Fare clic su Avanti.
Non è necessario aggiungere alcuna informazione nella pagina Test, sebbene sia possibile testare alcuni aspetti del codice se si sa cosa si sta facendo. Altrimenti, fare clic su Avanti.
Nella pagina Informazioni sulla pubblicazione, compila i campi obbligatori, ma non preoccuparti troppo di ciò che hai inserito, dal momento che non invierai questa app per la certificazione. Sei l'unico che utilizzerà questa app. (Qui c'è un'icona 108 × 108 e un'icona 512 × 512 che puoi usare.) Fai clic su Avanti quando hai finito.
Nella pagina finale, selezionare "No" per entrambe le domande sulla privacy e selezionare la casella Complicance. Fai clic sul pulsante "Salva" quando hai finito. NON fare clic sul pulsante "Invia per certificazione".
Passo Sei: prova i tuoi nuovi comandi
Se tutto è andato bene, dovresti riuscire a testare i tuoi nuovi comandi ora. Assicurati che la tua scatola Kodi sia accesa e prova a dire qualcosa come:
"Alexa, chiedi al soggiorno di giocare la prima stagione, episodio uno di Amici"
(... ovviamente sostituendo quello con un episodio e mostrandoti che hai sulla tua macchina.) Potrebbe volerci un momento Alexa, ma spero che lei risponda e inizi a suonare lo spettacolo in questione. Se ricevi un errore e l'episodio non viene riprodotto, torna indietro e assicurati di aver fatto tutto correttamente.
Puoi chiedere ad Alexa se hai nuovi episodi, chiederle di suonare il prossimo episodio di uno spettacolo, o persino usarla per controllare Kodi, in quanto inefficiente ("Alexa, chiedi al soggiorno di fermarti", "Alexa , chiedi al soggiorno di navigare in basso, "ecc.). Guarda il SampleUtterances.txt
file per vedere tutte le cose che Alexa può fare con questa integrazione. Se vuoi aggiungere una nuova frase che corrisponde a una di queste funzioni, accedi nuovamente al tuo account sviluppatore Amazon e aggiungilo all'elenco che abbiamo incollato nel passaggio quattro.
Non è la cosa più semplice o rapida da configurare, ma una volta che lo fai funzionare, è una delle cose più belle che puoi fare con Amazon Echo, secondo me. Ora posso iniziare a guardare la TV mentre cucino in cucina o quando le batterie del mio telecomando sono esaurite. Questo è il tipo di potenza che Amazon Echo è stato progettato per avere, e anche se ci vuole un po 'di lavoro, ne vale la pena.
Avere problemi? Dai un'occhiata a questo thread sui forum di Kodi, così come alla pagina originale di GitHub, o lascia una linea nei nostri commenti qui sotto.
Immagine del titolo da doomu / Bigstock e Amazon.