Alexa En Raspberry Pi 3

by MCI electronics in Circuits > Linux

16730 Views, 17 Favorites, 0 Comments

Alexa En Raspberry Pi 3

ale-rasp.png
Domótica con Raspberry + Alexa + Sonoff

Esta guía provee paso a paso instrucciones para configurar Alexa Voice Service en una Raspberry Pi 3. Podrás ver cómo acceder a Alexa usando un ejemplo hecho en Java.

Materiales

Configurar Tu Raspberry Pi

Debes tener instalado Raspbian Jessie en la Raspberry.

https://www.raspberrypi.org/downloads/raspbian/

Crear Cuenta En Amazon Developer

alexa1.png

Crea una cuenta gratuita en developer.amazon.com

​Registra Tu Producto Y Crea Perfil De Seguridad

Alexa2.png
alexa3.png
alexa4.png

Después de tener una cuenta en Amazon developer, necesitas crea un dispositivo Alexa y un perfil de seguridad. Asegúrate de tomar nota de los siguientes parámetros porque más adelante los necesitaras:

ProductID, ClientID y ClientSecret.

1. Login en el portal de Amazon Developer

2. Clic en Apps & Service -> Alexa -> Alexa Voice Service -> Get Started

3. Despliega el menú que se encuentra en Register a Product Type y selecciona Device

4. Llena los formularios

4.1 Device Type ID – Identificador de producto (Colocar my_device)

4.2 Display name – Nombre que se muestra en el portal de Amazon (Colocar My Device)

4.3 Clic Next

Perfil De Seguridad

alexa5.png
alexa6.png
alexa7.png
alexa8.png
alexa9.png

1. Clic en Security Profile y escoge Crear un nuevo perfil

2. Escribe un nombre y descripción. Por ejemplo:

- Security Profile Name: Alexa Voice Service Sample App Security Profile

- Security Profile Description: Alexa Voice Service Sample App Security Profile Description

Un Client ID y Client Secret se generará para ti.

3. Clic en Web Settings. Asegúrate que el perfil de seguridad que has creado es seleccionado en el menú desplegable . luego selecciona el botón “Edit”

- Allowed Origins: Clic en “Add Another” y luego coloca https://localhost:3000 en el espacio en blanco.

- Allowed Retur URLs: Clic “Add Another” y luego coloca https://localhost:3000/authresponse en el espacio en blanco que aparece.

- Clic next.

​Detalles Del Dispositivo

alexa10.png

1. Imagen

2. Category – Other

3. Description – Alexa Voice Service simple app test

4. Do you plans to make your product available to the general public? – NO

5. Clic next

Habilitar Perfil De Seguridad

alexa11.png
alexa12.png
alexa13.png
alexa14.png

1. Abrir un buscador de navegación y luego visita https://developer.amazon.com/lwa/sp/overview.html.

2. En la parte superior de la página, selecciona el perfil de seguridad que creaste anteriormente en el menú desplegable.

3. Introduzca una URL que comience con http:// o https://. Para este ejemplo, puedes utilizar una URL falsa como http://example.com

4. (Opcional) Puedes cargar una imagen.

5. Clic Save.

Luego de crear el perfil Alexa Voice Service Sample App Security Profile, haz clic en show Client ID and Client Secret. Te mostrara tu client ID y client Secret. Guarda estos parámetros porque los utilizaras más adelante.

Clonar La Aplicación De Ejemplo

Abre un terminal y escribe lo siguiente:

cd Desktop

Git clone https://github.com/alexa/alexa-avs-sample-app.git

Actualiza El Script De Instalación Con Tus Credenciales

alexa16.png

Antes de correr el Script, necesitas actualizarlo con las credenciales que obtuviste al crear el perfil en Amazon developer (ProductID, ClientID, ClientSecret)

Escribe lo siguiente en el terminal:

cd Desktop

cd Alexa-avs-sample-app

nano automated_install.sh

Pega las credenciales que obtuviste anteriormente. Los cambios deberían lucir así:

ProductID="my_device"

ClientID="amzn.xxxxx.xxxxxxxxx"

ClientSecret="4e8cb14xxxxxxxxxxxxxxxxxxxxxxxxxxxxx6b4f9"

Presion ctrl-X, luego ctrl-Y y por ultimo Enter para guardar los cambios en el archivo.

