private void InitializeArdsEvent() { try { ardsHandler.OnStatusUpdatedMessage += (s) => { try { } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnStatusUpdatedMessage", exception, Logger.LogLevel.Error); } }; #region Breake ardsHandler.OnSendResourceChangeBreakCompleted += (s) => { try { AgentCurrentState = new AgentBreak(); } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendResourceChangeBreakCompleted", exception, Logger.LogLevel.Error); } }; ardsHandler.OnSendStatusChangeRequestBreakCompleted += (s) => { try { if (s.Command == WorkflowResultCode.ACDS301 || s.Command == WorkflowResultCode.ACDS4032) { AgentCurrentState = new AgentBreak(); ardsHandler.ResourceStatusChangeBreak(Auth, CallSessionId); } UiState.ShowNotifications(s); } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendStatusChangeRequestBreakCompleted", exception, Logger.LogLevel.Error); } }; ardsHandler.OnCancelBreakRequestCompleted += (s) => { try { UiState.CancelBreakRequest(s); } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnCancelBreakRequestCompleted", exception, Logger.LogLevel.Error); } }; #endregion Breake #region Reregistor ardsHandler.OnResourceRegistrationCompleted += (s) => { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnResourceRegistrationCompleted", Logger.LogLevel.Debug); }; #endregion Reregistor #region StatusChangeRequestIdel ardsHandler.OnSendStatusChangeRequestIdelCompleted += (s) => { try { switch (s.Command) { case WorkflowResultCode.ACDS4033: { ardsHandler.ResourceModeChange(Auth, CallSessionId); } break; case WorkflowResultCode.ACDS403: { UiState.InAgentIdleState(_agentPvState); } break; case WorkflowResultCode.ACDS301: case WorkflowResultCode.ACDS4032: { AgentCurrentState = new AgentBreak(); ardsHandler.ResourceStatusChangeBreak(Auth, CallSessionId); } break; } } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnSendStatusChangeRequestIdelCompleted", exception, Logger.LogLevel.Error); } }; #endregion StatusChangeRequestIdel #region Mode ardsHandler.OnSendModeChangeRequestOutboundCompleted += (s) => { if (s.Command == WorkflowResultCode.ACDS501) { ardsHandler.ResourceModeChange(Auth, CallSessionId); } else { UiState.OnSendModeChangeRequestOutbound(s); } }; ardsHandler.OnSendModeChangeRequestInboundCompleted += (s) => { if (s.Command == WorkflowResultCode.ACDS501) { ardsHandler.ResourceModeChange(Auth, CallSessionId); } else { UiState.OnSendModeChangeRequestInbound(s); } }; ardsHandler.OnResourceModeChanged += (r) => { try { AgentMode = AgentReqMode; } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "OnResourceModeChanged", exception, Logger.LogLevel.Error); } }; #endregion } catch (Exception exception) { Logger.Instance.LogMessage(Logger.LogAppender.DuoLogger2, "InitializeArdsEvent", exception, Logger.LogLevel.Error); } }