Skill de Alexa para reproducir YouTube con dispositivos Echo
Last update: 05 Ago 2021 (USE Python 3.7 in Amazon AWS)
- Reproducir audio de videos de YouTube
- Reproducir video (si es compatible) en videos en vivo o si solicita solo un video específico (comando 8)
- Hace una lista de todos los videos reproducidos en la aplicación Alexa.
- In English, say "Alexa, launch YouTube".
- In German, say "Alexa, öffne YouTube".
- In Italian, say "Alexa, avvia YouTube".
- In Spanish, say "Alexa, abrir YouTube".
- Reproduce un video, por ejemplo, "Alexa, abre YouTube y pon Rock".
- Reproduce una lista de reproducción, por ejemplo, "Alexa, abre YouTube y reproduce la playlist Rock de los 80s y 90s".
- Reproducir un canal, por ejemplo, "Alexa, abre YouTube y reproduce el canal eSavants"
- Puedes reemplazar "reproducir" con "aleatorio" para obtener una versión aleatoria de los resultados de búsqueda / canal / playlist, por ejemplo, "Alexa, abre YouTube y pon en aleatorio la playlist Rock de los 80s y 90s".
- Puedes agregar más comandos directamente en el archivo que colocarás más adelante en el "JSON Editor" en la parte de la creación de la skill para amazon.
- Parece que esta habilidad solo funciona en productos de Amazon Echo, no en productos de terceros que admiten Alexa.
- Los videos en vivo funcionan en dispositivos Gen 2 en adelante, no en el Gen 1 Echo original.
- Necesitamos una clave de desarrollador de YouTube.
- Vaya a: https://developers.google.com/ inicie sesión o cree una nueva cuenta
- Vaya a: https://console.developers.google.com/project y haga click en "Crear un nuevo proyecto"
- Asígnele un nombre, por ejemplo, "Token de API actualizado".
- Haga click en "Crear"
- Espere unos segundos a que se cree el proyecto (puede verificar mediante una notificación en la esquina superior derecha de la pantalla)
- Abrir en una página nueva: https://console.developers.google.com/apis/library?project=tester-api-key
- Seleccione "Elegir un proyecto" y haga click en el proyecto recién creado ("Token API actualizado")
- En la barra de búsqueda, escriba "youtube" y seleccione "API de datos de YouTube v3".
- Haga click en él y seleccione "HABILITAR"
- Haga click en "Crear credenciales" y luego Ayúdame a elegir.
- Establecer así:
- “¿Qué API estás usando?”: YouTube Data API v3
- “¿A qué datos quieres acceder?”: Datos públicos
- Siguiente
- Click en listo.
- COPIAR y GUARDAR la clave en el bloc de notas.
- Vaya a: http://aws.amazon.com
- Haga click en "Abrir consola" en la esquina superior derecha
- Cree una nueva cuenta de AWS haciendo click en "Crear una nueva cuenta de AWS"
- Durante el registro ¡SELECCIONE EL PLAN BÁSICO GRATUITO! (Si no ve una página para elegir el plan, significa que ha seleccionado el plan básico gratuito). Para confirmar tu identidad Amazon te pedirá una Tarjeta de Crédito, ESTO ES NORMAL, no pagas nada pero necesitas tener al menos 1 € en la tarjeta para la preautorización. Para confirmar la activación de su cuenta, Amazon puede tardar desde algunos minutos hasta algunas horas. Verás esta página: Para acelerar el proceso, intente hacer click en "Complete su registro de AWS" y confirme su número de teléfono móvil. Si tardará más de 24 horas, intente ponerse en contacto con el soporte.
- Después de la activación de la cuenta, vaya aquí: http://aws.amazon.com .
- Haga click en "Abrir consola".
- MUY IMPORTANTE comprobar la región en la esquina superior derecha “N. Virginia ”y seleccione la región correcta, Ejemplo: región de EE . UU. Este (Norte de Virginia) para conocimientos de inglés (EE. UU.) O inglés (CA) Región de la UE (Irlanda) para inglés (Reino Unido), inglés (IN), alemán (DE), Habilidades en español (ES) o francés (FR) Región de EE . UU. Oeste (Oregón) para habilidades en japonés e inglés (AU).
- Haga click en Servicios y busque Lambda
- Haga click en Crear función
- Seleccione el plan "Crear desde cero. Proporcione un nombre de función y elija Python 3.7 para el tiempo de ejecución".
- Haga click en Cambiar el rol de ejecución predeterminado. Luego seleccione Creación de un nuevo rol desde la política de AWS templates y coloque "ejecucion_basica_lambda" en el nombre del rol y "Permisos básicos de Lambda@Edge (para el desencadenador de CloudFront)" en Plantillas de políticas - opcional
- Después de la creación, seleccione Agregar desencadenador y elija "Alexa Skills Kit".
- Desactivar la verificación de ID de la habilidad
- En la pestaña de Código, dar Click en Carga desde Archivo .zip. Cargar este archivo: https://github.com/nestorlasso/AlexaYoutubeES/blob/master/AlexaYoutubeESLambda.zip
- En la pestaña de configuración, click en Variables de entorno, luego en editar.
- Agrega las variables de entorno con DEVELOPER_KEY y el código que hemos tomado de Google (guardado antes).
- Agrega las variables de entorno con youtube_dl y su valor en false inicialmente, si presenta errores en en log de AWS relacionado con pytube, cambiar este valor a true para que funcione con youtube_dl.
- En los campos de configuración general, click en editar y configurar 512 en memoria (MB) y 20 segundos en tiempo de espera
- Haga click en guardar y copiar el ARN, en la esquina superior derecha de la página.
- Vaya a la consola de Alexa (https://developer.amazon.com/alexa/console/ask)
- Si no se ha registrado como desarrollador de Amazon, deberá hacerlo. Siga los pasos solicitados y listo.
- Una vez que haya iniciado sesión en su cuenta, ir a la pestaña Alexa y seleccionar Alexa Skills Kit o ir directamente a la url (https://developer.amazon.com/alexa/console/ask). Haga click en "Create Skill" en el lado derecho.
- Dale a tu habilidad cualquier nombre, por ejemplo, "Mi habilidad de YouTube".
- Importante Establezca el idioma en el que esté configurado su dispositivo Echo. Si no está seguro, vaya a la aplicación Alexa, vaya a Configuración, Configuración del dispositivo, luego haga click en su dispositivo Echo y busque en Idioma. Si su Echo está configurado en español (US), entonces la habilidad debe ser español (US), ¡otros tipos de español no funcionarán!
- Elija "Custom" como modelo, y "Provision your own" como método, luego haga click en "Create Skill". En la página de la plantilla, elija "Start from Scratch".
- En el lado izquierdo, haga click en "JSON Editor" en la sección Interaction Model.
- Elimine todo en el cuadro de texto y copie el texto de https://github.com/nestorlasso/AlexaYoutubeES/blob/master/InteractionModel/InteractionModel_es.json, (o use InteractionModel_fr.json, InteractionModel_it.json, InteractionModel_de.json, InteractionModel_en.json, InteractionModel_ja.json o InteractionModel_pt-br.json para francés, italiano, alemán, inglés, japonés o portugués de Brasil.)
- Click "Save Model" en la parte superior.
- Click "Interfaces" en el menú de la izquierda, y habilitar "Audio Player" y "Video App". Click en "Save Interfaces".
- Click "Endpoint" en el menú de la izquierda, and seleccione "AWS Lambda ARN". En "Default Region", colocar la ARN (de la parte de Amazon AWS).
- Click "Save Endpoints"
- Click "Permissions", en la parte inferior del menú de la izquierda en tools.
- Habilitar "Lists Read" y "Lists Write".
- Click "Custom" en el menú de la izquierda.
- Click "Invocations" en el menú de la izquierda.
- Si quiere nombrar la skillde otra manera diferente a "youtube", cambiar en la opción Skill Invocation Name. Click "Save Model" y será modificado.
- Click "Build Model". Esto tomará algunos minutos. Cuando termine dirá que el modelo se encuentra bien.
- Importante: En la parte superior, click "Test". Donde dice "Skill testing is enabled in:", cambiar de "Off" a "Development".
Y eso es todo.