Jak kontrolować swoje Kodi Media Center za pomocą Amazon Echo
Zdalne sterowanie jest tak 1950. Jeśli masz centrum multimedialne Kodi i Amazon Echo, możesz odtwarzać wszystkie swoje ulubione filmy i programy telewizyjne dzięki dobrze rozmieszczonemu poleceniu głosowemu ... jeśli chcesz zrobić małą konfigurację.
Amazon Echo jest, naszym zdaniem, jedną z najfajniejszych części inteligentnego domu. Kontrolowanie świateł, żaluzji i telewizora za pomocą telefonu jest fajne, ale sterowanie nimi za pomocą głosu jest naprawdę przyszłością. Byłem sceptyczny, ale szybko byłem pod wrażeniem - i jestem głodny czegoś więcej.
Włączenie telewizora jest fajne, ale naprawdę chciałem kontrolować moje centrum multimedialne. Chciałem móc powiedzieć "Zagraj w kolejny odcinek z przyjaciółmi" i przeszukaj moją bibliotekę, zobacz, co oglądałem ostatnio, i zacznij grać w kolejnym odcinku. Po kilku poszukiwaniach odkryłem, że jeden przedsiębiorczy programista o imieniu Joe Ipson już to zrobił.
Trochę to wymaga konfiguracji i na początku wygląda na bardzo onieśmielającą. Musisz utworzyć serwer WWW, przesłać trochę kodu z GitHub i wykonać trochę pracy z linii poleceń, ale nie musisz być programistą, aby to zrobić i uruchomić. Ipson wykonał prawie wszystkie operacje podnoszenia ciężarów, wystarczy skopiować jego kod, edytować kilka części i przesłać go we właściwe miejsce. Jeśli będziesz postępować zgodnie z tym przewodnikiem, powinieneś zacząć działać w mgnieniu oka.
UWAGA: Używamy Amazon Web Services do tego samouczka, ponieważ jest najbardziej niezawodny. Jeśli jesteś nowym użytkownikiem AWS, Ipson mówi, że powinieneś być w stanie uruchomić tę umiejętność za darmo przez około rok, po czym będziesz musiał zapłacić mniej niż 20 centów za miesiąc. Jeśli chcesz czegoś naprawdę darmowego, możesz ustawić go za pomocą Heroku, zastępując kroki dwa, trzy i cztery tego przewodnika instrukcjami Heroku w dokumentacji Ipsona. Jest on jednak trochę mniej niezawodny, a niektóre żądania mogą się wydłużyć, gdy go używasz. Polecamy AWS, jeśli chcesz uzyskać najlepszą możliwą jakość - warto mieć skromne 20 centów za miesiąc.
Krok pierwszy: Przygotuj swój serwer WWW Kodi
Aby to działało, Kodi musi mieć serwer dostępny z internetu. Na szczęście jest to wbudowane w Kodi, ale możesz potrzebować przesłać niektóre porty na routerze i wykonać inne zadania, zanim zacznie działać płynnie.
Otwórz Kodi w swoim centrum multimedialnym i przejdź do System> Usługi> Web Server. Włącz serwer WWW, jeśli nie jest już włączony, i nadaj mu nazwę użytkownika i hasło. Pamiętaj, aby użyć hasła, którego nie używasz do innych usług.
Będziesz także potrzebował publicznego adresu IP dla swojego domu. Ponieważ jednak może się to zmienić, zdecydowanie zalecamy zarejestrowanie się w dynamicznej nazwie domeny przy użyciu usługi takiej jak Dynu. Postępuj zgodnie z naszym przewodnikiem tutaj, zanim przejdziesz dalej, jeśli jeszcze go nie masz.
Na koniec musisz skonfigurować przekierowanie portów dla swojego urządzenia Kodi. To będzie różnić się od routera do routera, ale możesz sprawdzić nasz przewodnik tutaj, aby uzyskać więcej informacji. Wystarczy przesłać dowolny zewnętrzny port na lokalny adres IP skrzynki Kodi (w moim przypadku 192.168.1.12) i port lokalny (domyślnie 8080).
UWAGA: jeśli lokalny port Kodi ma domyślnie 8080, możesz go zmienić na dowolny, lub możesz przekazać go do innego zewnętrznego portu, aby upewnić się, że nie ma żadnych komplikacji (ponieważ inne aplikacje mogą wymagać portu 8080). Używam 8080 w tym samouczku, ale jeśli używasz czegoś innego, po prostu zamień wszystkie wystąpienia portu 8080 na zewnętrzny port, który tu wybierzesz.
Jeśli wszystko pójdzie dobrze, powinieneś mieć dostęp do interfejsu sieciowego Kodi, otwierając przeglądarkę internetową i wpisując:
my.dynamic-domain.com:8080
gdzie
my.dynamic-domain.com
jest adresem URL Twojej domeny dynamicznej, i 8080
jest portem ustawionym w Kodi. Jeśli to nie pomoże, upewnij się, że Kodi, Twoja domena dynamiczna i przekierowanie portów zostały poprawnie skonfigurowane.
Krok drugi: skonfiguruj konto Amazon Web Services
Następnie musisz założyć konto w usłudze Amazon Web Services (AWS). Udaj się na tę stronę i kliknij "Utwórz konto AWS". Zaloguj się przy użyciu poświadczeń Amazon po wyświetleniu monitu. Jeśli nie masz jeszcze konta AWS, zostaniesz poproszony o podanie swoich danych kontaktowych, aby je utworzyć. Pamiętaj, by zaznaczyć "Konto osobiste" u góry.
Przejdź przez pozostałe kroki w kreatorze. Będziesz musiał również wprowadzić informacje o swojej karcie kredytowej, ale nie martw się - tak jak mówiliśmy, nie musisz być bardzo obciążony, jeśli w ogóle (szczególnie przez pierwsze 12 miesięcy).
Po zweryfikowaniu swojej tożsamości za pomocą numeru telefonu i wybraniu planu pomocy technicznej (zalecamy Basic, który jest bezpłatny), kliknij przycisk "Complete Sign Up" w prawym rogu ekranu. Amazon następnie zaloguje się.
Teraz przejdź na stronę Zarządzanie tożsamością i dostępem (w razie potrzeby zaloguj się ponownie do AWS) i kliknij kartę "Użytkownicy" po lewej stronie. Kliknij przycisk "Dodaj użytkownika".
Utwórz nowego użytkownika o dowolnej nazwie użytkownika. Zaznacz pole "Programowy dostęp" i kliknij "Dalej: uprawnienia".
Następnie pojawi się monit o ustawienie uprawnień. Kliknij "Dołącz istniejące zasady bezpośrednio", a następnie wyszukaj "AdministratorAccess". Sprawdź opcję AdministratorAccess i kliknij "Dalej: Recenzja".
Upewnij się, że Twój użytkownik wygląda jak na poniższym obrazku, a następnie kliknij "Utwórz użytkownika".
Nie zamykaj następnej strony! Będziesz musiał pobrać klucz dostępu i klucz tajnego dostępu (musisz kliknąć "Pokaż", aby pokazać tajny klucz). Skopiuj je do pliku tekstowego w celu bezpiecznego przechowywania, ponieważ po opuszczeniu tej strony nie będziesz mógł odzyskać tajnego klucza.
Gdy już to zrobisz, możesz bezpiecznie zamknąć to okno.
Krok trzeci: Zainstaluj Python 2.7 i skonfiguruj swoje zmienne
Aby przekazać kod Ipsona do AWS, będziesz potrzebował Pythona 2.7 zainstalowanego na twoim komputerze. W tym samouczku będziemy używać systemu Windows, ale powinieneś być w stanie to zrobić także w systemach MacOS i Linux.
Aby zainstalować Python w systemie Windows, przejdź do strony pobierania Pythona i pobierz Python 2.7. Uruchom instalator tak jak każdy inny program Windows. Użyj domyślnych opcji, ponieważ potrzebujemy niektórych narzędzi, które są dostarczane z instalatorem Pythona.
Kliknij tutaj, aby pobrać kod Ipsona. Rozpakuj folder kodi-alexa-master w pliku ZIP gdzieś na dysku twardym.
Po zainstalowaniu nadszedł czas, aby zagłębić się w linii poleceń. Naciśnij Windows + X na klawiaturze i wybierz "Wiersz polecenia". (Użytkownicy komputerów Mac i Linux będą chcieli otworzyć odpowiednie aplikacje terminali). Stamtąd uruchom następujące dwa polecenia, jeden po drugim:
C: \ Python27 \ Scripts \ pip.exe install awscli
Konfiguracja C: \ Python27 \ Scripts \ aws
Spowoduje to zainstalowanie narzędzi wiersza poleceń AWS i uruchomienie narzędzia konfiguracyjnego.
Po wyświetleniu monitu wklej identyfikator klucza dostępu i tajnego klucza dostępu. Po zapytaniu o nazwę domyślnego regionu, wpisz us-east-1
(jeśli jesteś w USA) lub eu-west-1
(jeśli jesteś w Europie). Możesz zostawić domyślny format wyjściowy pusty (wystarczy nacisnąć Enter).
Następnie uruchom następujące polecenie:
C: \ Python27 \ Scripts \ pip.exe install virtualenv
Będziesz potrzebował tego zainstalowanego na później.
Teraz CD do swojego folderu kodi-alexa-master za pomocą następującego polecenia:
CD C: \ Users \ Whitson \ Documents \ Code \ kodi-alexa-master
Oczywiście, zastąp ścieżkę pliku ścieżką do miejsca, w którym zapisałeś swój folder kodi-alexa-master.
Pozostaw okno otwarte na razie, za chwilę będziemy do niego wracać.
Po pierwsze, aby kod Ipsona działał z twoją instalacją Kodi i AWS, musisz zdefiniować kilka zmiennych w pliku konfiguracyjnym. Pobierz ten szablon, zmień jego nazwę na kodi.config
, i zapisz go w folderze kodi-alexa-master. Otwórz go w przyjaznym dla kodu edytorze tekstu, takim jak Notepad ++, i edytuj następujące cztery cztery zmienne:
address = port = nazwa_użytkownika = hasło =
The adres
zmienna będzie adresem dynamicznym ustawionym w kroku pierwszym (np. my.dynamic-domain.com
), Port
będzie portem użytym w pierwszym kroku (prawdopodobnie 8080, chyba że go zmieniłeś), i Nazwa Użytkownika
i hasło
będą referencjami od pierwszego kroku.
Jeśli posiadasz wiele skrzynek Kodi w swoim domu, możesz również użyć tego pliku konfiguracyjnego, aby kontrolować je osobno z Alexa. Nie przejdziemy do tego w tym przewodniku, ale można znaleźć instrukcje w dokumentacji Ipsona tutaj.
Po zakończeniu zapisz plik i wróć do okna wiersza polecenia.
Krok czwarty: Przekaż swój kod do AWS
Po wprowadzeniu tych zmiennych Twój kod jest gotowy do wdrożenia. Wróć do swojego wiersza polecenia, uruchom te dwie komendy:
C: \ Python27 \ Scripts \ virtualenv venv
venv \ Scripts \ activate.bat
Spowoduje to utworzenie nowego "środowiska wirtualnego" i aktywowanie go.
W wyświetlonym wierszu venv uruchom następujące polecenia:
pip install -r requirements.txt
opakowanie instalacji pip
instalacja pip zappa
Spowoduje to zainstalowanie narzędzia o nazwie Zappa, które pomoże wdrożyć Twój kod.
Następnie musisz skonfigurować Zappa. Biegać:
zappa init
Przeprowadzi cię przez czarodzieja. Po prostu zaakceptuj ustawienia domyślne dla wszystkiego.
Wreszcie, uruchom:
zappa wdrożyć dev
Spowoduje to wdrożenie twojego kodu do Lambda. Zajmie to kilka minut, więc pozwól mu działać. Na koniec da ci to URL-copy, ponieważ będziesz go potrzebować w następnym kroku.
Wreszcie, polecam również uruchomienie następującego polecenia, ponieważ będziesz potrzebował plików wynikowych również w następnym kroku:
python generate_custom_slots.py
Upewnij się, że Twoje pudełko Kodi jest włączone i działa po uruchomieniu tego skryptu, ponieważ będzie przechwytywać nazwy filmów, programów i innych multimediów z twojej biblioteki.
Jesteś prawie na miejscu! Teraz wystarczy ustawić umiejętność Alexa dla tego kodu.
Krok piąty: Stwórz swoje umiejętności Alexa
Aby połączyć kod Ipsona z naszym Echo, musimy stworzyć "umiejętność" Alexy, która używa tego kodu. Ta aplikacja nie zostanie przekazana nikomu, po prostu pozostanie w "trybie testowym" na zawsze, połączona z własnym kontem Amazon w celu korzystania z Echa.
Aby rozpocząć, skonfiguruj bezpłatne konto programisty Amazon. Udaj się na tę stronę, zaloguj się na swoje konto Amazon i zarejestruj się na konto programisty. Wypełnij wymagane pola, zaakceptuj warunki i powiedz "Nie", gdy pojawi się pytanie, czy zamierzasz zarabiać na swoich aplikacjach.
Po zalogowaniu przejdź na "Alexa" na górnym pasku narzędzi. Kliknij przycisk "Rozpocznij" w "Zestawie umiejętności Alexa".
Następnie kliknij przycisk "Dodaj nową umiejętność".
Podaj swoją umiejętność - nazwałem ją "Kodi" - i nadaj jej nazwę inwokacji. To właśnie powiesz, gdy chcesz wywołać polecenie. Na przykład moja nazwa wywołania to także "salon", co oznacza, że muszę powiedzieć "Poproś salonu, aby ...", by dać polecenia Alexy dla mojego centrum medialnego.
Z mojego doświadczenia wynika, że długie nazwy wywołania działają lepiej niż te krótsze. Użyłem "Kodi" na chwilę ("Zapytaj Kodi do ..."), ale Alexa czasami miała problemy ze znalezieniem filmów. Nie mogłem ci powiedzieć dlaczego, ale dłuższe nazwy, takie jak "salon", działają dla mnie prawie bezbłędnie. Więc spróbuj wybrać coś z kilkoma sylabami.
Po zakończeniu kliknij przycisk Dalej.
Kliknij przycisk "Dodaj typ szczeliny" w środku następnego okna.
Utwórz nowy automat o nazwie PRZEDSTAWIA
. Wróć do swojego folderu kodi-alexa-master, otwórz plik SHOWS za pomocą Notepad ++ i skopiuj programy do skrzynki na stronie Amazon. Pomoże to Alexie rozpoznać programy, które im dyktujesz.
Możesz też po prostu wymienić niektóre programy telewizyjne w pudełku, po jednym na linię. Nie musisz dodawać każdego przedstawienia w bibliotece Kodi, ale dobrze jest mieć przyzwoitą liczbę przykładów (20 lub 30 jest całkiem niezłych).
Po zakończeniu kliknij OK.
Powtórz ten proces tymi typami gniazd: FILMAMI, FILMAMI, MUZYKAMI, MUZYKAMI, MUZYKAMI, LISTAMI MUZYCZNYMI, WIDEOPLAYLISTAMI i ADDONAMI (Jeśli nie masz informacji o żadnej z tych rzeczy, stwórz typ gniazda - kod Ipsona go wymaga - i po prostu napisz słowo "puste" w polu i nie spowoduje żadnych problemów).
Ponownie, nie potrzebujesz każdego pokazu, filmu lub wykonawcy w tych slotach, więc nie musisz ich aktualizować za każdym razem, gdy dodasz nowy film do swojej biblioteki. Po prostu pomaga mieć przyzwoitą liczbę przykładów w każdym z nich.
Po utworzeniu wszystkich dziewięciu typów slotów powróć do folderu kodi-alexa-master. Otwórz folder speech_assets i otwórz IntentSchema.json
i SampleUtterances.txt
pliki za pomocą aplikacji takiej jak Notatnik++.
Zaznacz cały tekst w IntentSchema.json
plik i wklej go w polu "Scent intent" na stronie Amazon Developer. Powtórz ten proces z SampleUtterances.txt
plik, umieszczając tekst w polu "Sample Utterances".
Po zakończeniu kliknij przycisk Dalej. Budowanie modelu interakcji może potrwać kilka chwil.
Na następnej stronie wybierz "HTTPS" dla Typu punktu końcowego i wklej adres URL pod koniec czwartego kroku. Wybierz swój region geograficzny (Ameryka Północna lub Europa) i wybierz "Nie" dla łączenia kont. Kliknij Następny.
Na następnej stronie wybierz "Mój punkt końcowy rozwoju to poddomena domeny z certyfikatem wieloznacznym wydanym przez urząd certyfikacji". Kliknij Następny.
Nie powinieneś dodawać żadnych informacji na stronie Testu, ale możesz sprawdzić niektóre aspekty kodu, jeśli wiesz, co robisz. W przeciwnym razie kliknij Dalej.
Na stronie Informacje o publikowaniu wypełnij wymagane pola, ale nie martw się zbytnio o to, co wstawisz, ponieważ nie będziesz przesyłać tej aplikacji do certyfikacji. Jesteś jedynym, który będzie korzystać z tej aplikacji. (Tutaj znajduje się ikona 108 × 108 i ikona 512 × 512 do użycia.) Po zakończeniu kliknij Dalej.
Na ostatniej stronie wybierz "Nie" dla obu pytań dotyczących prywatności i zaznacz pole Complicance. Kliknij przycisk "Zapisz", kiedy skończysz. NIE klikaj przycisku "Prześlij do certyfikacji".
Krok szósty: sprawdź swoje nowe polecenia
Jeśli wszystko poszło dobrze, powinieneś móc teraz przetestować nowe polecenia. Upewnij się, że twoje pudełko Kodi jest włączone i spróbuj powiedzieć coś takiego:
"Alexa, zapytaj salonu, aby zagrał w pierwszym sezonie, odcinek jeden z Przyjaciół"
(... oczywiście zastąpienie tego epizodem i pokazanie, że masz na swoim komputerze.) To może zająć Alexa chwilę, ale mam nadzieję, że powinna odpowiedzieć i zacząć grać w danym programie. Jeśli pojawi się błąd i odcinek nie zostanie odtworzony, wróć i upewnij się, że zrobiłeś wszystko poprawnie.
Możesz zapytać Alexę, czy masz jakieś nowe odcinki, poprosić ją o odtworzenie kolejnego odcinka serialu, lub nawet użyć jej do kontrolowania Kodi, jako nieskutecznego ("Alexa, poprosić salon o przerwę", "Alexa , poproś salon o nawigację w dół "itd.). Sprawdź SampleUtterances.txt
plik, aby zobaczyć wszystkie rzeczy, które Alexa może zrobić z tą integracją. Jeśli kiedykolwiek chcesz dodać nową frazę, która odpowiada jednej z tych funkcji, po prostu zaloguj się ponownie na swoje konto programisty Amazon i dodaj je do listy wklejonej w kroku czwartym.
Nie jest to najszybsza lub najłatwiejsza konfiguracja, ale gdy już to zrobisz, jest to jedna z najfajniejszych rzeczy, które możesz zrobić z Amazon Echo, według mnie. Teraz mogę zacząć oglądać telewizję podczas gotowania w kuchni lub gdy baterie mojego pilota są martwe. Jest to rodzaj mocy, którą zaprojektowała Amazon Echo, i chociaż wymaga to trochę pracy, to jest tego warte.
Mieć problemy? Sprawdź ten wątek na forach Kodi, a także na oryginalnej stronie GitHub lub upuść linię w naszych komentarzach poniżej.
Tytuł obrazu z doomu / Bigstock i Amazon.