Дистанционное управление - это 1950 год. Если у вас есть медиацентр Kodi и Amazon Echo, вы можете воспроизводить все свои любимые фильмы и шоу с помощью удобной голосовой команды… если вы хотите немного настроить.
В Amazon Echo на наш взгляд, один из самые крутые части умного дома . Управлять светом, жалюзи и телевизором с помощью телефона - это круто, но управлять ими с помощью голоса - это действительно будущее. Я был настроен скептически, но быстро впечатлился - и захотел большего.
СВЯЗАННЫЕ С: Как установить и настроить Amazon Echo
Возможность включить телевизор - это здорово, но на самом деле я хотел иметь возможность управлять своим медиацентром. Я хотел иметь возможность сказать «Включи следующий выпуск« Друзей »» и заставить его искать в моей библиотеке, видеть, что я смотрел последним, и начинать воспроизведение следующего выпуска. И после небольшого поиска я обнаружил, что один предприимчивый программист по имени Джо Ипсон уже сделал именно это .
Это требует небольшой настройки и поначалу выглядит очень устрашающе. Вам нужно будет создать веб-сервер, отправить код из GitHub и немного поработать из командной строки, но вам не нужно быть программистом, чтобы все это запустить. Ипсон сделал почти всю тяжелую работу, и вам просто нужно скопировать его код, отредактировать несколько частей и загрузить его в нужное место. Если вы будете следовать этому руководству в буквальном смысле, вы сразу же приступите к работе.
ПРИМЕЧАНИЕ. Для этого руководства мы используем Amazon Web Services, поскольку он самый надежный. По словам Ипсона, если вы новый пользователь AWS, у вас должна быть возможность использовать навык бесплатно примерно в течение года, после чего с вас будет взиматься менее 20 центов в месяц. Если вы хотите что-то действительно бесплатное, вы можете настроить его с помощью Heroku, заменив шаги два, три и четыре этого руководства на Инструкции Heroku в документации Ipson . Однако он немного менее надежен, и время ожидания некоторых запросов может истекать при его использовании. Мы рекомендуем AWS, если вы хотите получить максимальную пользу - это стоит скудных 20 центов в месяц.
Шаг 1. Подготовьте веб-сервер Kodi
Для того, чтобы это работало, Kodi потребуется сервер, доступный из Интернета. К счастью, это встроено в Kodi, хотя вам может потребоваться перенаправить некоторые порты на вашем маршрутизаторе и выполнить некоторые другие задачи, прежде чем он заработает плавно.
Откройте Kodi в медиацентре и перейдите в Система> Службы> Веб-сервер. Включите веб-сервер, если он еще не включен, и дайте ему имя пользователя и пароль. Обязательно используйте пароль, который вы не используете для других служб.
Вам также понадобится общедоступный IP-адрес вашего дома . Однако, поскольку это может измениться, мы настоятельно рекомендуем подписаться на динамическое доменное имя с помощью такой службы, как Извлечь . Следуйте нашему руководству здесь прежде чем продолжить, если у вас его еще нет.
Наконец, вам нужно настроить переадресацию портов для вашего Kodi Box. Это будет отличаться от маршрутизатора к маршрутизатору, но вы можете ознакомьтесь с нашим руководством здесь Чтобы получить больше информации. Просто перенаправьте любой внешний порт на локальный IP-адрес вашего ящика Kodi (в моем случае 192.168.1.12) и локальный порт (по умолчанию 8080).
ПРИМЕЧАНИЕ: хотя локальный порт Kodi по умолчанию - 8080, вы можете изменить его на все, что захотите, или вы можете перенаправить его на другой внешний порт, чтобы убедиться, что нет никаких проблем (поскольку другие приложения могут запрашивать порт 8080). В этом руководстве я использую 8080, но если вы используете что-то другое, просто замените все экземпляры порта 8080 на внешний порт вы выбираете здесь.
Если все пойдет хорошо, вы сможете получить доступ к веб-интерфейсу Kodi, открыв веб-браузер и набрав:
мы.динамик-домаин.ком:8080
где
мы.динамик-домаин.ком
- это URL-адрес вашего динамического домена, а
8080
это порт, который вы установили в Kodi. Если это не сработает, убедитесь, что Kodi, ваш динамический домен и переадресация портов настроены правильно.
СВЯЗАННЫЕ С: Как легко получить доступ к вашей домашней сети из любого места с помощью динамического DNS
Шаг 2. Создайте учетную запись Amazon Web Services
Затем вам нужно будет создать учетную запись в Amazon Web Services (AWS). Направляйтесь к эта страница и нажмите «Создать учетную запись AWS». При появлении запроса войдите в систему, используя свои учетные данные Amazon. Если у вас еще нет учетной записи AWS, вам будет предложено ввести свои контактные данные, чтобы создать ее. Не забудьте проверить «Личный кабинет» вверху.
Выполните остальные шаги в мастере. Вам также нужно будет ввести данные своей кредитной карты, но не волнуйтесь - как мы уже говорили, с вас не должны взиматься большие деньги (особенно в течение первых 12 месяцев).
После подтверждения своей личности по номеру телефона и выбора плана поддержки (мы рекомендуем Basic, который является бесплатным), нажмите кнопку «Завершить регистрацию» в правом углу экрана. Затем Amazon авторизует вас.
Теперь отправляйтесь в Страница управления идентификацией и доступом (при необходимости снова войдите в AWS) и щелкните вкладку «Пользователи» с левой стороны. Нажмите кнопку «Добавить пользователя».
Создайте нового пользователя с любым именем пользователя. Установите флажок «Программный доступ» и нажмите «Далее: разрешения».
Затем вам будет предложено установить разрешения. Щелкните «Присоединить существующие политики напрямую», затем выполните поиск «Доступ администратора». Отметьте опцию AdministratorAccess и нажмите «Next: Review».
Убедитесь, что ваш пользователь выглядит как на изображении ниже, затем нажмите «Создать пользователя».
Не закрывайте следующую страницу! Здесь вам нужно будет получить идентификатор ключа доступа и секретный ключ доступа (вам нужно будет нажать «Показать», чтобы показать свой секретный ключ). Скопируйте их в текстовый файл для безопасного хранения, потому что вы не сможете снова получить секретный ключ после того, как покинете эту страницу.
После того, как вы их записали, вы можете безопасно закрыть это окно.
Шаг третий: установите 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 \ Scripts \ pip.exe установить awscli
C: \ Python27 \ Scripts \ aws настроить
Это установит инструменты командной строки AWS и запустит инструмент настройки.
При появлении запроса вставьте идентификатор ключа доступа и секретный ключ доступа. Когда вас попросят указать название региона по умолчанию, введите
us-east-1
(если вы находитесь в США) или
eu-west-1
(если вы в Европе). Вы можете оставить свой Формат вывода по умолчанию пустым (просто нажмите Enter).
Затем выполните следующую команду:
C: \ Python27 \ Scripts \ pip.exe установить virtualenv
Он понадобится вам позже.
Теперь перейдите в папку kodi-alexa-master с помощью следующей команды:
Компакт-диск C: \ Users \ Whitson \ Documents \ Code \ kodi-alexa-master
Очевидно, замените путь к файлу на путь, в котором вы сохранили свою папку kodi-alexa-master.
Пока держите окно открытым, нам нужно будет вернуться к нему через минуту.
Во-первых, чтобы код Ipson работал с вашей настройкой Kodi и AWS, вам необходимо определить несколько переменных в файле конфигурации. Скачать
этот шаблон
, переименуйте его в
kodi.config
и сохраните его в папке kodi-alexa-master. Откройте его в удобном для кода текстовом редакторе, например
Блокнот ++
и отредактируйте следующие четыре переменные:
адрес = порт = имя пользователя = пароль =
В
адрес
переменная будет динамическим адресом, который вы установили на первом шаге (например,
мы.динамик-домаин.ком
),
порт
будет порт, который вы использовали на первом шаге (вероятно, 8080, если вы его не изменили), и
имя пользователя
а также
пароль
будут учетными данными из первого шага.
Если в вашем доме несколько коробок Kodi, вы также можете использовать этот файл конфигурации, чтобы управлять ими отдельно с помощью Alexa. Мы не будем рассматривать это в этом руководстве, но вы можете найти инструкции в Документация Ipson здесь .
Когда вы закончите, сохраните файл и вернитесь в окно командной строки.
Шаг четвертый: отправьте свой код в AWS
С этими переменными ваш код готов к развертыванию. Вернувшись в командную строку, выполните эти две команды:
C: \ Python27 \ Scripts \ virtualenv venv
venv \ Scripts \ activate.bat
Это создаст новую «виртуальную среду» и активирует ее.
В появившемся приглашении venv выполните следующие команды:
pip install -r requirements.txt
pip install упаковка
pip install zappa
Это установит инструмент под названием Zappa, который поможет вам развернуть ваш код.
Далее вам нужно будет настроить Zappa. Пробег:
zappa init
Это проведет вас через мастера. Просто примите значения по умолчанию для всего.
Наконец, запустите:
zappa deploy dev
Это развернет ваш код в Lambda. Это займет несколько минут, так что пусть работает. В конце вы получите URL-адрес - скопируйте его, так как он понадобится вам на следующем шаге.
Наконец, я также рекомендую выполнить следующую команду, поскольку полученные файлы вам также понадобятся на следующем шаге:
python generate_custom_slots.py
Убедитесь, что ваш Kodi-бокс включен и работает, когда вы запускаете этот скрипт, так как он будет захватывать названия фильмов, шоу и других медиафайлов из вашей библиотеки.
Ты почти там! Теперь нам просто нужно настроить навык Alexa для этого кода.
Шаг пятый: создайте свой навык Alexa
Чтобы связать код Ipson с нашим Echo, нам нужно создать Alexa «Навык», который использует этот код. Это приложение не будет никому распространяться, оно просто будет навсегда в «тестовом режиме», подключенное к вашей учетной записи Amazon для использования с вашим Echo.
Для начала создайте бесплатную учетную запись разработчика Amazon. Направляйтесь к эта страница , войдите в свою учетную запись Amazon и зарегистрируйте учетную запись разработчика. Заполните обязательные поля, примите условия и скажите «Нет», когда вас спросят, собираетесь ли вы монетизировать свои приложения.
После входа в систему перейдите к «Alexa» на верхней панели инструментов. Нажмите кнопку «Начать» в разделе «Набор навыков Alexa».
Затем нажмите кнопку «Добавить новый навык».
Дайте своему умению имя - я назвал свое «Коди» - и дайте ему имя для призыва. Это то, что вы говорите, когда хотите вызвать команду. Например, мое имя вызова - это также «гостиная», что означает, что я должен сказать «Попросите гостиную…», чтобы давать команды Alexa для моего медиацентра.
По моему опыту, длинные имена вызова работают лучше, чем короткие. Некоторое время я использовал «Коди» («Спроси Коди, чтобы…»), но у Алексы иногда возникали проблемы с поиском фильмов. Я не могу сказать вам почему, но более длинные имена, такие как «гостиная», работают у меня почти безупречно. Так что попробуйте выбрать что-нибудь из нескольких слогов.
По завершении нажмите Далее.
Нажмите кнопку «Добавить тип слота» в середине следующего окна.
Создайте новый слот под названием
ШОУ
. Вернитесь в папку kodi-alexa-master, откройте файл SHOWS с помощью Notepad ++ и скопируйте шоу в поле на странице Amazon. Это поможет Alexa распознавать шоу, которые вы ей диктуете.
Кроме того, вы можете просто перечислить несколько своих телешоу в поле, по одному в строке. Вам не нужно добавлять каждое шоу в свою библиотеку Kodi, но хорошо иметь приличное количество примеров (я обнаружил, что 20 или 30 - это неплохо).
По завершении нажмите ОК.
Повторите этот процесс с этими типами слотов: MOVIES, MOVIEGENRES, MUSICARTISTS, MUSICALBUMS, MUSICSONGS, MUSICPLAYLISTS, VIDEOPLAYLISTS и ADDONS (если у вас нет информации для любого из них, все равно создайте тип слота - код Ipson требует этого - и просто напишите в поле слово «Пустой» - это не вызовет никаких проблем.)
Опять же, вам не нужны все шоу, фильмы или артисты в этих слотах, поэтому вам не нужно обновлять их каждый раз, когда вы добавляете новый фильм в свою библиотеку. Просто полезно иметь приличное количество примеров в каждом.
Когда вы создали все девять типов слотов, вернитесь в папку kodi-alexa-master. Откройте папку Speech_assets и откройте
IntentSchema.json
а также
SampleUtterances.txt
файлы с таким приложением, как
Блокнот ++
.
Выделите весь текст в
IntentSchema.json
файл и вставьте его в поле «Схема намерения» на веб-сайте Amazon Developer. Повторите этот процесс с
SampleUtterances.txt
файл, поместив текст в поле «Образцы высказываний».
Когда вы закончите, нажмите Далее. Построение модели взаимодействия может занять некоторое время.
На следующей странице выберите «HTTPS» в качестве типа конечной точки и вставьте URL-адрес, полученный в конце четвертого шага. Выберите свой географический регион (Северная Америка или Европа) и выберите «Нет» для привязки учетной записи. Нажмите "Далее.
На следующей странице выберите «Моя конечная точка разработки - это поддомен домена, имеющего групповой сертификат от центра сертификации». Нажмите "Далее.
Вам не нужно добавлять какую-либо информацию на тестовую страницу, хотя вы можете протестировать определенные аспекты кода, если знаете, что делаете. В противном случае нажмите Далее.
На странице «Информация о публикации» заполните обязательные поля, но не беспокойтесь о том, что вы указали, поскольку вы не отправите это приложение на сертификацию. Вы единственный, кто будет использовать это приложение. ( Вот значок 108 × 108 а также значок 512 × 512 для использования.) Нажмите Далее, когда закончите.
На последней странице выберите «Нет» для обоих вопросов о конфиденциальности и установите флажок «Соответствие». По завершении нажмите кнопку «Сохранить». НЕ нажимайте кнопку «Отправить на сертификацию».
Шаг шестой: проверьте свои новые команды
Если все прошло хорошо, теперь вы сможете протестировать свои новые команды. Убедитесь, что ваш ящик Kodi включен, и попробуйте сказать что-нибудь вроде:
«Алекса, попроси гостиную сыграть первый сезон, первый эпизод сериала« Друзья »
(… Очевидно, заменяя это эпизодом и шоу, которое у вас есть на вашем компьютере.) Это может занять некоторое время, но, надеюсь, она ответит и начнет играть в шоу, о котором идет речь. Если вы получили сообщение об ошибке, и серия не воспроизводится, вернитесь и убедитесь, что вы все сделали правильно.
Вы можете спросить Алексу, есть ли у вас какие-либо новые эпизоды, попросить ее сыграть следующую серию шоу или даже использовать ее для управления Коди, сколь бы неэффективным это ни было («Алекса, попроси гостиную приостановить», «Алекса , попросите гостиную перейти вниз »и т. д.). Проверьте
SampleUtterances.txt
файл, чтобы увидеть все, что Alexa может сделать с этой интеграцией. Если вы когда-нибудь захотите добавить новую фразу, которая соответствует одной из этих функций, просто войдите в свою учетную запись Amazon Developer и добавьте ее в список, который мы вставили на четвертом шаге.
Это не самая быстрая и простая вещь в настройке, но, как только она заработает, на мой взгляд, это одна из самых крутых вещей, которые вы можете сделать с помощью Amazon Echo. Теперь я могу начать смотреть телевизор, пока готовлю на кухне или когда батарейки в моем пульте разряжены. Amazon Echo был разработан для такой мощности, и, хотя для этого нужно немного поработать, оно того стоит.
Попасть в неприятности? Проверять, выписываться эта ветка на форумах Kodi , так же как исходная страница GitHub , или оставьте строку в наших комментариях ниже.
Заглавное изображение из Doomu / Bigstock и Amazon.