ep1cman / unifi-protect-backup

Python tool to backup unifi event clips in realtime
MIT License
577 stars 25 forks source link

[Bug] Attempting to download disconnect even types fails #31

Closed ircmaxell closed 2 years ago

ircmaxell commented 2 years ago

Description

When a disconnect event is received, the protect-backup attempts to download a video clip associated with the event. Such video clip doesn't exist and this causes it to try 5 times until hard-failing the sync.

While this doesn't cause any undesired behavior, it may be worth putting in handling for the event type to not try downloading the video which would never work (short of Unifi changing behavior).

Not a major issue, just something I noticed that I figured was worth pointing out.

2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:  Adding event 623f31d70...to queue (Current queue=1)
2022-03-26 15:32:16 [INFO]:unifi_protect_backup.unifi_protect_backup:   Backing up event: 623f31d70227f103e700daea
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:  Remaining Queue: 0
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Camera: Front
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Type: disconnect
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Start: 2022-03-26T11-31-35 (1648308695.549)
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    End: 2022-03-26T11-32-16 (1648308736.596)
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Duration: 41.047
2022-03-26 15:32:16 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Sleeping (7.477881s) to ensure clip is ready to download...
2022-03-26 15:32:24 [DEBUG]:unifi_protect_backup.unifi_protect_backup:    Downloading video...
2022-03-26 15:32:24 [WARNING]:unifi_protect_backup.unifi_protect_backup:        Failed download attempt 1, retying in 1s
2022-03-26 15:32:24 [ERROR]:unifi_protect_backup.unifi_protect_backup:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/unifi_protect_backup/unifi_protect_backup.py", line 498, in _backup_events
    assert isinstance(video, bytes)
AssertionError
2022-03-26 15:32:25 [WARNING]:unifi_protect_backup.unifi_protect_backup:        Failed download attempt 2, retying in 1s
2022-03-26 15:32:25 [ERROR]:unifi_protect_backup.unifi_protect_backup:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/unifi_protect_backup/unifi_protect_backup.py", line 498, in _backup_events
    assert isinstance(video, bytes)
AssertionError
2022-03-26 15:32:26 [WARNING]:unifi_protect_backup.unifi_protect_backup:        Failed download attempt 3, retying in 1s
2022-03-26 15:32:26 [ERROR]:unifi_protect_backup.unifi_protect_backup:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/unifi_protect_backup/unifi_protect_backup.py", line 498, in _backup_events
    assert isinstance(video, bytes)
AssertionError
2022-03-26 15:32:27 [WARNING]:unifi_protect_backup.unifi_protect_backup:        Failed download attempt 4, retying in 1s
2022-03-26 15:32:27 [ERROR]:unifi_protect_backup.unifi_protect_backup:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/unifi_protect_backup/unifi_protect_backup.py", line 498, in _backup_events
    assert isinstance(video, bytes)
AssertionError
2022-03-26 15:32:28 [WARNING]:unifi_protect_backup.unifi_protect_backup:        Failed download attempt 5, retying in 1s
2022-03-26 15:32:28 [ERROR]:unifi_protect_backup.unifi_protect_backup:
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/unifi_protect_backup/unifi_protect_backup.py", line 498, in _backup_events
    assert isinstance(video, bytes)
AssertionError
2022-03-26 15:32:29 [WARNING]:unifi_protect_backup.unifi_protect_backup:    Download failed after 5 attempts, abandoning event 623f31d70...:
ep1cman commented 2 years ago

Fixed in release v0.7.0. Thanks for reporting and contributing a fix!