Ejemplo n.º 1
0
        private static Camera KeepPublishedCameraAliveSync(Camera camera, string address, int port)
        {
            MediaService service = GetDeviceConnectorServiceSync(camera.HostUri);

              if (service != null)
              {
            KeepPublishedCameraAliveRequest request = new KeepPublishedCameraAliveRequest()
            {
              CameraId = camera.Id,
              Destination = new PublishDestinationData()
              {
            Address = address,
            Port = port,
              },
            };
            KeepPublishedCameraAliveResponse response =
              ServiceProvider
            .GetService<IDeviceConnectorService, IDeviceConnectorCallbackService>(
              ViewModelLocator.ServiceClient, service.HostName, service.Uri.ToString())
            .KeepPublishedCameraAlive(request);
              }

              return camera;
        }
        public KeepPublishedCameraAliveResponse KeepPublishedCameraAlive(KeepPublishedCameraAliveRequest request)
        {
            try
              {
            if (request == null)
              throw new ArgumentNullException("request");

            KeepPublishedCameraAliveResponse response = new KeepPublishedCameraAliveResponse();

            Locator.Get<IStreamingManager>().KeepAlive(request.CameraId, PublishedCameraTranslator.Translate(request.Destination));

            return response;
              }
              catch (Exception ex)
              {
            throw new FaultException<DeviceConnectorServiceFault>(new DeviceConnectorServiceFault(ex.Message, ex), ex.Message);
              }
        }