public DialPlanEngine(
SIPTransport sipTransport,
GetCanonicalDomainDelegate getCanonicalDomain,
SIPMonitorLogDelegate logDelegate,
SIPSorceryPersistor sipSorceryPersistor,
SIPEndPoint outboundProxySocket,
string rubyScriptCommonPath,
string impersonationUsername,
string impersonationPassword,
int maxExecutionCount)
{
m_sipTransport = sipTransport;
GetCanonicalDomainDelegate_External = getCanonicalDomain;
LogDelegate_External = logDelegate;
m_sipSorceryPersistor = sipSorceryPersistor;
//m_sipAccountPersistor = sipAssetPersistor;
//GetSIPAccountBindings_External = getBindings;
//m_dialPlanPersistor = dialPlanPersistor;
//m_sipDialoguePersistor = sipDialoguePersistor;
m_outboundProxySocket = outboundProxySocket;
m_rubyScriptCommonPath = rubyScriptCommonPath;
m_impersonationUsername = impersonationUsername;
m_impersonationPassword = impersonationPassword;
m_maxExecutionCount = (maxExecutionCount > 0) ? maxExecutionCount : MAX_ALLOWED_SCRIPTSCOPES;
LoadRubyCommonScript();
Thread monitorScriptsThread = new Thread(new ThreadStart(MonitorScripts));
monitorScriptsThread.Name = MONITOR_THREAD_NAME;
monitorScriptsThread.Start();
}