mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-18 09:04:28 +03:00
Start onvif work
This commit is contained in:
parent
14dc10966d
commit
fc87c8b62c
@ -1,5 +1,6 @@
|
|||||||
"""Configure and control camera via onvif."""
|
"""Configure and control camera via onvif."""
|
||||||
|
|
||||||
|
import asyncio
|
||||||
import logging
|
import logging
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from importlib.util import find_spec
|
from importlib.util import find_spec
|
||||||
@ -60,9 +61,7 @@ class OnvifController:
|
|||||||
cam.onvif.port,
|
cam.onvif.port,
|
||||||
cam.onvif.user,
|
cam.onvif.user,
|
||||||
cam.onvif.password,
|
cam.onvif.password,
|
||||||
wsdl_dir=str(
|
wsdl_dir=str(Path(find_spec("onvif").origin).parent / "wsdl").replace("dist-packages/onvif", "site-packages"),
|
||||||
Path(find_spec("onvif").origin).parent / "wsdl"
|
|
||||||
).replace("dist-packages/onvif", "site-packages"),
|
|
||||||
adjust_time=cam.onvif.ignore_time_mismatch,
|
adjust_time=cam.onvif.ignore_time_mismatch,
|
||||||
transport=transport,
|
transport=transport,
|
||||||
),
|
),
|
||||||
@ -74,8 +73,9 @@ class OnvifController:
|
|||||||
except ONVIFError as e:
|
except ONVIFError as e:
|
||||||
logger.error(f"Onvif connection to {cam.name} failed: {e}")
|
logger.error(f"Onvif connection to {cam.name} failed: {e}")
|
||||||
|
|
||||||
def _init_onvif(self, camera_name: str) -> bool:
|
async def _init_onvif(self, camera_name: str) -> bool:
|
||||||
onvif: ONVIFCamera = self.cams[camera_name]["onvif"]
|
onvif: ONVIFCamera = self.cams[camera_name]["onvif"]
|
||||||
|
await onvif.update_xaddrs()
|
||||||
|
|
||||||
# create init services
|
# create init services
|
||||||
media = onvif.create_media_service()
|
media = onvif.create_media_service()
|
||||||
@ -560,7 +560,7 @@ class OnvifController:
|
|||||||
return
|
return
|
||||||
|
|
||||||
if not self.cams[camera_name]["init"]:
|
if not self.cams[camera_name]["init"]:
|
||||||
if not self._init_onvif(camera_name):
|
if not asyncio.run(self._init_onvif(camera_name)):
|
||||||
return
|
return
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user