Erstellung einer Sitzung — PHP
Sie können die OpenTok-PHP-Bibliothek verwenden, um OpenTok-Sitzungen zu erstellen. Jede Sitzung verfügt über eine eindeutige Sitzungs-ID, mit der Sie sich über eine OpenTok-Client-Bibliothek mit einer OpenTok-Sitzung verbinden können. (Siehe „An einer Sitzung teilnehmen“ für Web, iOS, oder Android.)
Erstellen einer Sitzung, die den OpenTok Media Router nutzt
Die folgende Code-Session, in der der OpenTok Media Router verwendet wird:
<?php
use OpenTok\OpenTok;
$apiObj = new OpenTok($API_KEY, $API_SECRET);
$session = $apiObj->createSession(array('mediaMode' => MediaMode::ROUTED));
echo $session->getSessionId();
?>
Verwenden Sie die Sitzungs-ID in einer OpenTok-Client-Bibliothek, um eine Verbindung zu einer OpenTok-Sitzung herzustellen.
In einer HTML-Seite, die die OpenTok.js-Bibliothek verwendet, können Sie PHP-Code einbetten, der auf den API-Schlüssel, die Sitzungs-ID und die generierte Token-Zeichenkette verweist, wie im folgenden Beispiel gezeigt:
var apiKey = <?php print $API_KEY?>;
var sessionId = '<?php print $sessionId; ?>';
var token = '<?php print $apiObj->generateToken($sessionId); ?>';
Außerdem müssen Sie für jeden Benutzer, der eine Verbindung zur OpenTok-Sitzung herstellt, ein Token generieren. Siehe Erstellung eines Verbindungstokens Informationen zu den generateToken() Methode.
Die OpenTok Media Router bietet die folgenden Vorteile:
- Der OpenTok Media Router kann den Bandbreitenverbrauch in Sitzungen mit mehreren Teilnehmern senken. (In einer weitergeleiteten Sitzung muss jeder Client einen separaten Audio-Video-Stream an jeden Teilnehmer senden, der diesen abonniert hat.)
- Der OpenTok Media Router kann die Qualität des Nutzererlebnisses verbessern durch Audio-Fallback und Video-Wiederherstellung. Dank dieser Funktionen wird das Video auf einem Client unterbrochen (ohne dass andere Clients davon betroffen sind), wenn sich die Verbindung des Clients so weit verschlechtert, dass sie die Wiedergabe des Videos für einen abonnierten Stream nicht mehr unterstützt; der Client empfängt dann nur noch Audio. Verbessert sich die Verbindung des Clients wieder, wird das Video wieder angezeigt.
- Der OpenTok Media Router unterstützt die Archivierungsfunktion, mit dem Sie OpenTok-Sitzungen aufzeichnen, speichern und abrufen können.
Erstellen einer weitergeleiteten Sitzung
Hier ist ein PHP-Beispielcode, der eine neue Sitzung mit dem Medienbetrieb auf „Relayed“ gesetzt:
<?php
use OpenTok\OpenTok;
$apiObj = new OpenTok($API_KEY, $API_SECRET);
$session = $apiObj->createSession();
echo $session->getSessionId();
?>
Bei einer weitergeleiteten Sitzung versuchen die Clients, Streams direkt untereinander auszutauschen. Wenn die Clients jedoch aufgrund von Firewall-Einschränkungen keine Verbindung herstellen können, nutzt die Sitzung den OpenTok-TURN-Server, um Audio- und Videostreams weiterzuleiten.
Das ist wichtig: Einige Funktionen, wie beispielsweise die Archivierung, stehen nur in gerouteten (nicht weitergeleiteten) Sitzungen zur Verfügung. Anweisungen zum Erstellen einer gerouteten Sitzung finden Sie im vorherigen Abschnitt.
Erstellen einer automatisch archivierten Sitzung
Sie können eine Sitzung erstellen, die automatisch archiviert wird. Hier ist ein PHP-Beispielcode, der eine automatisch archivierte Sitzung erstellt:
$sessionOptions = array(
'archiveMode' => ArchiveMode::ALWAYS,
'mediaMode' => MediaMode::ROUTED
);
$session = $opentok->createSession($sessionOptions);
echo $session->getSessionId();
Beachten Sie, dass archivierte Sitzungen im „Routed Media“-Modus stattfinden müssen.
Weitere Informationen finden Sie in der Archivierung Leitfaden für Entwickler.
Verwendung von Sitzungen in Client-Applikationen
Verwenden Sie die Sitzungs-ID in einem OpenTok-Client SDK um eine Verbindung zu einer OpenTok-Sitzung herzustellen.
Außerdem müssen Sie für jeden Benutzer, der eine Verbindung zur OpenTok-Sitzung herstellt, ein Token generieren. Siehe Erstellung eines Verbindungstokens Informationen zu den generateToken() Methode.