Как добавить Alexa в ваше умное зеркало

Умное зеркало с отражением Amazon Echo.

Если вы создали интеллектуальное зеркало, у вас уже есть удобный доступ к календарям, погоде и новостям. Но вы можете сделать больше! Программное обеспечение Magic Mirror позволяет добавлять модули для дополнительных функций, например Alexa для голосового управления.

Эти модули создают другие разработчики. Варианты варьируются от полезных, таких как Alexa или обнаружение присутствия (с помощью камеры или пассивного инфракрасного датчика), до развлекательных, таких как снежинки и информация о воспроизведении Spotify.

Мы рекомендуем ммм-здорово-Алекса поскольку он, похоже, поддерживается активным разработчиком, хотя есть и другие модули Alexa для программного обеспечения Magic Mirror.

Если вы предпочитаете установить Google Assistant, Google предлагает полное руководство для установки Ассистента на Raspberry Pi, включая шаги, изображения и ссылки для скачивания. Хотя существует несколько модулей Magic Mirror для Google Assistant, наше расследование показало, что модули являются проблемными, часто дают сбой или закрывают зеркальную информацию. Если вам нужна наиболее простая настройка, мы рекомендуем добавить Комплект Google AIY и используя его конкретный учебник.

Чтобы установить большинство модулей, вы выполните несколько основных шагов:

Загрузите код модуля с GitHub
Настроить параметры для конкретного модуля
Добавьте модуль в конфигурацию зеркала

В зависимости от модуля шаги два и три могут быть более или менее задействованными. Для настройки Alexa требуется больше настроек, чем, например, добавление снежинок. Кроме того, этот конкретный модуль Alexa требует установки некоторого дополнительного программного обеспечения (зависимостей) перед загрузкой модуля.

Материалы, которые вам понадобятся

Голосовой комплект Google AIY

В этом руководстве предполагается, что вы уже создали Smart Mirror. Если вы еще этого не сделали, начните с этого, но не забывайте о дополнительных материалах, перечисленных здесь в ваших расходах и соображениях по размещению.

Завершено Smart Mirror
Микрофон
Оратор

Для микрофона и динамика рекомендуем оригинальные Голосовой комплект Google AIY. За 16 долларов вам будет сложно найти более дешевую комбинацию микрофона и динамика. Вам не обязательно использовать прилагаемую картонную коробку; может быть более эффективным не использовать компоненты и вывести микрофон и динамик за пределы зеркала.

Вторая версия Голосовой комплект Google AIY доступен, но он дороже и включает в себя Raspberry Pi Zero, который недостаточно мощный, чтобы запускать слова пробуждения или программное обеспечение Magic Mirror, поэтому вам следует пропустить его.

Подключите динамик и микрофон, и вы готовы к установке модуля Alexa. Если вы используете комплект Google AIY, просто следуйте его руководство по сборке для подключения микрофона и динамиков.

Установка зависимостей модуля

Прежде чем вы сможете загрузить и настроить mmm-awesome-alexa, вам необходимо установить несколько зависимостей, на которые опирается модуль. Всегда рекомендуется обновить Raspberry Pi, прежде чем пытаться установить что-либо еще. На вашем Raspberry Pi начните с выполнения этой команды:

sudo apt update && sudo apt upgrade

Как только ваш Raspberry Pi будет обновлен, выполните одну за другой следующие команды:

sudo apt-get install sox libsox-fmt-all
sudo apt-get install swig3.0 python-pyaudio python3-pyaudio sox
pip install pyaudio
sudo apt-get install libasound-dev portaudio19-dev libportaudio2 libportaudiocpp0 ffmpeg libav-tools
sudo apt-get install libatlas-base-dev

Каждая команда устанавливает зависимость, и все они необходимы для запуска. Просто запустите команду, дождитесь завершения загрузки и установки, а затем выполните следующую команду.

Загрузка кода модуля

Первым шагом к добавлению любого модуля для Magic Mirror является загрузка кода модуля на Github. Для этого вам нужно войти в Raspberry Pi, открыть терминал и перейти в каталог, в котором хранятся модули. Затем вы воспользуетесь командой загрузки, чтобы получить код из Github. Если у вас есть доступ к оболочке, вы можете делать все это удаленно.

После открытия терминала введите следующее:

cd ~/MagicMirror/modules

Эта команда перемещает вас в рабочий каталог папки модулей программы Magic Mirror. Каждый раз, когда вы загружаете новый модуль, вам захочется быть здесь, чтобы все было организовано. Следующим шагом будет загрузка программного обеспечения с Github с помощью этой команды:

git clone https://github.com/dolanmiu/MMM-awesome-alexa.git

Когда он закончится, измените каталоги в модуле с помощью следующей команды:

cd MMM-awesome-alexa

Для корректной работы модуля Alexa требуется несколько дополнительных зависимостей. Выполните эту команду, чтобы установить их:

npm install --only=prod

Теперь измените каталоги во вновь созданную папку node_modules:

cd node_modules

Удалите папку Snowboy, добавленную предыдущими командами. Нам нужна более новая версия Snowboy:

rm -rf snowboy

Затем мы загрузим последнюю версию Snowboy с помощью следующей команды:

git clone https://github.com/Kitt-AI/snowboy.git

Прежде чем мы продолжим, перейдите в новую папку Snowboy.

cd snowboy

Теперь нам нужно удалить папку node_modules и установить некоторые дополнительные зависимости. Важно, чтобы вы оставались внутри папки снежного мальчика для этих шагов; не меняйте каталоги. Выполните следующие команды одну за другой:

rm -rf node_modules
npm install nan --save 
npm install [email protected] --save 
npm install 
npm run prepublish 
npm install --save-dev electron-rebuild 
npm install nan 
./node_modules/.bin/electron-rebuild

