uiprotect 3.8.0__tar.gz → 4.0.0__tar.gz

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 uiprotect might be problematic. Click here for more details.

Files changed (36) hide show
  1. {uiprotect-3.8.0 → uiprotect-4.0.0}/PKG-INFO +1 -1
  2. {uiprotect-3.8.0 → uiprotect-4.0.0}/pyproject.toml +1 -1
  3. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/bootstrap.py +0 -7
  4. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/devices.py +0 -11
  5. {uiprotect-3.8.0 → uiprotect-4.0.0}/LICENSE +0 -0
  6. {uiprotect-3.8.0 → uiprotect-4.0.0}/README.md +0 -0
  7. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/__init__.py +0 -0
  8. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/__main__.py +0 -0
  9. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/api.py +0 -0
  10. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/__init__.py +0 -0
  11. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/backup.py +0 -0
  12. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/base.py +0 -0
  13. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/cameras.py +0 -0
  14. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/chimes.py +0 -0
  15. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/doorlocks.py +0 -0
  16. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/events.py +0 -0
  17. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/lights.py +0 -0
  18. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/liveviews.py +0 -0
  19. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/nvr.py +0 -0
  20. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/sensors.py +0 -0
  21. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/cli/viewers.py +0 -0
  22. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/__init__.py +0 -0
  23. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/base.py +0 -0
  24. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/convert.py +0 -0
  25. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/nvr.py +0 -0
  26. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/types.py +0 -0
  27. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/user.py +0 -0
  28. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/data/websocket.py +0 -0
  29. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/exceptions.py +0 -0
  30. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/py.typed +0 -0
  31. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/release_cache.json +0 -0
  32. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/stream.py +0 -0
  33. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/test_util/__init__.py +0 -0
  34. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/test_util/anonymize.py +0 -0
  35. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/utils.py +0 -0
  36. {uiprotect-3.8.0 → uiprotect-4.0.0}/src/uiprotect/websocket.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: uiprotect
3
- Version: 3.8.0
3
+ Version: 4.0.0
4
4
  Summary: Python API for Unifi Protect (Unofficial)
5
5
  Home-page: https://github.com/uilibs/uiprotect
6
6
  Author: UI Protect Maintainers
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "uiprotect"
3
- version = "3.8.0"
3
+ version = "4.0.0"
4
4
  description = "Python API for Unifi Protect (Unofficial)"
5
5
  authors = ["UI Protect Maintainers <ui@koston.org>"]
6
6
  readme = "README.md"
@@ -464,13 +464,6 @@ class Bootstrap(ProtectBaseObject):
464
464
  if TYPE_CHECKING:
465
465
  assert isinstance(obj, Event)
466
466
  self.process_event(obj)
467
- elif model_type is ModelType.CAMERA:
468
- if TYPE_CHECKING:
469
- assert isinstance(obj, Camera)
470
- if "last_ring" in data and (last_ring := obj.last_ring):
471
- if is_recent := last_ring + RECENT_EVENT_MAX >= utc_now():
472
- obj.set_ring_timeout()
473
- _LOGGER.debug("last_ring for %s (%s)", obj.id, is_recent)
474
467
  elif model_type is ModelType.SENSOR:
475
468
  if TYPE_CHECKING:
476
469
  assert isinstance(obj, Sensor)
@@ -977,7 +977,6 @@ class Camera(ProtectMotionDeviceModel):
977
977
  last_smart_detect_event_ids: dict[SmartDetectObjectType, str] = {}
978
978
  last_smart_audio_detect_event_ids: dict[SmartDetectAudioType, str] = {}
979
979
  talkback_stream: TalkbackStream | None = None
980
- _last_ring_timeout: datetime | None = PrivateAttr(None)
981
980
 
982
981
  @classmethod
983
982
  @cache
@@ -1845,12 +1844,6 @@ class Camera(ProtectMotionDeviceModel):
1845
1844
  # endregion
1846
1845
  # endregion
1847
1846
 
1848
- @property
1849
- def is_ringing(self) -> bool:
1850
- if self._last_ring_timeout is None:
1851
- return False
1852
- return utc_now() < self._last_ring_timeout
1853
-
1854
1847
  @property
1855
1848
  def chime_type(self) -> ChimeType:
1856
1849
  if self.chime_duration.total_seconds() == 0.3:
@@ -1935,10 +1928,6 @@ class Camera(ProtectMotionDeviceModel):
1935
1928
 
1936
1929
  return False
1937
1930
 
1938
- def set_ring_timeout(self) -> None:
1939
- self._last_ring_timeout = utc_now() + EVENT_PING_INTERVAL
1940
- self._event_callback_ping()
1941
-
1942
1931
  def get_privacy_zone(self) -> tuple[int | None, CameraZone | None]:
1943
1932
  for index, zone in enumerate(self.privacy_zones):
1944
1933
  if zone.name == PRIVACY_ZONE_NAME:
File without changes
File without changes