Frage
Ich habe RTCpeerConnection eingerichtet, aber es funktioniert nur lokal (zwischen 2 Laptops auf meiner drahtlosen Verbindung). Für andere Verbindungen sehe ich einen schwarzen Bach. Ich vermute, es liegt an den Eiskandidaten, die nicht ordnungsgemäß gesammelt werden, sie enthalten nur lokale IPs:
generasacodicetagpre.Hier ist die generationspoDicetagcode config:
generasacodicetagpre.In einem anderen Bereitstellungsgerät funktioniert diese Konfiguration jedoch eigentlich für Remote-Peers und ich erhalte Kandidaten mit einer öffentlichen IP.
edit
Ausführen von Tests mit noch einem anderen Peer-Ausgangspunkten:
generasacodicetagpre.Die oben genannten Ergebnisse in einem PeerConnection.iceconnectionState= 'Checking'. Ist die Reihenfolge der Ereignisse für eine Callee?
- .
- Angebot erhalten
- Erhalten Sie Eiskandidaten von einem anderen Peer, aber nicht speichern, da der SetRemoteDecription Callback nicht abgefeuert wurde
- Remote-Beschreibung erfolgreich eingestellt.
- Remote-Stream wird empfangen
- Antwort senden
- Gespeicherte Kandidaten hinzufügen
Beachten Sie, dass dieses aktuelle Setup zwischen 2 Laptops in meinem LAN arbeitet. Ich kann Remote-Streams anzeigen. Es funktioniert einfach nicht für verschiedene Netzwerke, schwarze Bildschirme und iceServers
Was bedeutet das?
Wie kann ich dieses Problem lösen / debuggen?
Muss ich irgendwelche anderen Stun / Runde-Server einrichten?
Lösung
gelöst, indem Sie einen STUN- / Turn-Server richtig einrichten.Es scheint, dass einige Peers einen Rundenserver benötigen, um den Verkehr zu steuern, da STUN fehlschlägt.