Catch auth errors

This commit is contained in:
Nick Mowen 2022-12-16 12:28:09 -07:00
parent ac1c5785e9
commit c6385a81fa

View File

@ -4,7 +4,7 @@ import logging
import site import site
from enum import Enum from enum import Enum
from onvif import ONVIFCamera from onvif import ONVIFCamera, ONVIFError
from frigate.config import FrigateConfig from frigate.config import FrigateConfig
@ -38,7 +38,7 @@ class OnvifController:
cam.onvif.port, cam.onvif.port,
cam.onvif.user, cam.onvif.user,
cam.onvif.password, cam.onvif.password,
wsdl_dir=site.getsitepackages()[0].replace('dist-packages', 'site-packages') + '/wsdl' #wsdl_dir=site.getsitepackages()[0].replace('dist-packages', 'site-packages') + '/wsdl'
), ),
"init": False, "init": False,
"active": False, "active": False,
@ -50,7 +50,12 @@ class OnvifController:
# create init services # create init services
media = onvif.create_media_service() media = onvif.create_media_service()
try:
profile = media.GetProfiles()[0] profile = media.GetProfiles()[0]
except ONVIFError as e:
logger.error(f"Unable to connect to camera: {camera_name}: {e}")
ptz = onvif.create_ptz_service() ptz = onvif.create_ptz_service()
request = ptz.create_type("GetConfigurationOptions") request = ptz.create_type("GetConfigurationOptions")
request.ConfigurationToken = profile.PTZConfiguration.token request.ConfigurationToken = profile.PTZConfiguration.token