예제 #1
0
        public InfoService()
        {
            ClientHub = new CCTVDefaultInfoSync(Configurations.Instance.InfoServiceAddress);
            SyncParams <Gateway>  gwSP   = new SyncParams <Gateway>("GBT28181/Gateway", Timeout.InfiniteTimeSpan);
            SyncParams <Platform> platSP = new SyncParams <Platform>("GBT28181/Platform", Timeout.InfiniteTimeSpan);
            SyncParams <SipIdMap> simSP  = new SyncParams <SipIdMap>("GBT28181/DeviceIdMap", Timeout.InfiniteTimeSpan);

            ClientHub.RegisterSynchronizer <Gateway>(gwSP);
            ClientHub.RegisterSynchronizer <Platform>(platSP);
            ClientHub.RegisterSynchronizer <SipIdMap>(simSP);

            ClientHub.RegisterDefaultWithoutUpdate(CCTVInfoType.StaticInfo);
            ClientHub.RegisterDefaultWithoutUpdate(CCTVInfoType.ControlConfig);
            ClientHub.RegisterDefaultWithoutUpdate(CCTVInfoType.UserPrivilege);
        }
예제 #2
0
        private NodesManager()
        {
            string baseAddress = System.Configuration.ConfigurationManager.AppSettings["StaticInfoAddress"];

            _hub = new CCTVDefaultInfoSync(baseAddress);
            _hub.RegisterDefaultWithoutUpdate(CCTVInfoType.HierarchyInfo);

            SyncParams <StorageSource> param = new SyncParams <StorageSource>("CenterStorage", TimeSpan.FromSeconds(10));

            _hub.RegisterSynchronizer(param);
        }
예제 #3
0
        private void UpdateWebApiUrl(string ip)
        {
            string url = $"http://{ip}:{ConfigReader.Instance.WebApiPort}";

            if (ClientHub != null)
            {
                ClientHub.Dispose();
            }
            if (ThumbnailMgr != null)
            {
                ThumbnailMgr.Dispose();
            }

            ClientHub    = new CCTVDefaultInfoSync(url);
            ThumbnailMgr = new ThumbnailManager(url, ConstSettings.ThumbnailPath);
            //集中存储配置信息获取。
            SyncParams <StorageSource> param = new SyncParams <StorageSource>("CenterStorage", Timeout.InfiniteTimeSpan);

            ClientHub.RegisterDefault(CCTVInfoType.HierarchyInfo, TimeSpan.Zero);
            ClientHub.RegisterDefault(CCTVInfoType.StaticInfo, TimeSpan.Zero);
            ClientHub.RegisterDefault(CCTVInfoType.OnlineStatus, TimeSpan.FromSeconds(5));
            ClientHub.RegisterDefault(CCTVInfoType.DynamicInfo, TimeSpan.FromSeconds(5));
            ClientHub.RegisterSynchronizer(param);
        }