public void Start() { try { logger.Debug("SIP Registrar daemon starting..."); // Configure the SIP transport layer. m_sipTransport = new SIPTransport(SIPDNSManager.ResolveSIPService, new SIPTransactionEngine(), false); m_sipTransport.PerformanceMonitorPrefix = SIPSorceryPerformanceMonitor.REGISTRAR_PREFIX; SIPAccount account = SipStorage.Instance.Accounts.FirstOrDefault(); var sipChannels = SIPTransportConfig.ParseSIPChannelsNode(account.LocalIP, account.LocalPort); m_sipTransport.AddSIPChannel(sipChannels); MessageCore = new SIPMessageCore(m_sipTransport, SIPConstants.SIP_SERVER_STRING); MessageCore.Initialize(SIPAuthenticateRequest_External, _platformList, _account); GB28181Catalog.Instance.MessageCore = MessageCore; m_sipTransport.SIPTransportRequestReceived += MessageCore.AddMessageRequest; m_sipTransport.SIPTransportResponseReceived += MessageCore.AddMessageResponse; Console.ForegroundColor = ConsoleColor.Green; logger.Debug("SIP Registrar successfully started."); Console.ForegroundColor = ConsoleColor.White; } catch (Exception excp) { logger.Error("Exception SIPRegistrarDaemon Start. " + excp.Message); } }
public SIPMonitorCore(SIPMessageCore msgCore, string deviceId, string name, SIPEndPoint remoteEndPoint) { _msgCore = msgCore; _deviceId = deviceId; _deviceName = name; _remoteEndPoint = remoteEndPoint; }
private void Initialize() { _devList = new List <ListViewItem>(); txtStopTime.Text = DateTime.Now.ToString("yyyy-MM-dd 9:00:00"); var configType = new Dictionary <string, string> { { "BasicParam", "基本参数配置" }, { "VideoParamOpt", "视频参数范围" }, { "SVACEncodeConfig", "SVAC编码配置" }, { "SVACDecodeConfig", "SVAC解码配置" } }; BindingSource bs = new BindingSource { DataSource = configType }; cbxConfig.DataSource = bs; cbxConfig.DisplayMember = "Value"; cbxConfig.ValueMember = "Key"; Dictionary <string, string> recordType = new Dictionary <string, string> { { "time", "time" }, { "alarm", "alarm" }, { "manual", "manual" }, { "all", "all" } }; BindingSource bsRecord = new BindingSource { DataSource = recordType }; cbxRecordType.DataSource = bsRecord; cbxRecordType.DisplayMember = "Value"; cbxRecordType.ValueMember = "Key"; SIPSqlite.Instance.Read(); IList <CameraInfo> cameras = new List <CameraInfo>(); var account = SIPSqlite.Instance.Accounts.First(); if (account == null) { logger.Error("Account Config NULL,SIP not started"); return; } _keepaliveTime = DateTime.Now; _cataThread = new Thread(new ThreadStart(HandleCata)); _keepaliveThread = new Thread(new ThreadStart(HandleKeepalive)); _messageCore = new SIPMessageCore(cameras, account); }
private void Initialize() { _devList = new List <ListViewItem>(); txtStartTime.Text = DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd 8:00:00"); txtStopTime.Text = DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd 9:00:00"); //txtDragDrop.Text = DateTime.Now.ToString("yyyy-MM-dd 14:00:00"); Dictionary <string, string> configType = new Dictionary <string, string>(); configType.Add("BasicParam", "基本参数配置"); configType.Add("VideoParamOpt", "视频参数范围"); configType.Add("SVACEncodeConfig", "SVAC编码配置"); configType.Add("SVACDecodeConfig", "SVAC解码配置"); BindingSource bs = new BindingSource(); bs.DataSource = configType; cbxConfig.DataSource = bs; cbxConfig.DisplayMember = "Value"; cbxConfig.ValueMember = "Key"; Dictionary <string, string> recordType = new Dictionary <string, string>(); recordType.Add("time", "time"); recordType.Add("alarm", "alarm"); recordType.Add("manual", "manual"); recordType.Add("all", "all"); BindingSource bsRecord = new BindingSource(); bsRecord.DataSource = recordType; cbxRecordType.DataSource = bsRecord; cbxRecordType.DisplayMember = "Value"; cbxRecordType.ValueMember = "Key"; //SIPSqlite.Instance.Read(); // var cameras = new List<CameraInfo>(); // var account = SIPSqlite.Instance.Accounts.First(); //if (account == null) //{ // logger.Error("Account Config NULL,SIP not started"); // return; //} _keepaliveTime = DateTime.Now; _cataThread = new Thread(new ThreadStart(HandleCata)); _keepaliveThread = new Thread(new ThreadStart(HandleKeepalive)); // _messageCore = new SIPMessageCore(cameras, account); SIPTransport m_sipTransport; m_sipTransport = new SIPTransport(SIPDNSManager.ResolveSIPService, new SIPTransactionEngine(), false); m_sipTransport.PerformanceMonitorPrefix = SIPSorceryPerformanceMonitor.REGISTRAR_PREFIX; SIPAccount account = SipStorage.Instance.Accounts.FirstOrDefault(); var sipChannels = SIPTransportConfig.ParseSIPChannelsNode(account); m_sipTransport.AddSIPChannel(sipChannels); SipStorage sipAccountStorage = new SipStorage(); IMemoCache <Camera> memocache = new DeviceObjectCache(); SIPRegistrarCore sipRegistrarCore = new SIPRegistrarCore(m_sipTransport, sipAccountStorage, memocache, true, true); // _messageCore = new SIPMessageCore(m_sipTransport, SIPConstants.SIP_SERVER_STRING); _messageCore = new SIPMessageCore(sipRegistrarCore, m_sipTransport, sipAccountStorage, memocache); Task.Factory.StartNew(() => sipRegistrarCore.ProcessRegisterRequest(), _registryServiceToken.Token); }