From 8c9ff64e9e533eb6c4f34c8797f42f97b9abf14c Mon Sep 17 00:00:00 2001 From: Calin Crisan Date: Sun, 7 Dec 2014 15:24:14 +0200 Subject: [PATCH] fixed frame view with remote cameras --- src/config.py | 2 +- src/handlers.py | 26 ++++++++++++++++++++++---- 2 files changed, 23 insertions(+), 5 deletions(-) diff --git a/src/config.py b/src/config.py index 7ede8a2..5ea292c 100644 --- a/src/config.py +++ b/src/config.py @@ -782,7 +782,7 @@ def camera_dict_to_ui(data): 'streaming_framerate': int(data['stream_maxrate']), 'streaming_quality': int(data['stream_quality']), 'streaming_resolution': int(data['@webcam_resolution']), - 'streaming_server_resize': int(data['@webcam_server_resize']), + 'streaming_server_resize': data['@webcam_server_resize'], 'streaming_port': int(data['stream_port']), 'streaming_motion': int(data['stream_motion']), diff --git a/src/handlers.py b/src/handlers.py index c719e4d..e8833c0 100644 --- a/src/handlers.py +++ b/src/handlers.py @@ -736,10 +736,28 @@ class PictureHandler(BaseHandler): def frame(self, camera_id): camera_config = config.get_camera(camera_id) - self.render('frame.html', - camera_id=camera_id, - camera_config=camera_config, - title=self.get_argument('title', camera_config['@name'])) + if utils.local_camera(camera_config) or self.get_argument('title', None) is not None: + self.render('frame.html', + camera_id=camera_id, + camera_config=camera_config, + title=self.get_argument('title', camera_config.get('@name', ''))) + + else: # remote camera, we need to fetch remote config + def on_response(remote_ui_config=None, error=None): + if error: + return self.render('frame.html', + camera_id=camera_id, + camera_config=camera_config, + title=self.get_argument('title', '')) + + remote_config = config.camera_ui_to_dict(remote_ui_config) + self.render('frame.html', + camera_id=camera_id, + camera_config=remote_config, + title=self.get_argument('title', remote_config['@name'])) + + remote.get_config(camera_config, on_response) + @BaseHandler.auth() def download(self, camera_id, filename): -- 2.39.5