From 82a1c0d0e8fecaea8eadd41bbe561758303ff835 Mon Sep 17 00:00:00 2001 From: Chris Helming Date: Fri, 5 Apr 2019 02:40:47 -0400 Subject: [PATCH] Update Foscam stream for newer models (#22744) * Update Foscam to support stream source * Removing spaces and tabs * Changing to Python3-style string formatting * Adding '_media_port' to hopefully cover other models * changing logic for success and return none * Update Foscam stream for newer models * change if to or --- homeassistant/components/foscam/camera.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/foscam/camera.py b/homeassistant/components/foscam/camera.py index 9852f617d01..308e6e86ec8 100644 --- a/homeassistant/components/foscam/camera.py +++ b/homeassistant/components/foscam/camera.py @@ -53,10 +53,11 @@ class FoscamCam(Camera): self._foscam_session = FoscamCamera( ip_address, port, self._username, self._password, verbose=False) - self._media_port = None + self._rtsp_port = None result, response = self._foscam_session.get_port_info() if result == 0: - self._media_port = response['mediaPort'] + self._rtsp_port = response.get('rtspPort') or \ + response.get('mediaPort') def camera_image(self): """Return a still image response from the camera.""" @@ -71,19 +72,19 @@ class FoscamCam(Camera): @property def supported_features(self): """Return supported features.""" - if self._media_port: + if self._rtsp_port: return SUPPORT_STREAM return 0 @property def stream_source(self): """Return the stream source.""" - if self._media_port: + if self._rtsp_port: return 'rtsp://{}:{}@{}:{}/videoMain'.format( self._username, self._password, self._foscam_session.host, - self._media_port) + self._rtsp_port) return None @property