5.5. Processing a Local Description (Verarbeitung einer lokalen Beschreibung)
5.5. Processing a Local Description (Verarbeitung einer lokalen Beschreibung)
Wenn ein SessionDescription an setLocalDescription übergeben wird, MÜSSEN die folgenden Schritte ausgeführt werden:
-
Ist die Beschreibung vom Typ
"rollback", ist die in Abschnitt 5.7 definierte Verarbeitung zu befolgen, und die im restlichen Teil dieses Abschnitts beschriebene Verarbeitung ist auszulassen. -
Andernfalls wird der Typ des SessionDescription mit dem aktuellen Zustand des PeerConnection abgeglichen:
-
Ist der Typ
"offer", MUSS der Zustand des PeerConnection entweder"stable"oder"have-local-offer"sein. -
Ist der Typ
"pranswer"oder"answer", MUSS der Zustand des PeerConnection entweder"have-remote-offer"oder"have-local-pranswer"sein.
-
-
Entspricht der Typ nicht dem aktuellen Zustand, MUSS die Verarbeitung gestoppt und ein Fehler zurückgegeben werden.
-
Anschließend wird das SessionDescription daraufhin geprüft, ob sein Inhalt mit dem bei dem letzten Aufruf von
createOffer/createAnswererzeugten Inhalt identisch ist und also nicht verändert wurde, wie in Abschnitt 5.4 erläutert; andernfalls MUSS die Verarbeitung gestoppt und ein Fehler zurückgegeben werden. -
Als Nächstes wird das SessionDescription in eine Datenstruktur geparst, wie unten in Abschnitt 5.8 beschrieben.
-
Schließlich wird das geparste SessionDescription angewendet, wie in Abschnitt 5.9 unten beschrieben.