Repository navigation
Fix login and playback for the current DPG API - #64
Open
snauwaertc wants to merge 2 commits into
Open
snauwaertc wants to merge 2 commits into
snauwaertc wants to merge 2 commits into
Conversation
- Inloggen: OAuth id_token als Bearer, /STREAMZ/id-token i.p.v. /tokens, verversen via refresh_token (scope offline_access) - Headers app-versie 28 (Android TV); de oude versie 15 gaf 426 Upgrade Required - Profielen: type MAIN/KIDS i.p.v. mainProfile/kidsProfile - Storefront 'movies' heet nu 'films' - Teasers hebben enkel nog detailId: nieuwe Teaser-route, detail3 bepaalt film of serie - Films spelen af via primaryButton.playableId - Video-info via videoplayer-service.dpgmedia.net/play-config, Popcorn SDK 8 - Verder kijken: rij-id dynamisch uit de hoofdpagina
Author
|
@michaelarnauts please review |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The add-on stopped working: logging in fails with
426 Client Error: Upgrade Requiredonhttps://lfvp-api.dpgmedia.net/STREAMZ/tokens. Fixes #61. DPG Media changed the API in the same way as for VTM GO (see add-ons/plugin.video.vtm.go#405 and #407). This PR ports the equivalent changes to Streamz.Changes
Authentication
/STREAMZ/tokensexchange is gone. After the device-code login, the id token is registered withPOST /STREAMZ/id-tokenand used asAuthorization: Bearer. The OAuth access token fromlogin.streamz.beis encrypted (not a JWT) and is refused by the API gateway; the signed id token is accepted.refresh_tokengrant onlogin.streamz.be(scopeopenid offline_access).mainProfile/kidsProfilewere replaced bytype(MAIN/KIDS).Catalog
moviesis nowfilms.detailId, without the content type. They are shown as a newTeaseritem that opens/catalog/detail/<id>; the detail page (detail3, which replacesdetail) tells whether it is a movie or a program. Cached details are shown as a Movie/Program directly.seasonPicker.primaryButton.playableId, which differs from the detail id.playableIdand are shown as playable episodes. The row id is looked up from the main storefront instead of a hardcoded id.SWIMLANE_TOP10andCONTINUE_WATCHINGrows are listed as categories.Playback
https://videoplayer-service.dpgmedia.net/play-config/<id>withPopcorn-SDK-Version: 8anddeviceType: android-tv.Testing
Tested on LibreELEC 12.2.1 (Kodi 21.2, aarch64) with a STREAMZ_BASIC account:
Not tested: programs with multiple seasons, "Continue watching" with content, subtitles, token refresh after 24 hours, and the unit tests (they need the
ADDON_TOKENsecret).test_get_configwill still fail:lfvp-android-api.dpgmedia.netno longer resolves. Pylint is clean except forR0917 too-many-positional-arguments, which also fails on master with current pylint.🤖 Generated with Claude Code