Як керувати своїм медіацентром Kodi за допомогою Amazon Echo
Якщо у вас є медіацентр Kodi і емоція Amazon, ви можете відтворити всі ваші улюблені фільми та шоу з добре розташованою голосовою командою… якщо ви готові трохи налаштувати програму.
Amazon Echo, на наш погляд, одна з найхолодніших частин розумного будинку. Керування світлом, жалюзі та телевізора з телефоном прохолодно, але керування ними голосом - це справді майбутнє. Я був скептичний, але швидко став вражений - і голодним більше.
Можливість включити свій телевізор - це круто, але те, що я дійсно хотів, - це можливість керувати своїм медіа-центром. Я хотів би мати можливість сказати "Грати наступний епізод Друзів" і дати йому пошук у моїй бібліотеці, подивитися, що я дивився останнім, і почати грати в наступному епізоді. І після трохи пошуків, я виявив, що один заповзятливий програміст на ім'я Джо Іпсон вже зробив саме це.
Це займає трохи налаштування, і це виглядає дуже залякує спочатку. Вам потрібно створити веб-сервер, натиснути якийсь код з GitHub і зробити невелику роботу з командного рядка, але вам не потрібно бути програмістом, щоб це було запущено. Ipson зробив майже всі важкі вантажопідйомники, і вам просто потрібно скопіювати його код, відредагувати кілька частин і завантажити його в потрібне місце. Якщо ви будете дотримуватися цього посібника до листа, ви повинні працювати і працювати в найкоротший час.
ПРИМІТКА. Ми використовуємо веб-служби Amazon для цього підручника, оскільки це найбільш надійний. Якщо ви є новим користувачем AWS, Ipson каже, що ви повинні мати можливість запускати майстерність безкоштовно протягом року, після чого вам буде нараховано менше 20 на місяць. Якщо ви хочете щось по-справжньому вільне, ви можете налаштувати його за допомогою Heroku замість того, щоб замінити кроки два, три і чотири цього посібника інструкціями Heroku в документації Ipson. Це, однак, трохи менш надійні, і деякі запити можуть припинитися, коли ви його використовуєте. Ми рекомендуємо AWS, якщо ви хочете, щоб найкращий досвід був можливим - це коштує бідних 20 на місяць.
Крок перший: Підготуйте свій веб-сервер Kodi
Для того, щоб це працювало, Kodi потрібно мати сервер, доступний з Інтернету. На щастя, це вбудовано в Kodi, хоча вам може знадобитися перенаправити деякі порти на вашому маршрутизаторі та виконати деякі інші завдання, перш ніж він працюватиме плавно.
Відкрийте Kodi у вашому медіа-центрі та перейдіть до System> Services> Web Server. Увімкніть веб-сервер, якщо він ще не ввімкнено, і вкажіть ім'я користувача та пароль. Обов'язково використовуйте пароль, який ви не використовуєте для будь-якої іншої служби.
Вам також знадобиться загальнодоступна IP-адреса вашого будинку. Однак, оскільки це може змінитися, ми настійно рекомендуємо зареєструватися для динамічного доменного імені за допомогою служби типу Dynu. Слідкуйте за нашим керівництвом, перш ніж продовжувати, якщо у вас ще немає такої.
Нарешті, вам потрібно налаштувати перенаправлення портів для вашого вікна Kodi. Це буде відрізнятися від маршрутизатора до маршрутизатора, але ви можете ознайомитися з нашим керівництвом тут для отримання додаткової інформації. Просто пересилайте будь-який зовнішній порт до локальної IP-адреси вашого вікна Kodi (у моєму випадку - 192.168.1.12) і локального порту (за замовчуванням 8080).
ПРИМІТКА: в той час, як локальний порт Kodi за замовчуванням є 8080, ви можете змінити його на все, що хочете, або перенаправити його на інший зовнішній порт, щоб переконатися, що немає ускладнень (оскільки інші програми можуть запитувати порт 8080). Я використовую 8080 у цьому підручнику, але якщо ви використовуєте щось інше, просто заміните всі екземпляри порту 8080 на зовнішній порт ви виберете тут.
Якщо все буде добре, ви зможете отримати доступ до веб-інтерфейсу Kodi, відкривши веб-браузер і ввівши:
my.dynamic-domain.com:8080
де
my.dynamic-domain.com
є URL-адресою вашого динамічного домену та 8080
це порт, який ви встановили в Kodi. Якщо це не допоможе, переконайтеся, що Kodi, ваш динамічний домен і перенаправлення портів були налаштовані належним чином.
Крок другий: налаштування облікового запису веб-служб Amazon
Далі потрібно налаштувати обліковий запис за допомогою Amazon Web Services (AWS). Зайдіть на цю сторінку та натисніть кнопку "Створити обліковий запис AWS". Увійдіть, використовуючи облікові дані Amazon, коли з'явиться запит. Якщо ви вже не маєте облікового запису AWS, вам буде запропоновано ввести свою контактну інформацію, щоб створити її. Обов'язково відмітьте "Особистий рахунок" у верхній частині.
Пройдіть інші кроки майстра. Вам також доведеться ввести дані кредитної картки, але не хвилюйтеся, як ми вже говорили, вам не потрібно стягувати стягнення, якщо взагалі (особливо за перші 12 місяців).
Після перевірки вашої особи з номером телефону та вибором плану підтримки (ми рекомендуємо Basic, який є безкоштовним), натисніть кнопку "Завершити реєстрацію" у правому куті екрана. Після цього Amazon увійде до вас.
Тепер перейдіть на сторінку "Управління ідентифікацією та доступом" (у разі необхідності увійдіть до AWS) і натисніть вкладку "Користувачі" зліва. Натисніть кнопку "Додати користувача".
Створіть нового користувача з будь-яким іменем користувача. Установіть прапорець "Програмний доступ" і натисніть "Далі: Дозволи".
Далі буде запропоновано встановити дозволи. Натисніть "Приєднати існуючі політики безпосередньо", а потім знайдіть "AdministratorAccess". Перевірте параметр AdministratorAccess і натисніть "Далі: Огляд".
Переконайтеся, що ваш користувач виглядає як зображення нижче, а потім натисніть "Створити користувача".
Не закривайте наступну сторінку! Тут потрібно взяти ідентифікатор ключа доступу та секретний ключ доступу (тут потрібно натиснути "Показати", щоб показати секретний ключ). Скопіюйте їх до текстового файлу для безпечного зберігання, оскільки ви не зможете отримати секретний ключ знову після виходу з цієї сторінки.
Після того, як ви записали ці повідомлення, ви можете закрити це вікно безпечно.
Крок третій: Встановіть Python 2.7 та налаштуйте ваші змінні
Для того, щоб підштовхнути код Ipson до AWS, вам знадобиться встановлений на вашому комп'ютері Python 2.7. Ми будемо використовувати Windows у цьому підручнику, але ви повинні мати можливість робити це на MacOS і Linux.
Щоб встановити Python на Windows, перейдіть на сторінку завантаження Python і завантажте Python 2.7. Запустіть програму встановлення, як і будь-яку іншу програму Windows. Скористайтеся типовим вибором, оскільки нам знадобляться деякі інструменти, які постачаються з інсталятором Python.
Потім натисніть тут, щоб завантажити код Ipson. Розпакуйте папку kodi-alexa-master у файлі ZIP, десь на жорсткому диску.
Після встановлення, час копатися в командному рядку. Натисніть Windows + X на клавіатурі та виберіть командний рядок. (Користувачі Mac і Linux захочуть відкрити відповідні програми терміналів). Звідти виконайте наступні дві команди:
C: Python27 Скрипти pip.exe встановлюють awscli
C: Python27 Скрипти aws configure
Це дозволить встановити інструменти командного рядка AWS і запустити інструмент налаштування.
Вставте ідентифікатор ключа Acces і ключ секретного доступу, коли з'явиться запит. Коли вас запитають про Ваше ім'я регіону за замовчуванням, введіть us-east-1
(якщо ви перебуваєте в США) або eu-west-1
(якщо ви перебуваєте в Європі). Ви можете залишити свій формат виводу за промовчанням порожнім (просто натисніть Enter).
Далі виконайте таку команду:
C: Python27 Скрипти pip.exe встановлюють virtualenv
Це потрібно буде встановлено надалі.
Тепер CD в папку kodi-alexa-master з наступною командою:
CD C: Користувачі Whitson Документи Код Код-alexa-master
Очевидно, замінити шлях файлу на шлях, куди ви зберегли папку kodi-alexa-master.
Тримайте відкрите вікно зараз, ми повинні повернутися до нього через мить.
По-перше, для того, щоб код Ipson працював з налаштуваннями Kodi і AWS, потрібно визначити кілька змінних у файлі конфігурації. Завантажте цей шаблон, перейменуйте його kodi.config
, і збережіть його в папці-коді-alexa-master. Відкрийте його у зручному для коду текстовому редакторі, наприклад Notepad ++, і відредагуйте наступні чотири змінні:
address = port = ім'я користувача = пароль =
The адресу
змінною буде динамічна адреса, яку ви налаштували на першому етапі (наприклад,. my.dynamic-domain.com
), порт
буде порт, який ви використовували на першому етапі (ймовірно, 8080, якщо ви його не змінили), і ім'я користувача
і пароль
будуть повноваженнями від першого кроку.
Якщо у вас є кілька полів Kodi у вашому будинку, ви також можете використовувати цей конфігураційний файл для керування ними окремо за допомогою Alexa. Ми не переходимо до цього в цьому посібнику, але ви можете знайти інструкції в документації Ipson тут.
Коли ви закінчите, збережіть файл і поверніться до вікна командного рядка.
Крок четвертий: Натисніть Ваш код на AWS
З урахуванням цих змінних, ваш код готовий до розгортання. Повернувшись до командного рядка, запустіть ці дві команди:
C: Python27 Скрипти віртуальні венв
Скрипти \ t
Це створить нове «віртуальне середовище» і активує його.
З підказки venv, яка з'явиться, виконайте такі команди:
pip install -r requirements.txt
встановлення упаковки
pip встановити заппа
Це дозволить встановити інструмент під назвою Zappa, який допоможе вам розгорнути код.
Далі потрібно налаштувати Zappa. Виконати:
zappa init
Він проведе вас через майстра. Просто прийміть значення за замовчуванням для всього.
Нарешті, запустіть:
zappa deploy dev
Це дозволить розгорнути ваш код у Lambda. Це займе кілька хвилин. Зрештою, це дасть вам URL-копіювати це вниз, тому що вам знадобиться на наступному кроці.
Нарешті, я також рекомендую запустити таку команду, оскільки вам знадобляться отримані файли на наступному кроці:
python generate_custom_slots.py
Переконайтеся, що вікно Kodi увімкнено та запущено під час запуску цього сценарію, оскільки він буде забирати імена фільмів, шоу та інших медіа з вашої бібліотеки.
Ви майже там! Тепер нам просто потрібно встановити навички Alexa для цього коду.
Крок п'ятий: Створіть свій Alexa Skill
Щоб підключити код Ipson до нашого Echo, нам потрібно створити Alexa "Skill", який використовує цей код. Ця програма не буде поширюватися нікому, вона просто перебуватиме в режимі тестування назавжди, підключена до вашого власного облікового запису Amazon для використання з вашим ехо.
Для початку створіть безкоштовний обліковий запис розробника Amazon. Зайдіть на цю сторінку, увійдіть у свій акаунт Amazon і зареєструйтеся для облікового запису розробника. Заповніть необхідні поля, прийміть умови та скажіть "Ні", коли вас запитають, чи збираєтеся ви монетизувати свої програми.
Після входу в систему, зверніться до “Alexa” у верхній панелі інструментів. Натисніть кнопку "Почати роботу" в розділі "Набір навичок Alexa".
Далі натисніть кнопку "Додати новий навик".
Дайте своїй майстерності назву - я назвав свою "Коді" - і дайте йому ім'я виклику. Це те, що ви будете говорити, коли ви хочете викликати команду. Наприклад, моє ім'я виклику також є «вітальнею», що означає, що мені доведеться сказати «Запросіть у вітальні…», щоб надати командам Alexa для мого медіа-центру.
З мого досвіду, довгі імена викликів працюють краще, ніж коротші. Я використав “Коді” на деякий час (“Запитай Коді…”), але в Алекса час від часу виникали проблеми з пошуком фільмів. Я не можу сказати вам, чому, але довгі імена викликів, такі як «вітальня», працюють майже бездоганно для мене. Тому спробуйте вибрати щось з кількома складами.
Після завершення натисніть кнопку Далі.
Натисніть кнопку "Додати тип слота" в середині наступного вікна.
Створити назву нового слота SHOWS
. Поверніться до папки kodi-alexa-master, відкрийте файл SHOWS за допомогою програми Notepad ++ і скопіюйте покази у вікно на сторінці Amazon. Це допоможе Алекса розпізнати шоу, які ви диктуєте їй.
Крім того, ви можете просто перерахувати деякі телепрограми у вікні, по одному на рядок. Вам не потрібно додавати кожне шоу в бібліотеці Kodi, але добре мати пристойне число прикладів (я знайшов 20 або 30 досить добре).
Після завершення натисніть кнопку OK.
Повторіть цей процес за допомогою цих типів слотів: MOVIES, MOVIEGENRES, MUSICARTISTS, MUSICALBUMS, MUSICSONGS, MUSICPLAYLISTS, VIDEOPLAYLISTS і ADDONS. напишіть слово "Порожній" у вікні.
Знову ж таки, вам не потрібен кожний показ, фільм або виконавець у цих слотах, тому не потрібно оновлювати їх щоразу, коли ви додаєте новий фільм до вашої бібліотеки. Це просто допомагає мати пристойну кількість прикладів у кожному.
Коли ви створили всі дев'ять типів слотів, поверніться до теки kodi-alexa-master. Відкрийте папку speech_assets і відкрийте вікно IntentSchema.json
і SampleUtterances.txt
файли з додатком на зразок "Блокнот"++.
Виберіть весь текст у IntentSchema.json
Надішліть файл і вставте його в поле "Схема намірів" на веб-сайті розробника Amazon. Повторіть цей процес за допомогою SampleUtterances.txt
файл, розміщуючи текст у полі "Sample Utterances".
Після цього натисніть кнопку Далі. Для побудови моделі взаємодії може знадобитися кілька хвилин.
На наступній сторінці виберіть "HTTPS" для кінцевої точки і вставте в URL, який ви отримали в кінці четвертого етапу. Виберіть географічний регіон (Північна Америка або Європа) і виберіть "Ні" для посилання на обліковий запис. Натисніть кнопку Далі.
На наступній сторінці виберіть "Моя кінцева точка розробки - це субдомен домену, який має сертифікат підстановки від центру сертифікації". Натисніть кнопку Далі.
Вам не потрібно додавати будь-яку інформацію на тестовій сторінці, хоча ви можете перевірити деякі аспекти коду, якщо знаєте, що ви робите. В іншому випадку натисніть кнопку Далі.
На сторінці "Інформація про публікацію" заповніть необхідні поля, але не хвилюйтеся над тим, що ви ввели, оскільки ви не будете надсилати цю програму для сертифікації. Ви єдиний, хто буде використовувати цю програму. (Тут знаходиться піктограма 108 × 108 і значок 512 × 512 для використання.) Після завершення натисніть кнопку Далі.
На останній сторінці виберіть "Ні" для обох питань конфіденційності та позначте поле Сміття. Після завершення натисніть кнопку "Зберегти". НЕ натискайте кнопку "Надіслати для сертифікації".
Крок шостий: перевірте нові команди
Якщо все пройшло добре, ви зможете тестувати нові команди зараз. Переконайтеся, що вікно Kodi увімкнено, і спробуйте сказати щось подібне:
"Алекса, попроси у вітальні грати в сезон 1, один з друзів"
(… Явно замінюючи це з епізодом та показом що ви маєте на вашій машині.) Це може взяти Alexa момент, але сподіваюся вона повинна відповісти та початок грати показ у питання. Якщо ви отримали помилку, а епізод не відтворюється, поверніться назад і переконайтеся, що ви зробили все правильно.
Ви можете попросити Алекса, якщо у вас є нові епізоди, попросіть її зіграти наступний епізод шоу, або навіть використати її, щоб керувати Коді, як неефективно, як це може бути («Алекса, попросіть у вітальні призупинити», «Alexa» , попросіть житлову кімнату орієнтуватися вниз ”і т.д.). Перевірте SampleUtterances.txt
файл, щоб побачити всі речі, які Алекса може зробити з цією інтеграцією. Якщо ви хочете додати нову фразу, яка відповідає одній з цих функцій, просто увійдіть до облікового запису розробника Amazon і додайте її до списку, який ми вставили на четвертому етапі.
Це не найшвидша або найпростіша річ для налаштування, але як тільки ви працюєте, це легко одне з найхолодніших речей, які ви можете зробити з вашим Amazon Echo, на мій погляд. Тепер я можу почати дивитися телевізор під час приготування їжі на кухні, або коли акумулятори мого пульта заблоковані. Це така потужність, яку Amazon Echo розробив, і навіть якщо це займе трохи роботи, це варто.
Виникли проблеми? Перевірте цей потік на форумах Kodi, а також на початковій сторінці GitHub або вкажіть рядок у нашому коментарі нижче.
Назва зображення з doomu / Bigstock і Amazon.