Ich kodiere eine einfache Chat-Anwendung und möchte eine gemeinsame Zeichenfläche zu meiner Anwendung hinzufügen, die Datenkanal verwendet, um Leinwandpunkte zwischen ihnen zu senden. Aber es ist eine optionale Spezifikation, also möchte ich nicht jedes Mal einen Datenkanal öffnen, wenn ich einen Chat öffne. Wenn ich den Datenkanal nach dem Herstellen der Peer-Verbindung (nach dem Angebot) öffne, kann ich keine Daten über den Datenkanal senden. Sonst kann ich senden (Ich habe diesen Punkt von hier: https://stackoverflow.com/a/35141500/5663292). Also warum muss ich Datenkanal öffnen, bevor Peer-Verbindung Angebot?Warum muss ich den Datenkanal vor dem Senden eines Peer-Verbindungsangebots öffnen?
1
A
Antwort
1
Das SDP Angebot/Antwort legt fest, wie genau Ihre Kollegen kommunizieren möchten. Das Angebot beinhaltet die eigentliche Verbindungsmethode (IP/Port/TURN-Relais) und welche Streams, Codecs und Kanäle Sie verwenden möchten. Die Antwort schmälert dies/bestätigt, was der andere Peer akzeptieren kann.
Wenn Sie etwas zur Kommunikation hinzufügen möchten, wie einen zusätzlichen Medienstream oder einen Datenkanal, müssen Sie den anderen Peer darüber informieren, sonst erwartet er nichts/kann nicht damit umgehen. immer
ist Der Fluss:
- alles, was Sie zu einem Remote-Peer auf dem lokalen
RTCPeerConnection
- senden möchten bereiten eine Beschreibung lokale erzeugen
- es an den Remote-Peer die
- erwarten senden die Antwort des entfernten Peers
- die Antwort der Fernbedienung enthalten (
setRemoteDescription
)
Nur dann sind beide Peers auf der gleichen Seite und können wirklich miteinander reden. Wiederholen Sie diesen Vorgang bei Bedarf, d. H. Wenn Sie etwas an dem, was Sie senden, wesentlich ändern.
Verwandte Themen
- 1. Wie funktioniert der Datenkanal eines FTP?
- 2. Senden von Bilddaten über RTC-Datenkanal
- 3. ARM: Warum muss ich bei Funktionsaufrufen zwei Register drücken/öffnen?
- 4. leer Eingabefeld vor dem Senden
- 5. Ajax Codierungsparameter vor dem Senden?
- 6. zend Dekorator, Hinzufügen eines leeren Elements vor dem Senden Schaltfläche
- 7. jQuery - Fragen Sie den Benutzer vor dem Absenden eines Formulars
- 8. C - Muss ich Dateien nach dem Öffnen mit Systemaufrufen schließen?
- 9. So validieren Eingaben vor dem Öffnen eines modalen für Senden Schaltfläche
- 10. Warum warten SIFS Zeit vor dem Senden von ACK?
- 11. Überprüfen Sie vor dem Öffnen eines Dokuments in NSDocument-Architektur
- 12. Serialisieren eines Arrays vor dem Senden an einen API-Endpunkt
- 13. Ändern der Parameterwerte vor dem Senden an den Basiskonstruktor
- 14. Lesen der TCP-Sequenznummer vor dem Senden eines Pakets
- 15. Hash-Passwort vor dem Senden des Formulars
- 16. Ermitteln doppelter Werte vor dem Senden eines Formulars
- 17. Warum muss ich den Pointer vor der Verwendung des Wertes auf den Zeiger "int" setzen?
- 18. Muss ich vor dem Aufruf von syncfs eine Datei schließen()
- 19. Anforderungsheader vor dem Senden prüfen 100 Weiter
- 20. Senden einer Ajax-Anfrage vor dem Senden des Formulars
- 21. Warum muss ich in einem Objektinitialisierer @ vor `Name` setzen?
- 22. Ändern Sie ein Eingabefeld vor dem Senden
- 23. .net Cookies, muss ich an den Browser senden?
- 24. ExtJS überprüft den Wert einer Zelle vor dem Senden
- 25. Sollte ich vor dem Senden anonymer Nutzungsinformationen um Erlaubnis fragen?
- 26. Anhalten der Ajax vor dem Senden Bild
- 27. Vorschau einer E-Mail vor dem Senden
- 28. aktive Formularvalidierung manuell vor dem Senden auslösen
- 29. Muss Associate() vor dem Aufruf aufrufen activate()
- 30. C# SetCompatibleTextRenderingDefault muss vor dem ersten
danke für deine klare antwort –