Erstellung eines Verbindungstokens — Python

Um einen Benutzer zu authentifizieren, der eine Verbindung zu einer OpenTok-Sitzung herstellt, muss ein Client die Verbindung mithilfe eines Tokens herstellen (siehe diese Übersicht).

Das folgende Python-Code-Beispiel zeigt, wie man mithilfe der serverseitigen OpenTok-Python-Bibliothek ein Token generiert:

import OpenTok

# Replace with your OpenTok API key:
api_key = "your_API_key"
# Replace with your OpenTok API secret:
api_secret = "your_API_secret"
# Replace with the representative URL of your session:
session_address = "192.0.43.10"

opentok_sdk = OpenTok.OpenTok(api_key, api_secret)
session = opentok_sdk.create_session(session_address)
token = opentok_sdk.generate_token(session.session_id)
print token

Aufrufen der generate_token() Die Methode gibt eine Zeichenkette zurück. Diese Zeichenkette ist das Token.

Das folgende Python-Code-Beispiel zeigt, wie man ein Token abruft, das die Rolle „publisher“ hat und eine Metadatenzeichenfolge für die Verbindung enthält:

import OpenTok

# Replace with your OpenTok API key:
api_key = "your_API_key"
# Replace with your OpenTok API secret:
api_secret = "your_API_secret"
# Replace with the representative URL of your session:
session_address = "192.0.43.10"

opentok_sdk = OpenTok.OpenTok(api_key, api_secret)
role_constants = OpenTok.RoleConstants

session = opentok_sdk.create_session(session_address)
connectionMetadata = "username=Bob,userLevel=4"
token = opentok_sdk.generate_token(session.session_id, role_constants.PUBLISHER, None, connectionMetadata)
print token

Die Methode nimmt die folgenden Argumente entgegen:

  • session_id (Zeichenkette) — Die Sitzungs-ID der Sitzung, mit der sich der Benutzer verbinden wird.
  • role (Zeichenkette) — Optional. Hiermit wird die Rolle des Benutzers festgelegt. Es gibt drei Rollen: Abonnent, Veröffentlichender und Moderator. Abonnenten können lediglich Streams in der Sitzung abonnieren (sie können keine Streams veröffentlichen). Verleger können Streams in der Sitzung abonnieren und veröffentlichen sowie die Signalisierungs-API nutzen. Moderatoren verfügen über die Berechtigungen von Verlegern und können darüber hinaus andere Benutzer zwingen, die Verbindung zur Sitzung zu trennen oder die Veröffentlichung einzustellen. Die Standardrolle (sofern kein Wert übergeben wird) ist „Verleger“.
  • connection_data (Zeichenkette) — Optional. Eine Zeichenkette, die Metadaten zur Beschreibung der Verbindung enthält. Sie können beispielsweise die Benutzer-ID, den Namen oder andere Daten übergeben, die die Verbindung beschreiben. Diese Daten können Sie je nach Ihrer Anwendung aus einer serverseitigen Datenbank oder aus Daten beziehen, die Ihnen vom Client zur Verfügung gestellt werden.
  • expire_time (int) — Optional. Der Zeitpunkt, zu dem das Token abläuft, definiert als ganzzahliger Wert für einen Unix-Zeitstempel (in Sekunden). Wenn Sie diesen Wert nicht angeben, laufen die Token 24 Stunden nach ihrer Erstellung ab. Das expire_time Der Wert muss, sofern angegeben, innerhalb von 30 Tagen nach dem Erstellungszeitpunkt liegen.