void btnManualDial_Click(object sender, RoutedEventArgs e) { try { channelManager.StartSyncProcess(false); if (btnManualDial.Content.ToString() == "Start Manual Dialing") { channelManager.ActiveChannel.CurrentDialStatus = "Manual"; btnManualDial.Content = "Stop Manual Dialing"; btnAutomaticDial.IsEnabled = false; VMuktiHelper.CallEvent("StartManualDialing", this, new VMuktiEventArgs(true, "Manual")); } else if (btnManualDial.Content.ToString() == "Stop Manual Dialing") { btnManualDial.Content = "Start Manual Dialing"; btnAutomaticDial.IsEnabled = true; VMuktiHelper.CallEvent("StartManualDialing", this, new VMuktiEventArgs(false, "Manual")); if (channelManager.ActiveChannel.CallResult != (ClsChannel.CallStatus)CallStatus.NotInCall && channelManager.ActiveChannel.CallResult != (ClsChannel.CallStatus)CallStatus.CallHangUp) { VMuktiHelper.CallEvent("HangUp", this, new VMuktiEventArgs(channelManager.ActiveChannel.ChannelID)); } } } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "btnManualDial_Click()", "MyDialer.xaml.cs"); } }
void MyDialer_VMuktiEvent_Logoff(object sender, VMuktiEventArgs e) { try { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(100, "None", false)); channelManager.CallExit(); } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "MyDialer_VMuktiEvent_Logoff()", "MyDialer.xaml.cs"); } }
public void CallExit() { try { if (!blExit) { blExit = true; if (StrAgentNumber != "") { clsDataService.DeallocateSIPInformation(long.Parse(StrAgentNumber)); } try { foreach (ClsChannel cl in _DiallerChannel) { if (cl.CallResult == ClsChannel.CallStatus.CallInProgress) { VMuktiHelper.CallEvent("HangUp", this, new VMuktiEventArgs("PredictiveDialer", cl.ChannelID)); } } } catch (Exception ex) { ex.Data.Add("My Key", "VMukti--:--VmuktiModules--:--Call Center--:--AutoDialer--:--Dialer.Business--:--ClsChannelManager.cs--:--HangUp()--"); ClsException.LogError(ex); ClsException.WriteToErrorLogFile(ex); } //if (objLeadCollection != null) //{ foreach (ClsLead cd in objLeadCollection) { clsDataService.UpdateLeadStatus(cd.ID, cd.Status); // clsDataService.UpdateLeadStatus(cd.ID, "Fresh"); } UpdateSyncAtExit(); } } catch (Exception ex) { ex.Data.Add("My Key", "VMukti--:--VmuktiModules--:--Call Center--:--AutoDialer--:--Dialer.Business--:--ClsChannelManager.cs--:--CallExit()--"); ClsException.LogError(ex); ClsException.WriteToErrorLogFile(ex); } finally { if (!blExit) { UpdateSyncAtExit(); } } }
void MyDialer_VMuktiEvent_AllCtlLoaded(object sender, VMuktiEventArgs e) { try { VMuktiHelper.CallEvent("RegisterAgent", this, new VMuktiEventArgs(channelManager.AgentNumber, channelManager.AgentPassWord, channelManager.SIPServerAddress)); VMuktiHelper.CallEvent("SetCampaignID", this, new VMuktiEventArgs(channelManager.CurrentCampaingID)); btnManualDial_Click(null, null); } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "MyDialer_VMuktiEvent_AllCtlLoaded()", "MyDialer.xaml.cs"); } }
//Call back disposition for the particular call void btnEnterCallBackReason_Click(object sender, RoutedEventArgs e) { try { if (!CallBackInfoAvailable()) { MessageBox.Show("Fill Proper Values For Call Back"); return; } else { //set callback time string sCallBackDateTime = monthPicker.SelectedDate.Value.ToShortDateString(); sCallBackDateTime += " " + cmbHour.SelectionBoxItem.ToString(); sCallBackDateTime += ":" + cmbMin.SelectionBoxItem.ToString(); sCallBackDateTime += ":00"; sCallBackDateTime += " " + cmbAMPM.SelectionBoxItem.ToString(); if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(sCurrentDispostion, txtCallBackReason.Text.ToString(), chkIsPublic.IsChecked, sCallBackDateTime, sCurrentChannelID)); VMuktiHelper.CallEvent("SetDialerEnable", this, new VMuktiEventArgs(true)); } else if (sCallingType == "Predictive") { //VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtCallBackReason.Text.ToString(), chkIsPublic.IsChecked, sCallBackDateTime, sCurrentChannelID)); VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtCallBackReason.Text.ToString(), chkIsPublic.IsChecked, sCallBackDateTime, sCurrentChannelID)); VMuktiHelper.CallEvent("SetPredictiveDialerEnable", this, new VMuktiEventArgs(true, sCurrentChannelID)); } cnvDispoButtons.Visibility = Visibility.Visible; cnvDispoButtons.IsEnabled = false; cnvDispositon.Visibility = Visibility.Hidden; cnvCallBack.Visibility = Visibility.Hidden; blApplicationExit = false; txtCallBackReason.Text = string.Empty; txtCallBackNo.Text = string.Empty; chkIsPublic.IsChecked = false; monthPicker.SelectedDate.GetValueOrDefault(); cmbAMPM.SelectedIndex = 0; cmbHour.SelectedIndex = 0; cmbMin.SelectedIndex = 0; } VMuktiAPI.VMuktiHelper.CallEvent("entDipositionRenderStatus", this, new VMuktiEventArgs(false)); } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "btnEnterCallBackReason_Click()", "CtlDispositionRender.xaml.cs"); } }
void btnAutomaticDial_Click(object sender, RoutedEventArgs e) { try { if (btnAutomaticDial.Content.ToString() == "Start Automatic Dialing") { if (channelManager.CurrentCampaingID == 0) { lblMessage.Content = "No Campaing available"; //MessageBox.Show("No Campaing available"); } else if (channelManager.LeadCollection == null || channelManager.LeadCollection.Count == 0) { lblMessage.Content = "No Fresh Leads available"; //MessageBox.Show("No Fresh Leads available"); } else { channelManager.ActiveChannel.CurrentDialStatus = "Automatic"; channelManager.ActiveChannel.CountryCode = channelManager.GetCountryCode(); channelManager.ActiveChannel.CampaginPrefix = channelManager.GetCampaginPrefix(); btnAutomaticDial.Content = "Stop Automatic Dialing"; btnManualDial.IsEnabled = false; if (channelManager.LeadCollection.Count != 0) { VMuktiHelper.CallEvent("StartManualDialing", this, new VMuktiEventArgs(true, "AutoMatic")); } FireCall(); channelManager.StartSyncProcess(true); } } else if (btnAutomaticDial.Content.ToString() == "Stop Automatic Dialing") { btnAutomaticDial.Content = "Start Automatic Dialing"; btnManualDial.IsEnabled = true; //channel1.CallResult = (ClsChannel.CallStatus)CallStatus.CallHangUp; VMuktiHelper.CallEvent("StartManualDialing", this, new VMuktiEventArgs(false, "AutoMatic")); //VMuktiHelper.CallEvent("HangUp", this, new VMuktiEventArgs(channel1.ChannelID,channel1.CallResult.ToString())); cnvMain.IsEnabled = false; FncRemoveDialLead(); channelManager.StartSyncProcess(false); } } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "btnAutomaticDial_Click()", "MyDialer.xaml.cs"); } }
void MyDialer_VMuktiEvent_SetMyDialerEnable(object sender, VMuktiEventArgs e) { try { cnvMain.IsEnabled = bool.Parse(e._args[0].ToString()); if (btnAutomaticDial.Content.ToString().StartsWith("Start") && btnManualDial.Content.ToString().StartsWith("Start")) { VMuktiHelper.CallEvent("SetSoftPhoneEnable", this, new VMuktiEventArgs(false)); } else { VMuktiHelper.CallEvent("SetSoftPhoneEnable", this, new VMuktiEventArgs(true)); } } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "MyDialer_VMuktiEvent_SetMyDialerEnable()", "MyDialer.xaml.cs"); } }
public void CallExit() { try { if (!blExit) { blExit = true; if (StrAgentNumber != "") { clsDataService.DeallocateSIPInformation(long.Parse(StrAgentNumber)); } try { if (channel1.ChannelID != "") { VMuktiHelper.CallEvent("HangUp", this, new VMuktiEventArgs(channel1.ChannelID)); } } catch { } foreach (ClsLead cd in objLeadCollection) { clsDataService.UpdateLeadStatus(cd.ID, cd.Status); } UpdateSyncAtExit(); } } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "CallExit()", "ClsChannelManager.cs"); } finally { if (!blExit) { UpdateSyncAtExit(); } } }
public void FireCall() { try { //lock (this) //{ if (channelManager.LeadCollection.Count == 0) { lblMessage.Content = "Leads Over"; //MessageBox.Show("Leads Over"); btnAutomaticDial.Content = "Start Automatic Dialing"; btnManualDial.IsEnabled = true; } else { // CallResult = CallStatus.CallHangUp; VMuktiHelper.CallEvent("SetLeadIDCRM", this, new VMuktiEventArgs(channelManager.LeadCollection[0].ID)); //VMuktiHelper.CallEvent("SetLeadIDScript", this, new VMuktiEventArgs(channelManager.LeadCollection[0].ID)); VMuktiHelper.CallEvent("SetLeadIDScript", this, new VMuktiEventArgs(channelManager.LeadCollection[0].ID, channelManager.LeadCollection[0].ID, "Automatic")); channelManager.ActiveChannel.CurrentPhoneNo = channelManager.LeadCollection[0].PhoneNo; channelManager.ActiveChannel.CurrentCampainID = channelManager.CurrentCampaingID; channelManager.ActiveChannel.LeadID = channelManager.LeadCollection[0].ID; channelManager.ActiveChannel.ChannelID = "1"; channelManager.ActiveChannel.UserID = channelManager.UserID; channelManager.ActiveChannel.ConfID = long.Parse("1"); channelManager.ActiveChannel.IsDNC = false; channelManager.ActiveChannel.IsGlobal = false; // channelManager.ActiveChannel.DispositionID = long.Parse("1"); channelManager.ActiveChannel.CallNote = "Hello"; //MessageBox.Show(objLeadCollection[0].PhoneNo.ToString()); VMuktiHelper.CallEvent("SetChannelStatus", this, new VMuktiEventArgs(CallStatus.ReadyState)); } } catch (Exception ex) { VMuktiHelper.ExceptionHandler(ex, "FireCall()", "MyDialer.xaml.cs"); } //} }
void CtlDispositionRender_VMuktiEvent_SetDispositiForDetectedTone(object sender, VMuktiEventArgs e) { try { //objDispColl.GetDispoId(e._args[0].ToString()) if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDialerEnable", this, new VMuktiEventArgs(true)); } if (sCallingType == "Predictive") { VMuktiHelper.CallEvent("SetPredictiveDialerEnable", this, new VMuktiEventArgs(true, sCurrentChannelID)); } sCurrentDispostion = objDispColl.GetDispoId(e._args[0].ToString()).ToString(); sPhoneNumber = e._args[1].ToString(); sCurrentChannelID = e._args[2].ToString(); sCallingType = e._args[3].ToString(); txtCallNote.Text = string.Empty; cnvDispoButtons.Visibility = Visibility.Visible; cnvDispoButtons.IsEnabled = false; cnvCallBack.Visibility = Visibility.Hidden; cnvOtherDispositon.Visibility = Visibility.Hidden; cnvDispositon.Visibility = Visibility.Hidden; blApplicationExit = false; //Automatic dialing if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(sCurrentDispostion, txtCallNote.Text.Trim(), false, null, sCurrentChannelID)); } if (sCallingType == "Predictive") { VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtCallNote.Text.Trim(), false, null, sCurrentChannelID)); } } catch (Exception ex) { } }
//To enter Disposition Reason void btnEnterDispReason_Click(object sender, RoutedEventArgs e) { try { //if (txtDNCReason.Text.Trim() == string.Empty) //{ // MessageBox.Show("Enter Desposition Reason"); // return; //} //else //{ if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(sCurrentDispostion, txtDNCReason.Text.ToString(), true)); VMuktiHelper.CallEvent("SetDialerEnable", this, new VMuktiEventArgs(true)); } else if (sCallingType == "Predictive") { VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtDNCReason.Text.Trim(), false, null, sCurrentChannelID)); VMuktiHelper.CallEvent("SetPredictiveDialerEnable", this, new VMuktiEventArgs(true, sCurrentChannelID)); } cnvDispoButtons.Visibility = Visibility.Visible; cnvDispoButtons.IsEnabled = false; cnvDispositon.Visibility = Visibility.Hidden; cnvCallBack.Visibility = Visibility.Hidden; blApplicationExit = false; txtDNCReason.Text = string.Empty; txtPhoneNo.Text = string.Empty; //} VMuktiAPI.VMuktiHelper.CallEvent("entDipositionRenderStatus", this, new VMuktiEventArgs(false)); } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "btnEnterDispReason_Click()", "CtlDispositionRender.xaml.cs"); } }
public CtlDispositionRender(ModulePermissions[] MyPermissions) { try { InitializeComponent(); _MyPermissions = MyPermissions; FncPermissionsReview(); //VMuktiAPI.VMuktiInfo.ConnectionString = "Data Source=61.17.213.134\\SqlExpress;Initial Catalog=VMukti;User ID=sa;PassWord=mahavir;"; VMuktiHelper.RegisterEvent("SetCampaignID").VMuktiEvent += new VMuktiEvents.VMuktiEventHandler(CtlDispositionRender_VMuktiEventCampaignID); VMuktiHelper.RegisterEvent("SetDispositionEnable").VMuktiEvent += new VMuktiEvents.VMuktiEventHandler(CtlDispositionRender_VMuktiEvent_SetDispositionEnable); VMuktiHelper.RegisterEvent("SetDispositionButtonClickEvent").VMuktiEvent += new VMuktiEvents.VMuktiEventHandler(CtlDispositionRender_VMuktiEvent_SetDispositionButtonClickEvent); VMuktiHelper.RegisterEvent("SetDispositiForDetectedTone").VMuktiEvent += new VMuktiEvents.VMuktiEventHandler(CtlDispositionRender_VMuktiEvent_SetDispositiForDetectedTone); cnvDispoButtons.IsEnabled = false; Application.Current.Exit += new ExitEventHandler(Current_Exit); this.btnEnterDispReason.Click += new RoutedEventHandler(btnEnterDispReason_Click); this.btnCancelDispReason.Click += new RoutedEventHandler(btnCancelDispReason_Click); this.btnEnterCallBackReason.Click += new RoutedEventHandler(btnEnterCallBackReason_Click); this.btnCancelCallBackReason.Click += new RoutedEventHandler(btnCancelCallBackReason_Click); this.btnCancelOtherDispReason.Click += new RoutedEventHandler(btnCancelOtherDispReason_Click); this.btnEnterOtherDispReason.Click += new RoutedEventHandler(btnEnterOtherDispReason_Click); //this.Unloaded += new RoutedEventHandler(CtlDispositionRender_Unloaded); VMuktiHelper.CallEvent("AllModulesLoaded", this, null); VMuktiHelper.CallEvent("AllModulesLoadedForPredictive", this, null); VMuktiAPI.VMuktiHelper.RegisterEvent("SignOut").VMuktiEvent += new VMuktiEvents.VMuktiEventHandler(CtlDispositionRender_VMuktiEvent); } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "CtlDispositionRender()", "CtlDispositionRender.xaml.cs"); } }
void Current_Exit(object sender, ExitEventArgs e) { try { if (blApplicationExit == true) { if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(100, "None", false, null, sCurrentChannelID)); } else if (sCallingType == "Predictive") { VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(100, "None", false, null, sCurrentChannelID)); } } VMuktiHelper.UnRegisterEvent("SetCampaignID"); VMuktiHelper.UnRegisterEvent("SetDispositionEnable"); VMuktiHelper.UnRegisterEvent("SetDispositionButtonClickEvent"); } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "Current_Exit()", "CtlDispositionRender.xaml.cs"); } }
//Submit Disposition for the particular call void btnEnterOtherDispReason_Click(object sender, RoutedEventArgs e) { try { txtCallNote.Text = string.Empty; cnvDispoButtons.Visibility = Visibility.Visible; cnvDispoButtons.IsEnabled = false; cnvCallBack.Visibility = Visibility.Hidden; cnvOtherDispositon.Visibility = Visibility.Hidden; cnvDispositon.Visibility = Visibility.Hidden; blApplicationExit = false; //Automatic dialing if (sCallingType == "AutoMatic") { VMuktiHelper.CallEvent("SetDisposition", this, new VMuktiEventArgs(sCurrentDispostion, txtCallNote.Text.Trim(), false, null, sCurrentChannelID)); VMuktiHelper.CallEvent("SetDialerEnable", this, new VMuktiEventArgs(true)); } //Predictive dialing else if (sCallingType == "Predictive") { //VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtCallNote.Text.Trim(), false, null, sCurrentChannelID)); VMuktiHelper.CallEvent("SetDispositionForPredictive", this, new VMuktiEventArgs(sCurrentDispostion, txtCallNote.Text.Trim(), false, null, sCurrentChannelID)); VMuktiHelper.CallEvent("SetPredictiveDialerEnable", this, new VMuktiEventArgs(true, sCurrentChannelID)); } //VMuktiHelper.CallEvent("SetSoftPhoneEnable", this, new VMuktiEventArgs(true)); //VMuktiAPI.VMuktiHelper.CallEvent("entDipositionRenderStatus", this, new VMuktiEventArgs(false)); //} } catch (Exception ex) { VMuktiAPI.VMuktiHelper.ExceptionHandler(ex, "btnEnterOtherDispReason_Click()", "CtlDispositionRender.xaml.cs"); } }