void GetFileTest() { SearchFileRequest searchFileRequest = new SearchFileRequest() { ChannelNo = 0, Beg = new SystemTimeInfo(2017, 7, 4, 8, 0, 0), End = new SystemTimeInfo(2017, 7, 4, 13, 0, 0), Type = 0 }; SearchFileResponse searchFileResponse = m_howell5198client.SearchFile(searchFileRequest); if (searchFileResponse == null) { Console.WriteLine("SearchFile error"); return; } Console.WriteLine("searchFileResponse: filecount:{0}", searchFileResponse.FileInfos.Length); if (searchFileResponse.FileInfos.Length > 0)//搜索到录像文件的话 { GetFileInfoRequest getFileInfoRequest = new GetFileInfoRequest(); getFileInfoRequest.ChannelNo = searchFileResponse.FileInfos[0].ChannelNo; getFileInfoRequest.Beg = searchFileResponse.FileInfos[0].Beg; getFileInfoRequest.End = searchFileResponse.FileInfos[0].End; GetFileInfoResponse getFileInfoResponse = m_howell5198client.GetFileInfo(getFileInfoRequest); if (getFileInfoResponse == null) { Console.WriteLine("GetFileInfo error"); return; } Console.WriteLine("getFileInfoResponse: FileFormatType:{0}", getFileInfoResponse.FileFormatType); //构建HW头 HW_MediaInfo media = new HW_MediaInfo(); media.Dvr_version = getFileInfoResponse.FileFormatType; media.Adec_code = getFileInfoResponse.Audio_dec; media.Vdec_code = getFileInfoResponse.Video_dec; media.Reserved[0] = (8 << 24) + (8 << 16) + (1 << 8) + 0;//au_bits+au_sampleau_sample+au_channel+reserve GetFileRequest getFileRequest = new GetFileRequest(); getFileRequest.ChannelNo = searchFileResponse.FileInfos[0].ChannelNo; getFileRequest.Beg = searchFileResponse.FileInfos[0].Beg; getFileRequest.End = searchFileResponse.FileInfos[0].End; getFileRequest.Type = searchFileResponse.FileInfos[0].Type; Howell5198FileStream filestream = m_howell5198client.GetFile(getFileRequest); filestream.FileDataReceived += howell5198client_FileDataReceived; filestream.StartReceive(); Thread.Sleep(1000); filestream.StopReceive(); } }
public IActionResult GetFileMetadata(int recordId, int fieldId, int fileId) { var getResponse = new GetFileInfoResponse(); return(Ok(getResponse)); }
private void GetFileInfoFinished(object sender, get_file_infoCompletedEventArgs e) { AsyncCallState<OperationFinished<GetFileInfoResponse>> state = (AsyncCallState<OperationFinished<GetFileInfoResponse>>) e.UserState; GetFileInfoResponse response; if (e.Error != null) { response = new GetFileInfoResponse { Error = e.Error, Status = GetFileInfoStatus.Failed, File = null, UserState = state.UserState }; } else { response = new GetFileInfoResponse { Status = StatusMessageParser.ParseGetFileInfoStatus(e.Result), File = new File { Created = UnixTimeConverter.Instance.FromUnixTime(e.info.created), Description = e.info.description, ID = e.info.file_id, IsShared = e.info.shared == 1, Name = e.info.file_name, PublicName = e.info.public_name, SHA1Hash = e.info.sha1, Size = e.info.size, Updated = UnixTimeConverter.Instance.FromUnixTime(e.info.updated) }, UserState = state.UserState }; response.Error = response.Status == GetFileInfoStatus.Unknown ? new UnknownOperationStatusException(e.Result) : null; } state.CallbackDelegate(response); }