예제 #1
0
 private void SendConferenceInvitation(AsyncTask task, object state)
 {
     task.DoOneStep(
         delegate()
     {
         string uriToDialOutTo     = (string)state;
         McuDialOutOptions options = new McuDialOutOptions();
         options.Issuer            = this.CustomerSession.CustomerConversation.LocalParticipant;
         ConferenceInvitationSettings convSettings = new ConferenceInvitationSettings();
         convSettings.AvailableMediaTypes.Add(MediaType.Audio);
         var confInvitation = new ConferenceInvitation(this.CustomerSession.CustomerConversation, convSettings);
         this.StartMusic();
         confInvitation.BeginDeliver(
             uriToDialOutTo,
             delegate(IAsyncResult ar)
         {
             task.DoFinalStep(
                 delegate()
             {
                 this.StopMusic();
                 confInvitation.EndDeliver(ar);
             });
         },
             null);
     });
 }
예제 #2
0
 private void StartupInstructiondialog(AsyncTask task, object state)
 {
     task.DoFinalStep(
         delegate()
     {
         this.StartInstructionDialog(null);
     });
 }
예제 #3
0
 private void StartupGetContactDialog(AsyncTask task, object state)
 {
     task.DoFinalStep(
         delegate()
     {
         //Start get buddy dialog to get the contact name, user wants to contact with.
         GetBuddyDialog getcontactDialog = new GetBuddyDialog(this.CustomerSession, ApplicationConfiguration.GetBuddyConfiguration());
         getcontactDialog.Completed     += new EventHandler <DialogCompletedEventArgs>(this.GetContactDialogCompleted);
         getcontactDialog.Run();
     });
 }
예제 #4
0
        private void StartupDialupDialog(AsyncTask task, object state)
        {
            task.DoFinalStep(
                delegate()
            {
                m_configuration = ApplicationConfiguration.GetDialupConfiguration();

                //Start Dialup dialog to get the number user wants to dial.
                DialupDialog dialupDialog = new DialupDialog(CustomerSession.CustomerServiceChannel.ServiceChannelCall, m_configuration);
                dialupDialog.Completed   += new EventHandler <DialogCompletedEventArgs>(this.DialupDialogCompleted);
                dialupDialog.Run();
            });
        }
예제 #5
0
        private void DialupNumber(AsyncTask task, object state)
        {
            string number = (string)state;

            task.DoOneStep(
                delegate()
            {
                this.StartMusic(this.CustomerSession.CustomerServiceChannel.ServiceChannelCall);
                var avmcuSession = this.CustomerSession.CustomerConversation.ConferenceSession.AudioVideoMcuSession;
                avmcuSession.BeginDialOut(
                    number,
                    ar =>
                {
                    task.DoFinalStep(
                        delegate()
                    {
                        avmcuSession.EndDialOut(ar);
                    });
                },
                    null);
            });
        }