private void TriggerWorkflowStepEvent(OnWorkflowStepEvent onWorkflowStepEvent) { _call.CallState.AddStepToIncomingQueue( int.Parse(_settings.Triggers[onWorkflowStepEvent.StepId.ToString()])); _call.FireStateChange(Trigger.NextCallFlowStep); _call.OnWorkflowStep -= OnWorkflowStep; }
private void OnWorkflowStep(ICall call, OnWorkflowStepEvent onWorkflowStepEvent) { if (onWorkflowStepEvent.LineId != _call.CallState.GetOutgoingLineId()) { return; } if (_settings?.Triggers == null) { return; } if (_settings.Triggers.ContainsKey(onWorkflowStepEvent.StepId.ToString())) { TriggerWorkflowStepEvent(onWorkflowStepEvent); } if (_settings.PromptChanges.ContainsKey(onWorkflowStepEvent.StepId.ToString())) { _call.CallState.HoldPrompt = _settings.PromptChanges[onWorkflowStepEvent.StepId.ToString()]; } if (call.CallState.Bridge.Id != _holdingBridge.Id) { RemoveEventSubscriptions(); } }
private void OnWorkflowStep(ICall call, OnWorkflowStepEvent onWorkflowStepEvent) { if (onWorkflowStepEvent.LineId != _call.CallState.GetOutgoingLineId()) { return; } if (_settings?.Triggers == null) { return; } if (_settings.Triggers.ContainsKey(onWorkflowStepEvent.StepId.ToString())) { _call.CallState.AddStepToIncomingQueue( _settings.Triggers[onWorkflowStepEvent.StepId.ToString()]); } if (_settings.PromptChanges.ContainsKey(onWorkflowStepEvent.StepId.ToString())) { HoldPrompt = _settings.PromptChanges[onWorkflowStepEvent.StepId.ToString()]; } }