Interaction logic for IncomingCallNotifcation.xaml
Inheritance: System.Windows.Window
 public static void ShowCallNotification(Call call)
 {
     IncomingCallNotification notifier = new IncomingCallNotification();
     notifier.call = call;
     windows.Add(notifier);
     notifier.Show();
 }
Exemple #2
0
        private void CallStateChangedHandler(object sender, Call.CallPropertyEventArgs args)
        {
            if (args.call.state == Call.CALL_STATE.Ringing && !args.call.is_outgoing)
            {
                if (IncomingTopMost)
                {
                    MainWindow.get_instance().BringToFront();
                }
                if (IncomingBalloons && !DND)
                {
                    IncomingCallNotification.ShowCallNotification(args.call);
                    if (Call.active_call != args.call && Call.active_call != null)
                    {
                        HandleCallWaiting(null, args.call);
                    }
                }
                else if (IncomingKeyboardFocus)
                {
                    Utils.SetForegroundWindow(MainWindow.get_instance());
                }
            }
            if (DND && args.call != null && args.call.is_outgoing == false && args.call.state == Call.CALL_STATE.Ringing)
            {
                args.call.hangup("Call ignored due to DND");
            }
            if (args.call != null && args.call.call_ended && ClearDTMFS)
            {
                args.call.dtmfs = "";
            }

            DelayedFunction.DelayedCall("broker_updatestatus", UpdateStatus, 500);
        }
Exemple #3
0
        public static void ShowCallNotification(Call call)
        {
            IncomingCallNotification notifier = new IncomingCallNotification();

            notifier.call = call;
            windows.Add(notifier);
            notifier.Show();
        }