public VideoModel GetVideo(Guid id, DateTime?inPoint = null, DateTime?outPoint = null, bool?audioOnly = null, bool?autoStart = null, bool?statsEnabled = false, bool?processLogs = null, string requestedUsersIPAddress = null, bool?noCache = false) { var client = _restClientWrapper.GetClient(_configuration.IasBaseUrl); var request = _restClientWrapper.AuthRestRequest("api/video/{id}", Method.GET, _configuration.IasAuthKey); request.AddUrlSegment("id", id.ToString()); if (inPoint.HasValue) { request.AddParameter("in", inPoint.ToISO8601String()); } if (outPoint.HasValue) { request.AddParameter("out", outPoint.ToISO8601String()); } if (audioOnly.HasValue) { request.AddParameter("audioOnly", audioOnly.Value); } if (autoStart.HasValue) { request.AddParameter("autoStart", autoStart.Value); } if (processLogs.HasValue) { request.AddParameter("processLogs", processLogs.Value); } if (noCache.HasValue) { request.AddParameter("noCache", noCache); } if (statsEnabled.HasValue) { request.AddParameter("statsEnabled", statsEnabled.Value); } if (!string.IsNullOrWhiteSpace(requestedUsersIPAddress)) { request.AddParameter("requestedUsersIPAddress", requestedUsersIPAddress); } request.AddParameter("format", "json"); var response = client.Execute(request); if (response.StatusCode == HttpStatusCode.NotFound) { return(null); } if (response.StatusCode != HttpStatusCode.OK) { throw new RestSharpException(response); } var videoModel = VideoTransforms.Transform(response.Content); return(videoModel.Event.States.RecordedState == RecordedEventState.REVOKE ? null : videoModel); }
public VideoCollectionModel Search(string keywords, int?memberId, string house, string business, DateTime?from, DateTime?to, int pageNum, bool isMemberKeywordSearch, bool archiveOnly) { var client = _restClientWrapper.GetClient(_configuration.IasBaseUrl); var request = _restClientWrapper.AuthRestRequest("api/search/", Method.GET, _configuration.IasAuthKey); if (keywords.HasValue()) { request.AddParameter("keywords", keywords); } if (house.HasValue()) { request.AddParameter("house", house); } if (business.HasValue()) { request.AddParameter("business", business); } if (memberId.HasValue) { request.AddParameter("memberId", memberId); } if (from.HasValue) { request.AddParameter("from", from.ToISO8601String()); } if (to.HasValue) { request.AddParameter("to", to.ToISO8601String()); } if (isMemberKeywordSearch) { request.AddParameter("isMemberKeywordSearch", true); } request.AddParameter("archiveOnly", archiveOnly); request.AddParameter("format", "json"); request.AddParameter("pageNumber", pageNum); var response = client.Execute(request); if (response.StatusCode == HttpStatusCode.NotFound) { return(null); } if (response.StatusCode != HttpStatusCode.OK) { throw new RestSharpException(response); } return(VideoTransforms.TransformArray(response.Content)); }
public VideoCollectionModel GetRecentlyArchived(EventFilter eventFilter = EventFilter.COMMONS, int numEvents = 10) { var client = _restClientWrapper.GetClient(_configuration.IasBaseUrl); var request = _restClientWrapper.AuthRestRequest("api/event/archived/{numEvents}/filter/{eventFilter}", Method.GET, _configuration.IasAuthKey); request.AddUrlSegment("numEvents", numEvents.ToString()); request.AddUrlSegment("eventFilter", eventFilter.ToString()); var response = client.Execute(request); if (response.StatusCode.Equals(HttpStatusCode.NotFound)) { return(null); } if (!response.StatusCode.Equals(HttpStatusCode.OK)) { throw new RestSharpException(response); } return(VideoTransforms.TransformArray(response.Content)); }
public VideoModel GetLegacyVideo(int id) { var client = _restClientWrapper.GetClient(_configuration.IasBaseUrl); var request = _restClientWrapper.AuthRestRequest("api/video/legacy/{id}", Method.GET, _configuration.IasAuthKey); request.AddUrlSegment("id", id.ToString(CultureInfo.InvariantCulture)); request.AddParameter("format", "json"); var response = client.Execute(request); if (response.StatusCode == HttpStatusCode.NotFound) { return(null); } if (response.StatusCode != HttpStatusCode.OK) { throw new RestSharpException(response); } return(VideoTransforms.Transform(response.Content)); }