Pluto for Channels

Ahhh, G.I.G.O.
I'll make a copy of the Pluto epg json next time those two episodes air and post it here.

The two episode 2's are airing again this evening on the Mission Impossible channel
Pulled these timelines from the Pluto epg api cache.json file in the Pluto for Channels container
Appears the easiest way to differentiate the two episode 2's is by the episode.slug
Or possibly using the episode._id like a tms programID


timelines._id: "627aabd4b389bb0007b38a8b"
timelines.start: "2022-06-13T02:00:00.000Z"
timelines.stop: "2022-06-13T03:00:00.000Z"
timelines.title: "Mission: Impossible"
timelines.episode._id: "5fac23659d991c001a9d4ea2"
timelines.episode.number: 1
timelines.episode.season: 1
timelines.episode.description: "IMF team leader Dan Briggs assembles his team for the first time. His team includes a master of disguise, a femme fatale, an electronics whiz, an incredibly strong man, and a safecracker."
timelines.episode.clip: {"originalReleaseDate": "1966-09-17T00:00:00.000Z"}
timelines.episode.name: "Pilot"
timelines.episode.slug: "pilot-1966-1-1"

timelines._id: "627aabd4b389bb0007b38a8c"
timelines.start: "2022-06-13T03:00:00.000Z"
timelines.stop: "2022-06-13T04:00:00.000Z"
timelines.title: "Mission: Impossible"
timelines.episode._id: "5fac23669d991c001a9d4f5b"
timelines.episode.number: 2
timelines.episode.season: 1
timelines.episode.description: "The IMF team goes in as a circus team to rescue Anton Cardinal Vossek, who is being held in the impregnable Seravno Prison."
timelines.episode.clip: {"originalReleaseDate": "1966-10-08T00:00:00.000Z"}
timelines.episode.name: "Old Man Out pt. 1"
timelines.episode.slug: "old-man-out-pt-1-1966-1-201"

timelines._id: "627aabd4b389bb0007b38a8d"
timelines.start: "2022-06-13T04:00:00.000Z"
timelines.stop: "2022-06-13T05:00:00.000Z"
timelines.title: "Mission: Impossible"
timelines.episode._id: "5fac23659d991c001a9d4eed"
timelines.episode.number: 2
timelines.episode.season: 1
timelines.episode.description: "Rollin manages to avoid the guards and get to the roof but is arrested before he can rescue Vossek."
timelines.episode.clip: {"originalReleaseDate": "1966-10-15T00:00:00.000Z"}
timelines.episode.name: "Old Man Out pt. 2"
timelines.episode.slug: "old-man-out-pt-2-1966-1-202"

timelines._id: "627aabd4b389bb0007b38a8e"
timelines.start: "2022-06-13T05:00:00.000Z"
timelines.stop: "2022-06-13T06:00:00.000Z"
timelines.title: "Mission: Impossible"
timelines.episode._id: "5fac23709d991c001a9d510d"
timelines.episode.number: 3
timelines.episode.season: 1
timelines.episode.description: "The IMF must undermine \"the Butcher of the Balkans,\" Janos Karq, by having his head of security capture an agent, Sparrow, who will then incriminate Karq."
timelines.episode.clip: {"originalReleaseDate": "1966-09-24T00:00:00.000Z"}
timelines.episode.name: "Memory"
timelines.episode.slug: "memory-1966-1-3"

@maddox
Screenshot 2022-07-07 at 11-12-03 Pluto for Channels

I switched to the non-container version, but I did want to see what changed. That url still shows 1.2.10 here for some reason?

There was a commit and version bump to 1.2.11 a month ago Commits · maddox/pluto-for-channels · GitHub but it wasn't marked as a new "release" version. Releases · maddox/pluto-for-channels · GitHub

Yeah, that bit seems to be broken but the container still seems to be working as it should. I use Watchtower to update my containers so I don't use this screen.

Screen Shot 2022-07-07 at 3.09.32 PM

Looks like it's fixed now Releases · maddox/pluto-for-channels · GitHub

2 Likes

In the couple of days, the Pluto "non docker" has stopped working for me. When I try to launch a channel I get the playback error message attached. Had this affected anyone else and what do I need to do to fix

Thanks

Does the Pluto app work?

That looks like a network transport problem between the ChannelsDVR and the Pluto server.. notice what looks like an error message: "TLS Handshake" at the end. Could be a local or network hiccup. Don't think it's related to the "non-docker" source.

thanks

to answer Tmm1, i am able to acess pluto directly thru an app

to answer HanklLloydright. i will reboot the server, any other suggestions

thanks for your help

From what I understand, content doesn't actually flow through the docker container or the non docker solution. Both solutions simply provide guide data and source information (where the content can be accessed). If either solution failed, you'd end up with stale data. It wouldn't produce an error like you show. I think @HankLloydRight is right, but if you have specific channels that are not working and logs that show what is going on, it might be something that can be tracked down.

I went to the URL in the nocords.xyz pluto playlist file for the Julia channel:

https://service-stitcher.clusters.pluto.tv/stitch/hls/channel/606b5ee42b54a100079dd593/master.m3u8?advertisingId=&appName=web&appVersion=unknown&appStoreUrl=&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&userId=&serverSideAds=true

And it returned a master.m3u8 file (text below). So I think that link is working, I still suspect it's a local network problem.

#EXTM3U
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="English",DEFAULT=NO,FORCED=NO,URI="subtitle/en/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web",LANGUAGE="en"
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=997452,SUBTITLES="subs"
997452/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=1539795,SUBTITLES="subs"
1539795/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=2142297,SUBTITLES="subs"
2142297/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=3063648,SUBTITLES="subs"
3063648/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web
#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=572723,SUBTITLES="subs"
572723/playlist.m3u8?terminate=false&embedPartner=&serverSideAds=true&paln=&includeExtendedEvents=false&architecture=&deviceId=1a7762ea-ffbf-11ec-a3c4-80b05c6203e3&deviceVersion=unknown&appVersion=unknown&deviceType=web&deviceMake=Chrome&sid=6010eeed-5955-4c5b-9600-6a7a484c25eb&advertisingId=&deviceLat=0&deviceLon=0&deviceDNT=0&deviceModel=web&userId=&appName=web

Fixed it

I run my channels qnap server behind a VPN for security purposes.

I stopped and then restarted the VPN. Its working again

Both suggestions were pertinent. The fact that I could access Pluto directly and the "tls" observation by hanklloydright pointed to a https / certificate issue localy

Thanks to all. Great community!

2 Likes

Just curious what the expected amount of guide data should be. Should it be more than 12 hours of guide info? Want to set my expectations on what I should be seeing because right now I'm getting 12 hours and not the 2 weeks like I'm getting on TVE, OTA and Frndly.

1 Like

That sounds about right: the Pluto guide data is limited in terms of future programming. If you try the Pluto app you’ll also see their guide doesn’t go too far ahead.

1 Like

Yeah, 12 hours is right. I believe the recommended XMLTV guide refresh is Every 3 Hours (the data on the backend only updates every 3 hours). Same goes for the non-docker solution.

3 Likes

Thank you @Absenm and @blackngold75 for the confirmation! Thought I was doing something wrong for a bit there.

1 Like

Interesting article about Pluto TV:

I will say, being able to integrate all of this dynamic content alongside my other “regular” TV channels, and being able to surf and search and record any of it for later viewing, via the magic that is Channels DVR, has been awesome. I feel like not enough people know about it.

3 Likes

Just came to post a shout out, this is awesome!! We only have OTA channels (67 I think) and this added 365 channels :slight_smile:

Thanks for all the great work!

2 Likes