mirror of
https://github.com/Free-TV/IPTV.git
synced 2026-09-25 03:21:20 +02:00
Restore official geo-blocked RAI streams alongside the CloudFront mirror
Fixes #1179. PR #1166 moved Rai 1, Rai 2, Rai 3, Rai Premium, Rai Storia and Rai Scuola from the official mediapolis.rai.it relinker to a third-party CloudFront mirror, because the relinker had become Italy-IP-gated and was failing for everyone else (including the CI checker). That mirror works for casual viewing, but as #1179 reports, it goes black during broadcasts where RAI only holds domestic rights (e.g. EuroVolley) - the official stream keeps working correctly for Italian-IP viewers through exactly those broadcasts, because it's RAI's own domestic feed, not a re-mirror of it. Rather than trade one gap for the other, add the official mediapolis URL back as a second, Ⓖ-marked entry for each of the six channels - the same "CDN mirror as the general-access entry, official relinker as the geo-gated alternative" split this file already uses for every other Rai channel (Rai 4, Rai 5, Rai Movie, Rai Sport, etc., all still on mediapolis.rai.it + Ⓖ). Viewers with an Italian IP get the more correct source; everyone else keeps the mirror that already works for them. Also fixes a real gap in check_channels.py found while verifying this: mediapolis.rai.it's relinker doesn't refuse an out-of-territory request with an HTTP error - it answers 200 with a real MP4, but the file is always the same "video_no_available.mp4" decoy regardless of which channel was asked for. The checker had no way to tell that apart from a working stream failing its playlist-header check, so every mediapolis.rai.it entry (the pre-existing Rai 4/5/Movie/Sport ones included) was scored `dead` instead of `blocked`, right down to the newly-fixed pr_check.yml workflow that now hard-fails a PR over a `dead`-scored touched channel. Added a check for this specific decoy redirect target, classified as `blocked` like any other geo-refusal. Regenerated playlist.m3u8 and playlists/playlist_italy.m3u8 via make_playlist.py. pylint check_channels.py: 10.00/10. Co-Authored-By: Claude Sonnet 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
d9bb826b0b
commit
72b7c7e076
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user