Support for Livestreaming via local TCP proxy server
Description:
Support livestreaming based on the work described in https://github.com/fronzbot/blinkpy/issues/343:
- https://github.com/jakecrowley/blink-immis-proxy
- https://github.com/amattu2/blink-liveview-middleware
Related issue (if applicable): fixes #343
Checklist:
- [x] Local tests with
toxrun successfully PR cannot be meged unless tests pass - [x] Changes tested locally to ensure platform still works as intended
- [ ] Tests added to verify new code works
For now this PR just serves as a status tracker for the example shown in https://github.com/fronzbot/blinkpy/issues/343#issuecomment-2798053725.
@fronzbot hey, do you think this could be merged without tests for the livestreaming part or do you want a mock for that?
My preference is for tests to be included for new methods/classes. Far too often something has changed on Blink's end resulting in a library change that borks some code that we weren't unittesting. Better to get in front of that IMO.
Is this ready for review? I see you changed the title but it's still marked as a draft.
It is missing tests right now, but I will try to add some for the new API. Not sure about the livestream itself though.
Hi @mback2k - this has been open for awhile now and still marked as a Draft. Is this ready for review yet?
Hi @mback2k - this has been open for awhile now and still marked as a Draft. Is this ready for review yet?
I am sorry, I was sick recently. I will try to get back to this soon, but for now tests are still missing and the stream connection is also not fully reliable yet, I guess because not all parameters in the authentication frames ware correctly decoded yet.
@fronzbot I have got a stable MPEG-TS streaming implementation now and also tests for the blinkpy API. I am still working on tests for the internals of the BlinkLiveStream class, but I spotted that the coverage CI/CD job fails due to some token issue: https://github.com/fronzbot/blinkpy/actions/runs/16103190750/job/45435025323?pr=1051