
Compartir:
Adam es un desarrollador y consultor al que le gusta correr a toda velocidad, bloguear y ayudar a otros a domar la tecnología para conseguir cosas increíbles, con un deseo insaciable de servir de mentor y ayudar.
Cómo crear una sesión de Video en AWS Lambda con Python
Tiempo de lectura: 8 minutos
En este artículo, implementará un Video de Vonage OpenTok session client como microservicio en AWS Lambdaescrito en Python. Lo harás utilizando esta aplicación Python disponible en Github que utiliza Flasky sin servidor.
Esta aplicación de ejemplo proporciona los primeros pasos necesarios para utilizar la API de Video de Vonage. Este microservicio permite a las Applications solicitar una sesión de videochat. Al obtener un sessiontambién se obtiene un session_id para permitir una token solicitud. El método /token de esta aplicación lo permite.
Requisitos previos
Instrucciones de instalación
Clonar el archivo nexmo-community/opentok-session-lambda-python de GitHub y navega hasta el directorio recién creado para continuar.
Medio ambiente
Cambie el nombre de .env.default a .env y añada valores a OPENTOK_API_KEY y OPENTOK_API_SECRET proporcionados por tu cuenta de API de Video de Vonage.
Utilización
Para empezar, cree un virtualenv dentro de la raíz del proyecto para contener el proyecto a medida que avanza. A continuación, activarlo, de la siguiente manera:
A continuación, inicialice npm y siga las instrucciones para configurarlo. En la mayoría de los casos, debes seleccionar los valores predeterminados, a menos que desees cambiar alguno de ellos. Además, utilice npm para instalar algunas dependencias necesarias para el desarrollo para habilitar Serverless y Lambda para trabajar con la Flask aplicación. Utilice los siguientes comandos para completar este paso.
Ahora deberías usar pip para instalar las dependencias necesarias de Python desde el directorio requirements.txt incluido en el código clonado.
Running Local
Con la virtualenv configurado, puedes ejecutar la aplicación localmente y probar las cosas antes de implementar en AWS Lambda. Puedes servirla con el siguiente comando:
Por defecto, la ejecución local en su sistema sirve la aplicación en http://localhost:5000. Si pulsa Ctrl+c la cierra al terminar.
Despliegue en Lambda
Con todo lo anterior terminado con éxito, puede utilizar Serverless para desplegar la aplicación en AWS Lambda.
Tras la implantación, recibirá la URL necesaria para acceder a la aplicación a través del API Gateway. Anote la URL para el siguiente paso.
IMPORTANTE: La aplicación de ejemplo, tal cual, no realiza ninguna autenticación ni verificación. Cualquiera con acceso a la URL provista luego de la implementación puede acceder a ella. Hacerlo podría causar cargos inesperados en tu Account de Vonage. Por lo tanto, protege la aplicación si piensas dejarla activa.
Puntos finales disponibles
Hay 4 puntos finales de URL disponibles con este cliente:
Solicitud GET a
/No realiza ninguna acción, pero proporciona una forma rápida de probar
Solicitud POST a
/session/sessionproporciona el ID de sesión.Incluyendo un formulario POST como el siguiente, puede cambiar los parámetros por defecto utilizados para crear una sesión: (los valores por defecto se muestran como si dejara el cuerpo vacío).
location=None, media_mode=relayed, archive_mode=manualNota: Véase la documentación de modo_medio y modo_archivo opciones.
NOTA: La localización espera una dirección IP.
/token/<session_id>A continuación, puede solicitar una nueva sesión pasando el atributo
<session_id>al endpoint/tokenendpoint.
Ejemplos:
Vaya a la URL proporcionada por el proceso de despliegue. A continuación se muestran algunos ejemplos del aspecto que pueden tener las solicitudes: (Su URL variará.)
GET https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/
El punto final / devuelve el mensaje genérico.
POST https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/session
El punto final session devolverá el session_id necesario para solicitar un token.
https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/token/9807adsf0sae89fu0se87r0sf
El punto final token devolverá la información token necesario para interactuar con OpenTok.
Desactivar Virtualenv
Para salir del virtualenvpuede desactivarlo cuando lo desee.
Próximos pasos
Si tiene alguna pregunta o se encuentra con problemas, puede ponerse en contacto con @VonageDev en Twitter o consultar en la Comunidad de desarrolladores de Vonage en Slack. Buena suerte.