Пример #1
0
        public Camera GetCamera(string cameraId)
        {
            Dictionary <Uri, ServiceProfile> services = ServiceProvider.GetServices <IMediaPublisherService>();

            foreach (var item in services)
            {
                IMediaPublisherService service = ServiceProvider.GetService <IMediaPublisherService>(item.Value.HostName, item.Value.Uri.ToString());

                GetPublishedCamerasRequest  request  = new GetPublishedCamerasRequest();
                GetPublishedCamerasResponse response = service.GetPublishedCameras(request);

                var publishedCamera = response.PublishedCameras.FirstOrDefault(c => c.Profile.CameraId == cameraId);
                if (publishedCamera != null)
                {
                    Camera camera = new Camera()
                    {
                        Id   = publishedCamera.Profile.CameraId,
                        Name = publishedCamera.Profile.CameraName,
                        Url  = string.Format(CultureInfo.InvariantCulture, @"http://{0}:{1}", item.Value.HostName, publishedCamera.Destination.Port),
                        Port = publishedCamera.Destination.Port,
                    };
                    return(camera);
                }
            }

            return(null);
        }
Пример #2
0
        public IList <Camera> GetCameras()
        {
            List <Camera> cameras = new List <Camera>();
            Dictionary <Uri, ServiceProfile> services = ServiceProvider.GetServices <IMediaPublisherService>();

            foreach (var item in services)
            {
                IMediaPublisherService service = ServiceProvider.GetService <IMediaPublisherService>(item.Value.HostName, item.Value.Uri.ToString());

                GetPublishedCamerasRequest  request  = new GetPublishedCamerasRequest();
                GetPublishedCamerasResponse response = service.GetPublishedCameras(request);

                foreach (var publishedCamera in response.PublishedCameras)
                {
                    Camera camera = new Camera()
                    {
                        Id   = publishedCamera.Profile.CameraId,
                        Name = publishedCamera.Profile.CameraName,
                        Url  = string.Format(CultureInfo.InvariantCulture, @"http://{0}:{1}", item.Value.HostName, publishedCamera.Destination.Port),
                        Port = publishedCamera.Destination.Port,
                    };
                    cameras.Add(camera);
                }
            }

            return(cameras);
        }
Пример #3
0
        public byte[] GetCameraThumbnail(string cameraId)
        {
            Dictionary <Uri, ServiceProfile> services = ServiceProvider.GetServices <IMediaPublisherService>();

            foreach (var item in services)
            {
                IMediaPublisherService service = ServiceProvider.GetService <IMediaPublisherService>(item.Value.HostName, item.Value.Uri.ToString());

                GetPublishedCamerasRequest  request  = new GetPublishedCamerasRequest();
                GetPublishedCamerasResponse response = service.GetPublishedCameras(request);

                var publishedCamera = response.PublishedCameras.FirstOrDefault(c => c.Profile.CameraId == cameraId);
                if (publishedCamera != null)
                {
                    return(publishedCamera.Profile.CameraThumbnail);
                }
            }

            return(null);
        }