public GetCameraResponse GetCamera(GetCameraRequest request) { try { if (request == null) { throw new ArgumentNullException("request"); } GetCameraResponse response = new GetCameraResponse(); BE::Camera c = Locator.Get <ICameraManager>().GetCamera(request.CameraId); if (c != null) { DC::Camera camera = new DC::Camera() { Id = c.Id, Name = c.Name, Url = c.Url, Port = c.Port, }; response.Camera = camera; } return(response); } catch (Exception ex) { throw new FaultException <DeviceProfileServiceFault>(new DeviceProfileServiceFault(ex.Message, ex), ex.Message); } }
public GetCameraResponse GetCamera(GetCameraRequest request) { try { if (request == null) { throw new ArgumentNullException("request"); } GetCameraResponse response = new GetCameraResponse(); response.Camera = CameraTranslator.Translate(Locator.Get <ICameraManager>().GetCamera(request.CameraId)); return(response); } catch (Exception ex) { throw new FaultException <DeviceConnectorServiceFault>(new DeviceConnectorServiceFault(ex.Message, ex), ex.Message); } }
private Camera GetCameraDevice() { MediaService service = GetDeviceConnectorServiceSync(Camera.Profile.DeviceServiceUri); GetCameraRequest request = new GetCameraRequest() { CameraId = Camera.Profile.CameraId, }; GetCameraResponse response = ServiceProvider .GetService <IDeviceConnectorService, IDeviceConnectorCallbackService>( DeviceConnectorServiceClient.ServiceClient, service.HostName, service.Uri.ToString()) .GetCamera(request); Camera camera = null; if (response.Camera != null) { camera = new Camera() { Id = response.Camera.Profile.Id, Name = response.Camera.Profile.Name, Description = response.Camera.Profile.Description, Tags = response.Camera.Profile.Tags, Thumbnail = response.Camera.Thumbnail }; // camera video source camera.VideoSourceDescription = new VideoSourceDescription() { FriendlyName = response.Camera.Config.FriendlyName, OriginalSourceString = response.Camera.Config.OriginalSourceString, SourceString = response.Camera.Config.SourceString, FrameInterval = response.Camera.Config.FrameInterval, FrameRate = response.Camera.Config.FrameRate, UserName = response.Camera.Config.UserName, Password = response.Camera.Config.Password, UserAgent = response.Camera.Config.UserAgent, }; if (response.Camera.Config.Resolution != null) { camera.VideoSourceDescription.Resolution = new Resolution() { Width = response.Camera.Config.Resolution.Width, Height = response.Camera.Config.Resolution.Height }; } // translate cameras came from remote server switch (response.Camera.Profile.FilterType) { case FilterTypeData.LocalCamera: case FilterTypeData.LocalDesktop: case FilterTypeData.LocalAVIFile: case FilterTypeData.NetworkJPEG: case FilterTypeData.NetworkMJPEG: camera.VideoSourceDescription.SourceType = VideoSourceType.NetworkRtpStream; break; default: break; } // where is this camera camera.HostName = service.HostName; camera.HostUri = service.Uri.ToString(); } return(camera); }