Ejecuta El Script De Instalación

alexa17.png

Ahora estás listo para correr el script de instalación. Esto instalara todas las depedencias, incluyendo las 2 maneras de activar la palabra para despertar de Sensory y KITT:AI.

Abre el Terminal y dirígete a la dirección donde fue clonado el proyecto

cd Desktop

cd Alexa-avs-sample-app

. automated_install.sh

Se le pedirá que responda algunas preguntas sencillas. Esto le ayudará a asegurarse de que ha completado todos los requisitos previos necesarios antes de continuar.

Esto tarda aproximadamente media hora.

Ejecuta El Web Service, La App De Ejemplo Y El Motor De Palabra De Alerta

alexa18.png
alexa19.png
alexa20.png
alexa21.png
alexa22.png
alexa23.png
alexa24.png
alexa25.png
alexa26.png
alexa27.png
alexa28.png

Ahora que la instalación ha sido completada, necesitas ejecutar tres comandos en 3 terminales separados:

1. Ventana 1: Para ejecutar el servicio web y obtener la autorización

2. Ventana 2: Para ejecutar la aplicación de ejemplo AVS

3. Ventana 3: Para ejecutar motor de palabra de alerta, lo que te permite empezar una interacción usando la palabra “Alexa”.

Estos comandos se deben ejecutar en orden.

Ventana 1:

Abre un nuevo terminal y escribe los siguientes comandos:

cd ~/Desktop/alexa-avs-sample-app/samples

cd companionService && npm start

Ahora el servidor está corriendo en el puerto 3000.

Ventana 2:

Abre un nuevo terminal y escribe los siguientes comandos:

cd ~/Desktop/alexa-avs-sample-app/samples

cd javaclient && mvn exec:exec

Vamos a caminar a través de los próximos pasos relacionados con la ventana 2.

1. Cuando se ejecuta el cliente, una ventana debe aparecer con un mensaje que dice:

Please register your device by visiting the following URL in a web browser and following the instructions: https://localhost:3000/provision/d340f629bd685dee... Would you like to open the URL automatically in your default browser?

Clic en “Yes” para abrir la URL en tu buscador.

2. Si está ejecutando Raspbian Jessie con el escritorio de Pixel (y con el navegador Chromium), puede recibir una advertencia desde el navegador. Puede desplazarlo haciendo clic en Advanced -> Proceed to localhost(unsafe).

3. Esto te llevara al login de la página de Amazon. Inicia Sesion

4. Te llevará a una página de Autorización de Dev, confirmando que deseas que tu dispositivo acceda al Perfil de seguridad creado anteriormente.
Clic Okay

5. Ahora será redirigido a una URL que comienza con https://localhost:3000/authresponse seguido de una cadena de consulta. El cuerpo de la página web dirá tokens dispositivo listo.

6. Vuelva a la aplicación Java y haga clic en el botón Aceptar. El cliente está listo para aceptar las solicitudes de Alexa.

Ventana 3:

Nota: Omita este paso para ejecutar la misma aplicación sin un motor de palabra de alerta.


Abra una nueva ventana de terminal y utilice los siguientes comandos para abrir un motor de palabra de alerta de Sensory o KITT.AI. El motor de la palabra permitirá que usted comience las interacciones usando la frase "Alexa".

Para utiliza el motor de palabra de alerta Sensory, escriba:

cd ~/Desktop/alexa-avs-sample-app/samples

cd wakeWordAgent/src && ./wakeWordAgent -e sensory

o escriba lo siguiente para activar el motor de palabra de alerta KITT.AI

cd ~/Desktop/alexa-avs-sample-app/samples

cd wakeWordAgent/src && ./wakeWordAgent -e kitt_ai


Habla Con Alexa

Ahora ya puedes hablar con Alexa, usando la palabra Alexa seguido de la instrucción.Di Alexa, (Espera por el Beep), Ahora di What’s the time?

Si lo prefiere, también puede hacer clic en el botón "Listen", en lugar de usar la palabra de despertador. Haga clic en el botón "Listen" y espere a que la señal de audio antes de comenzar a hablar. Puede tardar un segundo o dos antes de escuchar la señal de audio.

Si deseas implementar Alexa con Sonoff te invito a ver el siguiente tutorial https://www.instructables.com/id/Sonoff-Alexa/