Describe the bug
This happens since HA stable docker image version 2023.8.2
I created the automation (based on this official example) that is marking clips recorded from motion detection as seen whenever this automation is executed and new motion clips were recorded:
2023-08-29 11:18:18.222 DEBUG (SyncWorker_44) [blinkpy.camera] Found 3 recent clips for entrada
2023-08-29 11:18:18.223 DEBUG (SyncWorker_44) [blinkpy.camera] Most recent clip for entrada was created at 2023-08-29T09:11:44+00:00: https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4
2023-08-29 11:18:18.224 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/thumbnail/thumbnail.jpg?ts=1693300686&ext=
2023-08-29 11:18:18.369 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4
It seems this GET is what is marking my video as seen:
2023-08-29 11:18:18.369 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4
Let's check the code, it seems HA version 2023.8.2 includes blinkpy version 0.21.0 that includes this PR: Add get_videos_metadata function (@rhhayward #685)
Hmmm, could it be that this PR (introduced in blinkpy-0.21.0 that comes with HA 2023.8.2) raises this issue as a side effect?
Tracing back from said log line we get to:
Hope this helps.
To Reproduce
Steps to reproduce the behaviour:
- Create automation based on the official example to snap pictures and save them locally:
alias: actualizar captura portero
description: ""
trigger:
- platform: time_pattern
hours: "*"
minutes: /5
seconds: "0"
condition: []
action:
- service: blink.trigger_camera
data: {}
target:
device_id: bd4a5bf0740aad568d894cfb7e1d0c80
- delay:
hours: 0
minutes: 0
seconds: 5
milliseconds: 0
- service: blink.blink_update
data: {}
- service: camera.snapshot
data:
filename: /tmp/portero.jpg
target:
device_id: bd4a5bf0740aad568d894cfb7e1d0c80
mode: single
- wait for automation to capture photos
- generate some motion detection clips
- see how new motion detection clips are already marked as seen when you open blink app to check on new motion detection clips.
Expected behavior
This PR added the possibility to retrieve clips' metadata, but since its merge (blinkpy version 0.21.0) motion detection clips are being marked as read. It seems that it downloads the video, marking it as seen on blink servers, only to get its metadata. It shouldn't mark motion clips as already seen if they weren't downloaded by the user whatsoever.
Home Assistant version (if applicable): since 2023.8.2
blinkpy version (not needed if filling out Home Assistant version): since 0.21.0
Log Output/Additional Information
If using home-assistant, please paste the output of the log showing your error below. If not, please include any additional useful information.
2023-08-29 11:18:18.222 DEBUG (SyncWorker_44) [blinkpy.camera] Found 3 recent clips for entrada
2023-08-29 11:18:18.223 DEBUG (SyncWorker_44) [blinkpy.camera] Most recent clip for entrada was created at 2023-08-29T09:11:44+00:00: https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4
2023-08-29 11:18:18.224 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/thumbnail/thumbnail.jpg?ts=1693300686&ext=
2023-08-29 11:18:18.369 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4
Describe the bug
This happens since HA stable docker image version
2023.8.2I created the automation (based on this official example) that is marking clips recorded from motion detection as seen whenever this automation is executed and new motion clips were recorded:
It seems this
GETis what is marking my video as seen:2023-08-29 11:18:18.369 DEBUG (SyncWorker_44) [blinkpy.api] Making GET request to https://rest-e002.immedia-semi.com/api/v3/media/accounts/XXXXXX/networks/369464/lotus/86269/pir/3654965765.mp4Let's check the code, it seems HA version
2023.8.2includesblinkpyversion0.21.0that includes this PR: Add get_videos_metadata function (@rhhayward #685)Hmmm, could it be that this PR (introduced in
blinkpy-0.21.0that comes with HA2023.8.2) raises this issue as a side effect?Tracing back from said log line we get to:
http_getin fileapi.pythat is called fromdo_http_getin fileblinkpy.pythat is called from_parse_downloaded_itemsalso in fileblinkpy.pythat was modified in the PR referenced above and is marked with a warning:Added line #L415 was not covered by testsHope this helps.
To Reproduce
Steps to reproduce the behaviour:
Expected behavior
This PR added the possibility to retrieve clips' metadata, but since its merge (
blinkpyversion0.21.0) motion detection clips are being marked as read. It seems that it downloads the video, marking it as seen on blink servers, only to get its metadata. It shouldn't mark motion clips as already seen if they weren't downloaded by the user whatsoever.Home Assistant version (if applicable): since
2023.8.2blinkpyversion (not needed if filling out Home Assistant version): since0.21.0Log Output/Additional Information
If using home-assistant, please paste the output of the log showing your error below. If not, please include any additional useful information.