Example #1
0
        private async Task AcceptCall()
        {
            IncomingCallRing.Stop();
            CallDevice();
            RemoteVideo.Visibility  = Visibility.Visible;
            PreviewVideo.Visibility = Visibility.Visible;
            //VideoVisibility.Visibility = Visibility.Visible;
            Mute.Visibility       = Visibility.Visible;
            EndConsult.Visibility = Visibility.Visible;
            Reject.Visibility     = Visibility.Collapsed;
            Accept.Visibility     = Visibility.Collapsed;
            EndConsult.IsEnabled  = true;

            if (incommingCall == null)
            {
                return;
            }
            incommingCall.Accept();
            await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, (() =>
            {
                activated = true;
                var remoteAddress = incommingCall.RemoteUrl;

                Interlocked.Exchange(ref isTerminator, 0);

                if (!((bool)roleIsActive))
                {
                    // Passive client
                    RemoteVideo.Source = new Uri(remoteAddress);
                }
                remoteAddress = remoteAddress.Replace("stsp://", "");
                return;
            }));
        }
Example #2
0
        async void Device_IncomingConnectionArrived(object sender, IncomingConnectionEventArgs e)
        {
            incommingCall = e;

            await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, (() =>
            {
                IncomingCallRing.Play();
                Reject.Visibility = Visibility.Visible;
                Accept.Visibility = Visibility.Visible;
            }));
        }