public static RTCIceCandidateInit FromNative(this Webrtc.IceCandidate nativeIceCandidate) => new RTCIceCandidateInit { Candidate = nativeIceCandidate.Sdp, SdpMid = nativeIceCandidate.SdpMid, SdpMLineIndex = (ushort)nativeIceCandidate.SdpMLineIndex, //UsernameFragment = ??? };
public void OnIceCandidate(IceCandidate candidate) { outerInstance.RunOnUiThread(() => { JSONObject json = new JSONObject(); jsonPut(json, "type", "candidate"); jsonPut(json, "label", candidate.SdpMLineIndex); jsonPut(json, "id", candidate.SdpMid); jsonPut(json, "candidate", candidate.Sdp); outerInstance.sendMessage(json); }); }
public void onMessage(string data) { try { JSONObject json = new JSONObject(data); string type = (string)json.Get("type"); if (type.Equals("candidate")) { IceCandidate candidate = new IceCandidate((string)json.Get("id"), json.GetInt("label"), (string)json.Get("candidate")); if (outerInstance.queuedRemoteCandidates != null) { outerInstance.queuedRemoteCandidates.AddLast(candidate); } else { outerInstance.pc.AddIceCandidate(candidate); } } else if (type.Equals("answer") || type.Equals("offer")) { SessionDescription sdp = new SessionDescription(SessionDescription.SessionDescriptionType.FromCanonicalForm(type), outerInstance.preferISAC((string)json.Get("sdp"))); outerInstance.pc.SetRemoteDescription(outerInstance.sdpObserver, sdp); } else if (type.Equals("bye")) { outerInstance.logAndToast("Remote end hung up; dropping PeerConnection"); outerInstance.disconnectAndExit(); } else { throw new Exception("Unexpected message: " + data); } } catch (JSONException e) { throw new Exception("Error", e); } }
void Webrtc.PeerConnection.IObserver.OnIceCandidate(Webrtc.IceCandidate p0) { OnIceCandidate?.Invoke(this, RTCPeerConnectionIceEvent.Create(p0)); }
public void OnIceCandidate(IceCandidate p0) { _listener.OnIceCandidate(p0.ToNet()); }
public static IRTCIceCandidate Create(Webrtc.IceCandidate nativeIceCandidate) => new RTCIceCandidate(nativeIceCandidate);
private RTCPeerConnectionIceEvent(Webrtc.IceCandidate nativeIceCandidate) =>
public static IRTCPeerConnectionIceEvent Create(Webrtc.IceCandidate nativeIceCandidate) => new RTCPeerConnectionIceEvent(nativeIceCandidate);