Exemple #1
0
        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);
        }
Exemple #4
0
        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);
        }