public SearchResultRecordV3_1 GetSearchResultDetail(string serverIp, uint serverPort, string cameraId, uint matchTaskId, SearchResultRecordV3_1 record) { SearchServices.SearchServices m_SearchService = new SearchServices.SearchServices("http://{0}:{1}/?matchservice.wsdl"); m_SearchService.Init(serverIp, serverPort); List <SearchResultRecordTiny> listTiny = new List <SearchResultRecordTiny>(); listTiny.Add(new SearchResultRecordTiny { AdjustTime = record.AdjustTime, ObjectDetailRect = record.ObjDetailRect, ObjectKey = record.ObjKey, ObjectType = record.ObjType, Similar = record.Similar, TargetEndTs = record.EndTime, TargetStartTs = record.BeginTime, }); var list = m_SearchService.GET_OBJ_DETAIL_INFO(cameraId, matchTaskId, listTiny); if (list != null && list.Count > 0) { return(list[0]); } return(null); }
public List <SearchResultRecordV3_1> GetSearchResultDetail(string serverIp, uint serverPort, string cameraId, uint matchTaskId, List <SearchResultRecordV3_1> recordlist) { SearchServices.SearchServices m_SearchService = new SearchServices.SearchServices("http://{0}:{1}/?matchservice.wsdl"); m_SearchService.Init(serverIp, serverPort); List <SearchResultRecordTiny> listTiny = new List <SearchResultRecordTiny>(); foreach (var record in recordlist) { if (string.IsNullOrEmpty(record.OriginalPicURL)) { listTiny.Add(new SearchResultRecordTiny { AdjustTime = record.AdjustTime, ObjectDetailRect = record.ObjDetailRect, ObjectKey = record.ObjKey, ObjectType = record.ObjType, Similar = record.Similar, TargetEndTs = record.EndTime, TargetStartTs = record.BeginTime, }); } } var list = m_SearchService.GET_OBJ_DETAIL_INFO(cameraId, matchTaskId, listTiny); return(list); }
public void UnsubscribeFaceAlarm(string cameraId, uint subscribeHandle) { if (SearchServiceMap.ContainsKey(new Tuple <string, E_VIDEO_ANALYZE_TYPE>(cameraId, E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC))) { SearchServices.SearchServices m_SearchService = SearchServiceMap[new Tuple <string, E_VIDEO_ANALYZE_TYPE>(cameraId, E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC)]; Unsubscribe(m_SearchService, subscribeHandle); } }
public uint SubscribeFaceAlarm(string cameraId, uint blacklist) { if (SearchServiceMap.ContainsKey(new Tuple <string, E_VIDEO_ANALYZE_TYPE>(cameraId, E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC))) { SearchServices.SearchServices m_SearchService = SearchServiceMap[new Tuple <string, E_VIDEO_ANALYZE_TYPE>(cameraId, E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC)]; return(Subscribe(m_SearchService, cameraId, WSDataReceiveServices.EnumProtocolType.SMS_MSG_FACE_ALARM_DATA_NOTIFY, blacklist)); } return(0); }
public void AddFaceAlarmControl(string cameraID, uint controlThreshold, uint blackListHandle, uint controlNation = 1000, uint controlSex = 3, uint beginAge = 0, uint endAge = 0) { E_VIDEO_ANALYZE_TYPE type = E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC; var rs = Framework.Container.Instance.CommService.GET_RESULT_STORE_LIST(cameraID, type); if (rs != null) { SearchServices.SearchServices m_SearchService = new SearchServices.SearchServices("http://{0}:{1}/?matchservice.wsdl"); m_SearchService.Init(rs.StoreIP, rs.StortPort); var sublist = m_SearchService.ADD_FACE_CONTORL_DATA(cameraID, controlThreshold, blackListHandle, controlNation, controlSex, beginAge, endAge); } }
public void DelFaceControlByID(string cameraID, uint id) { E_VIDEO_ANALYZE_TYPE type = E_VIDEO_ANALYZE_TYPE.E_ANALYZE_FACE_DYNAMIC; var rs = Framework.Container.Instance.CommService.GET_RESULT_STORE_LIST(cameraID, type); if (rs != null) { SearchServices.SearchServices m_SearchService = new SearchServices.SearchServices("http://{0}:{1}/?matchservice.wsdl"); m_SearchService.Init(rs.StoreIP, rs.StortPort); m_SearchService.DEL_FACE_CONTORL_DATA(id); } }
void Unsubscribe(SearchServices.SearchServices searchService, uint subscribeHandle) { searchService.DEL_SUBSCRIBE_DATA(subscribeHandle); }
uint Subscribe(SearchServices.SearchServices searchService, string cameraId, WSDataReceiveServices.EnumProtocolType type, uint subscibrparam = 0) { return(searchService.ADD_SUBSCRIBE_DATA(UserName, ClientIP, ClientPort, cameraId, (uint)type, subscibrparam)); }
public SearchResultSummaryV3_1 StartSearch(string serverIp, uint serverPort, SearchItemV3_1 searchItem, SearchParaV3_1 param) { SearchServices.SearchServices m_SearchService = new SearchServices.SearchServices("http://{0}:{1}/?matchservice.wsdl"); m_SearchService.Init(serverIp, serverPort); m_SearchService.SearchFinished += SearchService_SearchFinished; param.CameraID = searchItem.CameraID; if (searchItem.IsHistoryTask) { if (param.StartTime != DataModel.Common.ZEROTIME) { if (param.StartTime < searchItem.AdjustTime) { param.StartTime = Common.ZEROTIME; } else { param.StartTime = Common.ZEROTIME.AddSeconds(param.StartTime.Subtract(searchItem.AdjustTime).TotalSeconds); } } if (param.EndTime != DataModel.Common.MAXTIME) { if (param.EndTime < searchItem.AdjustTime) { param.EndTime = Common.ZEROTIME; } else { param.EndTime = Common.ZEROTIME.AddSeconds(param.EndTime.Subtract(searchItem.AdjustTime).TotalSeconds); } } param.ResultNumRange = int.MaxValue; } var comparesort = (E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_GLOBAL | E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_PARTICAL | E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_PASSLINE); param.SortType = (((E_SEARCH_FEATURE_TYPE)param[SDKConstant.FeatureType] & comparesort) > 0) ? SortType.SimilarityDes : SortType.TimeAsc; if (((E_SEARCH_FEATURE_TYPE)param[SDKConstant.FeatureType] & E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_GLOBAL) > 0 && ((E_SEARCH_FEATURE_TYPE)param[SDKConstant.FeatureType] & E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_PARTICAL) > 0) { param[SDKConstant.FeatureType] = (E_SEARCH_FEATURE_TYPE)param[SDKConstant.FeatureType] ^ E_SEARCH_FEATURE_TYPE.E_SEARCH_FEATURE_TYPE_GLOBAL; } uint m_searchHandle = m_SearchService.ADD_TASK(param, searchItem); searchlist.Add(new Tuple <uint, string>(m_searchHandle, serverIp), new SearchResultSummaryV3_1() { SearchPara = param, SearchSessionID = m_searchHandle, SearchResultSingleSummaryList = null, SearchVM = this, SearchItem = searchItem, SearchStatus = E_VDA_SEARCH_STATUS.E_VDA_SEARCH_STATUS_RUNING, ObjectRect = "", }); DateTime st = DateTime.Now; while (true) { if (searchlist[new Tuple <uint, string>(m_searchHandle, serverIp)].SearchResultSingleSummaryList != null) { break; } if (DateTime.Now.Subtract(st).TotalSeconds > 60) { break; } } return(searchlist[new Tuple <uint, string>(m_searchHandle, serverIp)]); }