protected override void OnElementChanged(VisualElementChangedEventArgs e)
        {
            base.OnElementChanged(e);

            if (e.OldElement != null || Element == null)
            {
                return;
            }


            var callPage = (CallPage)e.NewElement;

            RoomId     = callPage.RoomId;
            IsInitator = callPage.IsInitator;

            videoCallView          = new VideoCallView(CGRect.Empty, !isSimulator);
            videoCallView.Delegate = this;

            localVideoRenderer  = new VideoRendererProxy();
            remoteVideoRenderer = new VideoRendererProxy();

            localVideoRenderer.Renderer  = videoCallView.LocalVideoRender;
            remoteVideoRenderer.Renderer = videoCallView.RemoteVideoRender;

            if (NativeView != null)
            {
            }
        }
        public void DidChangeRoute(VideoCallView view)
        {
            var @override = AVAudioSessionPortOverride.None;

            if (portOverride == AVAudioSessionPortOverride.None)
            {
                @override = AVAudioSessionPortOverride.Speaker;
            }

            RTCDispatcher.DispatchAsyncOnType(RTCDispatcherQueueType.AudioSession, () =>
            {
                var session = RTCAudioSession.SharedInstance;
                session.LockForConfiguration();
                session.OverrideOutputAudioPort(@override, out NSError error);

                if (error == null)
                {
                    portOverride = @override;
                }
                else
                {
                    Console.WriteLine("Error overriding output port:{0}", error.LocalizedDescription);
                }
                session.UnlockForConfiguration();
            });
        }
 public void DidSwitchCamera(VideoCallView view)
 {
     if (fileCapturerController != null)
     {
         fileCapturerController.Toggle();
         return;
     }
     SwitchCamera();
 }
 public void DidHangUp(VideoCallView view)
 {
     Disconnect();
 }
 public void DidEnableStats(VideoCallView view)
 {
 }