
Teilen Sie:
Adam ist ein Entwickler und Berater, der gerne Ultraläufe absolviert, bloggt und anderen dabei hilft, Technologien zu zähmen, um erstaunliche Dinge zu erreichen, und der ein unstillbares Verlangen hat, Mentoren zu sein und zu helfen.
Erstellen einer Video-Sitzung in AWS Lambda mit Python
Lesedauer: 8 Minuten
In diesem Beitrag werden Sie eine Vonage Video OpenTok session client als Microservice für AWS Lambdabereit, geschrieben in Python. Sie verwenden dazu diese Python-Anwendung, die auf Github verfügbar ist die Folgendes verwendet Flaskund Serverless.
Diese Beispielanwendung bietet die ersten Schritte, die für die Nutzung der Vonage Video API. Dieser Microservice ermöglicht es Applications, eine Video-Chat-Sitzung anzufordern. Durch das Abrufen einer sessionerhalten Sie auch eine session_id um eine token Anfrage. Die entsprechende /token Anfrage-Methode in dieser Anwendung bietet dies.
Voraussetzungen
Anweisungen zur Einrichtung
Klonen Sie die nexmo-community/opentok-session-lambda-python von GitHub, und navigieren Sie in das neu erstellte Verzeichnis, um fortzufahren.
Umwelt
umbenennen .env.default in .env und fügen Sie Werte hinzu zu OPENTOK_API_KEY und OPENTOK_API_SECRET die von Ihrem Vonage Video APIs Account bereitgestellt werden.
Verwendung
Um zu beginnen, erstellen Sie eine virtualenv im Stammverzeichnis des Projekts, das das Projekt enthält, während Sie fortfahren. Aktivieren Sie es dann wie folgt:
Als nächstes initialisieren Sie npm und folgen Sie den Anweisungen, um das System einzurichten. In den meisten Fällen sollten Sie die Standardeinstellungen wählen, es sei denn, Sie möchten sie ändern. Verwenden Sie außerdem npm um einige für die Entwicklung benötigte Abhängigkeiten zu installieren, damit Serverless und Lambda die Arbeit mit der Flask Anwendung. Verwenden Sie die folgenden Befehle, um diesen Schritt auszuführen.
Nun sollten Sie mit pip die erforderlichen Python-Abhängigkeiten aus der Datei requirements.txt die im geklonten Code enthalten sind.
Lokales Laufen
Mit der virtualenv eingerichtet, können Sie die App lokal ausführen und testen, bevor Sie sie in AWS Lambda bereitstellen. Sie können sie mit dem folgenden Befehl bereitstellen:
Standardmäßig wird die Anwendung bei der lokalen Ausführung auf Ihrem System unter http://localhost:5000. Klicken Sie auf Ctrl+c wird die Anwendung geschlossen, nachdem Sie sie beendet haben.
Auf Lambda bereitstellen
Wenn alle oben genannten Schritte erfolgreich abgeschlossen sind, können Sie die Serverlos verwenden, um die App in AWS Lambda.
Nach der Bereitstellung erhalten Sie die URL, die für den Zugriff auf die Anwendung über das API-Gateway erforderlich ist. Notieren Sie sich die URL für den nächsten Schritt.
WICHTIG! Die Beispielanwendung führt in ihrer jetzigen Form keine Authentifizierung oder Überprüfung durch. Jeder, der nach der Bereitstellung Zugriff auf die bereitgestellte URL hat, kann darauf zugreifen. Dies könnte zu unerwarteten Abbuchungen von Ihrem Vonage Account führen. Sichern Sie daher die Anwendung, wenn Sie sie aktiv lassen möchten.
Verfügbare Endpunkte
Es gibt 4 URL-Endpunkte, die mit diesem Client verfügbar sind:
GET-Anfrage an
/Führt keine Aktionen aus, bietet aber eine schnelle Möglichkeit zum Testen
POST-Anfrage an
/session/sessionliefert die Sitzungs-ID.Indem Sie ein POST-Formular wie das folgende einfügen, können Sie die Standardparameter für die Erstellung einer Sitzung ändern: (die Standardwerte werden so angezeigt, als ob Sie den Textkörper leer lassen würden).
location=None, media_mode=relayed, archive_mode=manualHinweis: Siehe Dokumentation zu media_mode und archiv_mode Optionen.
HINWEIS: Der Standort erwartet eine IP-Adresse.
/token/<session_id>Sie können dann eine neue Sitzung anfordern, indem Sie die
<session_id>an den/tokenEndpunkt übergeben.
Beispiele:
Rufen Sie die vom Bereitstellungsprozess bereitgestellte URL auf. Im Folgenden finden Sie einige Beispiele dafür, wie Anfragen aussehen können: (Ihre URL wird variieren.)
GET https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/
Der / Endpunkt gibt die generische Nachricht zurück.
POST https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/session
Der session Endpunkt gibt die session_id zurück, die zur Anforderung eines Tokens benötigt wird.
https://7ulasfasdasdfw4.execute-api.us-east-1.amazonaws.com/dev/token/9807adsf0sae89fu0se87r0sf
Der token Endpunkt gibt die token zurück, die für die Interaktion mit OpenTok benötigt wird.
Deaktivieren von Virtualenv
Zum Verlassen des virtualenvkönnen Sie sie bei Bedarf deaktivieren.
Nächste Schritte
Wenn Sie Fragen haben oder Probleme auftreten, können Sie sich an @VonageDev auf Twitter oder in der Vonage Entwickler-Gemeinschaft Slack-Team. Viel Glück!