Теперь модуль полностью загружен и установлен.

Настройка модуля Alexa

Диалог Config-helper для MMM-awesome-alexa

Теперь, когда модуль mmm-awesome-alexa установлен, нам нужно его настроить. Первый шаг — сменить каталоги на корень модуля. В терминале введите следующую команду и нажмите Enter:

cd ~/MagicMirror/modules/MMM-awesome-alexa

Этот модуль Alexa имеет помощника по настройке; мы хотим запустить это. В типе терминала:

npm run config-helper

Вы увидите запрос с запросом идентификатора клиента. Поскольку вы, по сути, настраиваете собственное Echo, вам нужно открыть браузер и перейти к Сайт разработчика Alexa. Затем войдите в свою учетную запись Amazon.

После входа в систему нажмите кнопку «Начать». Вы создаете устройство, поэтому нажмите «Продукты» и нажмите «Создать продукт».

Диалоговое окно разработчика Alexa с окном выбора продуктов.

На следующем экране дайте вашему продукту имя и идентификатор продукта — мы предлагаем «Magic_Mirror_Alexa» в качестве имени и «YourFirstName_MM_Alexa» в качестве идентификатора продукта. Выберите Smart Home для категории и включите параметры громкой связи и дальнего поля. Вы увидите серию вопросов «да» или «нет», выберите «Нет» для всех и нажмите «Далее».

На экране профиля безопасности нажмите «Создать новый профиль». Используйте то же имя для своего профиля безопасности, что и для идентификатора продукта. Затем введите любое желаемое описание и нажмите Далее.

Проверьте соглашение и нажмите Готово.

Щелкните только что созданный продукт, затем профиль безопасности, и вы должны увидеть идентификатор клиента и секрет клиента.

В разрешенном типе записи URL-адреса возврата:
https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

Затем нажмите кнопку добавления. Прокрутите вниз и щелкните поле обновления, чтобы завершить добавление URL-адреса.

В терминале вы увидите запрос идентификатора клиента. Скопируйте идентификатор клиента из браузера, вставьте его в Терминал и нажмите Enter. Теперь терминал запросит секрет клиента. Вернитесь в браузер, скопируйте секрет клиента, затем вставьте его в Терминал и нажмите Enter.

Когда будет предложено ввести идентификатор устройства, введите имя, которое вы создали выше, в качестве идентификатора продукта (Magic_Mirror_Alexa в нашем примере).

Когда вас попросят указать URL-адрес возврата, введите следующую команду и нажмите Enter:

https://magic-mirror-avs.github.io/Alexa-Web-Helper/authresponse

Терминал отобразит специально созданную ссылку. Скопируйте это и вставьте в свой браузер. Затем войдите в свою учетную запись Amazon, если будет предложено. Нажмите Разрешить на следующем экране.

Alexa озвучивает запрос разрешений служб с рамкой вокруг кнопки разрешения.

Вы увидите ошибку в браузере, но не волнуйтесь! Это ожидаемо. Прокрутите URL-адрес страницы с ошибкой и найдите раздел «Код = xxxxxx».

URL-адрес, показывающий код устройства Alexa.

Скопируйте буквы и цифры между «code =» и «& scope» и вставьте их в терминал. Когда закончите, нажмите Enter.

Когда вас спросят, хотите ли вы создать конфигурацию MagicMirror, введите Y и нажмите Enter.

Вас спросят, какое пробуждающее слово использовать. Alexa — выбор по умолчанию, поэтому нажмите Enter.

Ответьте нет для использования облегченного режима и визуализации.

Помощник по настройке сгенерирует информацию о вашем модуле. Это будет выглядеть примерно так:

{
 module: "MMM-awesome-alexa",
 position: "bottom_bar",
 config: {
 wakeWord: "Alexa",
 clientId: "YOUR_CLIENT_ID",
 clientSecret: "YOUR_CLIENT_SECRET",
 deviceId: "YOUR_DEVICE_ID",
 refreshToken: "YOUR_REFRESH_TOKEN",
 lite: false,
 isSpeechVisualizationEnabled: false
 }
 }

Автоматически сгенерированный код модуля.

Скопируйте эти строки. Нам нужно добавить их в конфигурацию Magic Mirror.

Добавьте модуль Alexa в конфигурацию Magic Mirror

Затем перейдите в папку конфигурации Magic Mirror с помощью следующей команды:

cd ~ / MagicMirror / config

И откройте config.js с помощью команды nano:

нано config.js

Сразу после первого экземпляра} (который является концом модуля) нажмите Enter, чтобы создать пустую строку перед следующей записью {(которая является началом нового модуля).

код модулей с новой строкой, вставленной после} и перед {

В новую пустую строку, которую вы создали, вставьте код модуля из шагов помощника по настройке. В автоматически сгенерированном коде есть ошибка; вам также нужно будет ввести запятую после последней скобки, чтобы ваш модуль заканчивался символом},

вставлен код модуля с добавлением запятой после последней скобки

Используйте Ctrl + x, чтобы закрыть файл. При появлении запроса введите «y», чтобы подтвердить сохранение, и нажмите Enter, чтобы сохранить имя файла.

Модуль завершен. Чтобы перезапустить программу Magic Mirror с установленным модулем, введите pm2 restart mm, и программа Magic Mirror перезагрузится. Алекса теперь должна работать на вашем Magic Mirror.

Это один из наиболее сложных модулей, которые вы можете настроить для Magic Mirror. Но для других модулей основные шаги такие же: загрузка кода, настройка параметров для конкретного модуля, добавление модуля в конфигурацию. Можете добавить снежинки к твоему зеркалу, или определение движенияили даже показать свой Google Фото.