pyezvizapi 1.0.2.5__py3-none-any.whl → 1.0.2.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pyezvizapi might be problematic. Click here for more details.

pyezvizapi/client.py CHANGED
@@ -1760,6 +1760,51 @@ class EzvizClient:
1760
1760
 
1761
1761
  return True
1762
1762
 
1763
+ def _resolve_resource_id(self, serial: str, resource_id: str | None) -> str:
1764
+ """Resolve the intelligent app resource id for a given camera."""
1765
+
1766
+ if resource_id:
1767
+ return resource_id
1768
+
1769
+ camera = self._cameras.get(serial)
1770
+ if not camera:
1771
+ raise PyEzvizError(
1772
+ f"Unknown camera serial {serial}. Call load_devices/load_cameras first"
1773
+ )
1774
+
1775
+ resource_infos = camera.get("resourceInfos") or []
1776
+ for item in resource_infos:
1777
+ if isinstance(item, dict) and item.get("resourceId"):
1778
+ return cast(str, item["resourceId"])
1779
+
1780
+ legacy = camera.get("resouceid") or camera.get("resource_id")
1781
+ if isinstance(legacy, str) and legacy:
1782
+ return legacy
1783
+
1784
+ raise PyEzvizError(
1785
+ "Unable to determine resourceId for intelligent app operation"
1786
+ )
1787
+
1788
+ def set_intelligent_app_state(
1789
+ self,
1790
+ serial: str,
1791
+ app_name: str,
1792
+ enabled: bool,
1793
+ resource_id: str | None = None,
1794
+ max_retries: int = 0,
1795
+ ) -> bool:
1796
+ """Enable or disable an intelligent detection app on a camera."""
1797
+
1798
+ resolved_id = self._resolve_resource_id(serial, resource_id)
1799
+ action = "add" if enabled else "remove"
1800
+ return self.manage_intelligent_app(
1801
+ serial,
1802
+ resolved_id,
1803
+ app_name,
1804
+ action=action,
1805
+ max_retries=max_retries,
1806
+ )
1807
+
1763
1808
  def flip_image(
1764
1809
  self,
1765
1810
  serial: str,
pyezvizapi/constants.py CHANGED
@@ -233,6 +233,7 @@ class SupportExt(Enum):
233
233
  SupportMultiChannelFlip = 732
234
234
  SupportMultiChannelSharedService = 720
235
235
  SupportMultiChannelType = 719
236
+ SupportAdvancedDetectType = 793
236
237
  SupportMultiScreen = 17
237
238
  SupportMultiSubsys = 255
238
239
  SupportMultilensPlay = 665
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pyezvizapi
3
- Version: 1.0.2.5
3
+ Version: 1.0.2.7
4
4
  Summary: Pilot your Ezviz cameras
5
5
  Home-page: https://github.com/RenierM26/pyEzvizApi/
6
6
  Author: Renier Moorcroft
@@ -3,8 +3,8 @@ pyezvizapi/__main__.py,sha256=9uttTuOfO22tzyomJIV8ebFJ-G-YUNDYOadZ_0AgdNA,20925
3
3
  pyezvizapi/api_endpoints.py,sha256=rk6VinLVCn-B6DxnhfV79liplNpgUsipNbTEa_MRVwU,2755
4
4
  pyezvizapi/camera.py,sha256=Pl5oIEdrFcv1Hz5sQI1IyyJIDCMjOjQdtExgKzmLoK8,22102
5
5
  pyezvizapi/cas.py,sha256=3zHe-_a0KchCmGeAj1of-pV6oMPRUmSCIiDqBFsTK8A,6025
6
- pyezvizapi/client.py,sha256=Wvl5URCYXt0euze2w3vEilR5urcc4LTage3sCLqZIOo,73683
7
- pyezvizapi/constants.py,sha256=RPyKUj0OX2VypIzcGcmmnLPDvDlCMUaZGpwADB53q4U,12585
6
+ pyezvizapi/client.py,sha256=g8smgFhKh41O6aks0bd15BPDoK8Lif87ix8YOgQZ9rQ,75148
7
+ pyezvizapi/constants.py,sha256=wSX5nxjZU_8zjedjoPaEjPrF1ddFptox2g_isD_Ku74,12621
8
8
  pyezvizapi/exceptions.py,sha256=8rmxEUQdrziqMe-M1SeeRd0HtP2IDQ2xpJVj7wvOQyo,976
9
9
  pyezvizapi/light_bulb.py,sha256=9wgycG3dTvBbrsxQjQnXal-GA8VXPsIN1m-CTtRh8i0,7797
10
10
  pyezvizapi/models.py,sha256=NQzwTP0yEe2IWU-Vc6nAn87xulpTuo0MX2Rcf0WxifA,4176
@@ -12,10 +12,10 @@ pyezvizapi/mqtt.py,sha256=aOL-gexZgYvCCaNQ03M4vZan91d5p2Fl_qsFykn9NW4,22365
12
12
  pyezvizapi/test_cam_rtsp.py,sha256=O9NHh-vcNFfnzNw8jbuhM9a_5TWfNZIMXaJP7Lmkaj4,5162
13
13
  pyezvizapi/test_mqtt.py,sha256=Orn-fwZPJIE4G5KROMX0MRAkLwU6nLb9LUtXyb2ZCQs,4147
14
14
  pyezvizapi/utils.py,sha256=G8gGjG0ecdN05Y0vxOHvcQMtQXgVB7nHzyvCzz66kLk,12148
15
- pyezvizapi-1.0.2.5.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
16
- pyezvizapi-1.0.2.5.dist-info/licenses/LICENSE.md,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
17
- pyezvizapi-1.0.2.5.dist-info/METADATA,sha256=bnksAask1LcIhYS8ZDIq2Yb7HCnE4tsfhHcbXMhy-yE,695
18
- pyezvizapi-1.0.2.5.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
19
- pyezvizapi-1.0.2.5.dist-info/entry_points.txt,sha256=_BSJ3eNb2H_AZkRdsv1s4mojqWn3N7m503ujvg1SudA,56
20
- pyezvizapi-1.0.2.5.dist-info/top_level.txt,sha256=gMZTelIi8z7pXyTCQLLaIkxVRrDQ_lS2NEv0WgfHrHs,11
21
- pyezvizapi-1.0.2.5.dist-info/RECORD,,
15
+ pyezvizapi-1.0.2.7.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
16
+ pyezvizapi-1.0.2.7.dist-info/licenses/LICENSE.md,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
17
+ pyezvizapi-1.0.2.7.dist-info/METADATA,sha256=FxXeavC88bZTrq6dN2x9PSPIyM9JBr_QH_kAZMZbwiE,695
18
+ pyezvizapi-1.0.2.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
19
+ pyezvizapi-1.0.2.7.dist-info/entry_points.txt,sha256=_BSJ3eNb2H_AZkRdsv1s4mojqWn3N7m503ujvg1SudA,56
20
+ pyezvizapi-1.0.2.7.dist-info/top_level.txt,sha256=gMZTelIi8z7pXyTCQLLaIkxVRrDQ_lS2NEv0WgfHrHs,11
21
+ pyezvizapi-1.0.2.7.dist-info/RECORD,,