Raspberry Pi (all): FNC: add configurable RTSP port UI support

This commit is contained in:
Calin Crisan 2019-05-21 22:36:54 +03:00
parent fc7fe36816
commit 3bbad8b4be
3 changed files with 108 additions and 12 deletions

View File

@ -411,6 +411,7 @@ def _get_streameye_settings(camera_id):
'seProto': 'mjpeg', 'seProto': 'mjpeg',
'seAuthMode': 'disabled', 'seAuthMode': 'disabled',
'sePort': 8081, 'sePort': 8081,
'seRTSPPort': 554
} }
if os.path.exists(STREAMEYE_CONF): if os.path.exists(STREAMEYE_CONF):
@ -422,16 +423,21 @@ def _get_streameye_settings(camera_id):
if not line: if not line:
continue continue
m = re.findall('PORT="?(\d+)"?', line) m = re.findall('^PORT="?(\d+)"?', line)
if m: if m:
s['sePort'] = int(m[0]) s['sePort'] = int(m[0])
continue continue
m = re.findall('AUTH="?(\w+)"?', line) m = re.findall('^RTSP_PORT="?(\d+)"?', line)
if m:
s['seRTSPPort'] = int(m[0])
continue
m = re.findall('^AUTH="?(\w+)"?', line)
if m: if m:
s['seAuthMode'] = m[0] s['seAuthMode'] = m[0]
m = re.findall('PROTO="?(\w+)"?', line) m = re.findall('^PROTO="?(\w+)"?', line)
if m: if m:
s['seProto'] = m[0] s['seProto'] = m[0]
@ -441,6 +447,7 @@ def _get_streameye_settings(camera_id):
def _set_streameye_settings(camera_id, s): def _set_streameye_settings(camera_id, s):
s = dict(s) s = dict(s)
s.setdefault('sePort', 8081) s.setdefault('sePort', 8081)
s.setdefault('seRTSPPort', 554)
s.setdefault('seAuthMode', 'disabled') s.setdefault('seAuthMode', 'disabled')
main_config = config.get_main() main_config = config.get_main()
@ -453,6 +460,7 @@ def _set_streameye_settings(camera_id, s):
lines = [ lines = [
'PROTO="%s"' % s['seProto'], 'PROTO="%s"' % s['seProto'],
'PORT="%s"' % s['sePort'], 'PORT="%s"' % s['sePort'],
'RTSP_PORT="%s"' % s['seRTSPPort'],
'AUTH="%s"' % s['seAuthMode'], 'AUTH="%s"' % s['seAuthMode'],
'CREDENTIALS="%s:%s:%s"' % (username, password, realm) 'CREDENTIALS="%s:%s:%s"' % (username, password, realm)
] ]
@ -1193,12 +1201,35 @@ def sePort():
'label': 'Streaming Port', 'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens', 'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number', 'type': 'number',
'min': 1024, 'min': 0,
'max': 65535, 'max': 65535,
'section': 'streaming', 'section': 'streaming',
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings,
'set': _set_streameye_settings,
'get_set_dict': True
}
@additional_config
def seRTSPPort():
if not _get_streameye_enabled():
return None
return {
'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number',
'min': 0,
'max': 65535,
'section': 'streaming',
'advanced': True,
'camera': True,
'required': True,
'depends': ['seProto==rtsp'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True
@ -1219,6 +1250,7 @@ def seAuthMode():
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True

View File

@ -411,6 +411,7 @@ def _get_streameye_settings(camera_id):
'seProto': 'mjpeg', 'seProto': 'mjpeg',
'seAuthMode': 'disabled', 'seAuthMode': 'disabled',
'sePort': 8081, 'sePort': 8081,
'seRTSPPort': 554
} }
if os.path.exists(STREAMEYE_CONF): if os.path.exists(STREAMEYE_CONF):
@ -422,16 +423,21 @@ def _get_streameye_settings(camera_id):
if not line: if not line:
continue continue
m = re.findall('PORT="?(\d+)"?', line) m = re.findall('^PORT="?(\d+)"?', line)
if m: if m:
s['sePort'] = int(m[0]) s['sePort'] = int(m[0])
continue continue
m = re.findall('AUTH="?(\w+)"?', line) m = re.findall('^RTSP_PORT="?(\d+)"?', line)
if m:
s['seRTSPPort'] = int(m[0])
continue
m = re.findall('^AUTH="?(\w+)"?', line)
if m: if m:
s['seAuthMode'] = m[0] s['seAuthMode'] = m[0]
m = re.findall('PROTO="?(\w+)"?', line) m = re.findall('^PROTO="?(\w+)"?', line)
if m: if m:
s['seProto'] = m[0] s['seProto'] = m[0]
@ -441,6 +447,7 @@ def _get_streameye_settings(camera_id):
def _set_streameye_settings(camera_id, s): def _set_streameye_settings(camera_id, s):
s = dict(s) s = dict(s)
s.setdefault('sePort', 8081) s.setdefault('sePort', 8081)
s.setdefault('seRTSPPort', 554)
s.setdefault('seAuthMode', 'disabled') s.setdefault('seAuthMode', 'disabled')
main_config = config.get_main() main_config = config.get_main()
@ -453,6 +460,7 @@ def _set_streameye_settings(camera_id, s):
lines = [ lines = [
'PROTO="%s"' % s['seProto'], 'PROTO="%s"' % s['seProto'],
'PORT="%s"' % s['sePort'], 'PORT="%s"' % s['sePort'],
'RTSP_PORT="%s"' % s['seRTSPPort'],
'AUTH="%s"' % s['seAuthMode'], 'AUTH="%s"' % s['seAuthMode'],
'CREDENTIALS="%s:%s:%s"' % (username, password, realm) 'CREDENTIALS="%s:%s:%s"' % (username, password, realm)
] ]
@ -1193,12 +1201,35 @@ def sePort():
'label': 'Streaming Port', 'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens', 'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number', 'type': 'number',
'min': 1024, 'min': 0,
'max': 65535, 'max': 65535,
'section': 'streaming', 'section': 'streaming',
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings,
'set': _set_streameye_settings,
'get_set_dict': True
}
@additional_config
def seRTSPPort():
if not _get_streameye_enabled():
return None
return {
'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number',
'min': 0,
'max': 65535,
'section': 'streaming',
'advanced': True,
'camera': True,
'required': True,
'depends': ['seProto==rtsp'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True
@ -1219,6 +1250,7 @@ def seAuthMode():
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True

View File

@ -411,6 +411,7 @@ def _get_streameye_settings(camera_id):
'seProto': 'mjpeg', 'seProto': 'mjpeg',
'seAuthMode': 'disabled', 'seAuthMode': 'disabled',
'sePort': 8081, 'sePort': 8081,
'seRTSPPort': 554
} }
if os.path.exists(STREAMEYE_CONF): if os.path.exists(STREAMEYE_CONF):
@ -422,16 +423,21 @@ def _get_streameye_settings(camera_id):
if not line: if not line:
continue continue
m = re.findall('PORT="?(\d+)"?', line) m = re.findall('^PORT="?(\d+)"?', line)
if m: if m:
s['sePort'] = int(m[0]) s['sePort'] = int(m[0])
continue continue
m = re.findall('AUTH="?(\w+)"?', line) m = re.findall('^RTSP_PORT="?(\d+)"?', line)
if m:
s['seRTSPPort'] = int(m[0])
continue
m = re.findall('^AUTH="?(\w+)"?', line)
if m: if m:
s['seAuthMode'] = m[0] s['seAuthMode'] = m[0]
m = re.findall('PROTO="?(\w+)"?', line) m = re.findall('^PROTO="?(\w+)"?', line)
if m: if m:
s['seProto'] = m[0] s['seProto'] = m[0]
@ -441,6 +447,7 @@ def _get_streameye_settings(camera_id):
def _set_streameye_settings(camera_id, s): def _set_streameye_settings(camera_id, s):
s = dict(s) s = dict(s)
s.setdefault('sePort', 8081) s.setdefault('sePort', 8081)
s.setdefault('seRTSPPort', 554)
s.setdefault('seAuthMode', 'disabled') s.setdefault('seAuthMode', 'disabled')
main_config = config.get_main() main_config = config.get_main()
@ -453,6 +460,7 @@ def _set_streameye_settings(camera_id, s):
lines = [ lines = [
'PROTO="%s"' % s['seProto'], 'PROTO="%s"' % s['seProto'],
'PORT="%s"' % s['sePort'], 'PORT="%s"' % s['sePort'],
'RTSP_PORT="%s"' % s['seRTSPPort'],
'AUTH="%s"' % s['seAuthMode'], 'AUTH="%s"' % s['seAuthMode'],
'CREDENTIALS="%s:%s:%s"' % (username, password, realm) 'CREDENTIALS="%s:%s:%s"' % (username, password, realm)
] ]
@ -1193,12 +1201,35 @@ def sePort():
'label': 'Streaming Port', 'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens', 'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number', 'type': 'number',
'min': 1024, 'min': 0,
'max': 65535, 'max': 65535,
'section': 'streaming', 'section': 'streaming',
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings,
'set': _set_streameye_settings,
'get_set_dict': True
}
@additional_config
def seRTSPPort():
if not _get_streameye_enabled():
return None
return {
'label': 'Streaming Port',
'description': 'sets the TCP port on which the webcam streaming server listens',
'type': 'number',
'min': 0,
'max': 65535,
'section': 'streaming',
'advanced': True,
'camera': True,
'required': True,
'depends': ['seProto==rtsp'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True
@ -1219,6 +1250,7 @@ def seAuthMode():
'advanced': True, 'advanced': True,
'camera': True, 'camera': True,
'required': True, 'required': True,
'depends': ['seProto==mjpeg'],
'get': _get_streameye_settings, 'get': _get_streameye_settings,
'set': _set_streameye_settings, 'set': _set_streameye_settings,
'get_set_dict': True 'get_set_dict': True