Execute() public method

public Execute ( DialPlanContext dialPlanContext, ISIPServerUserAgent uas, SIPCallDirection callDirection, DialogueBridgeCreatedDelegate createBridgeDelegate, ISIPCallManager callManager ) : void
dialPlanContext DialPlanContext
uas ISIPServerUserAgent
callDirection SIPCallDirection
createBridgeDelegate DialogueBridgeCreatedDelegate
callManager ISIPCallManager
return void
コード例 #1
0
        /// <summary>
        /// Executes a new instance of the current dialplan as a result of receiving a redirect response.
        /// </summary>
        public void ExecuteDialPlanForRedirect(SIPResponse redirectResponse)
        {
            SIPURI redirectURI = redirectResponse.Header.Contact[0].ContactURI;

            if (m_hasBeenRedirected)
            {
                FireProxyLogEvent(new SIPMonitorConsoleEvent(SIPMonitorServerTypesEnum.AppServer, SIPMonitorEventTypesEnum.DialPlan, "Redirect response to " + redirectURI.ToString() + " rejcted, only a single redirect dialplan execution allowed.", Owner));
            }
            else
            {
                m_hasBeenRedirected = true;
                FireProxyLogEvent(new SIPMonitorConsoleEvent(SIPMonitorServerTypesEnum.AppServer, SIPMonitorEventTypesEnum.DialPlan, "Redirect response to " + redirectURI.ToString() + " accepted, new dialplan execution commencing.", Owner));

                m_redirectResponse = redirectResponse;
                m_redirectURI      = redirectURI;

                m_dialPlanEngine.Execute(this, m_sipServerUserAgent, SIPCallDirection.Redirect, CreateBridge_External, null);
            }
        }