Pluto TV - no Wheel of Fortune or Jeopardy channels

Are there any alternatives to be able to receive the Pluto tv WOF and Jeopardy channesl?

1 Like

You can actually add any Pluto station yourself using a Custom Channel.

Make sure you set the Stream Format to "HLS" and the Source to "Text". If you already have one setup like this as I do, you can just add these stations to the list.

Now, any Pluto station can be created using a template like this:

#EXTINF:-1 channel-id="{ID YOU LIKE}" channel-number="{STATION NUMBER YOU LIKE OR EXCLUDE}" tvg-logo="https://images.pluto.tv/channels/{PLUTO STATION ID}/colorLogoPNG.png" tvc-guide-art="https://images.pluto.tv/channels/{PLUTO STATION ID}/featuredImage.jpg?fill=blur&fit=fill&fm=jpg&h=562&q=75&w=1000" tvc-guide-title="{STATION TITLE}" tvc-guide-description="{STATION DESCRIPTION}" group-title="{STATION CATEGORY}", tvc-guide-placeholders="1800", {STATION TITLE}
https://cfd-v4-service-channel-stitcher-use1-1.prd.pluto.tv/stitch/hls/channel/{PLUTO STATION ID}/master.m3u8?advertisingId=&appName=web&appVersion=unknown&appStoreUrl=&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId={YOUR UNIQUE DEVICE ID}&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&sid={YOUR UNIQUE SID}&userId=&serverSideAds=true

You get the {PLUTO STATION ID} directly from Pluto on their website, clicking on a station and copying this string:

image

As for {YOUR UNIQUE DEVICE ID} and {YOUR UNIQUE SID}, you can get those from downloading and opening the Pluto m3u you are using in a text editor. I'm using my own Docker, so mine came from that. nocords.xyz and freechannels.me are exactly the same, as well. Just know that they may "expire" after some time and you'll have to replace them with whatever is current. Sadly, it would take a different setup to automate this, but it is possible if someone is feeling a little froggy and wants to give it a whirl.

Thus, for Jeopardy and Wheel of Fortune, it would be this (minus my unique Device ID and SID):

#EXTINF:-1 channel-id="pluto-jeopardy" channel-number="89000" tvg-logo="https://images.pluto.tv/channels/625f04253e5f6c000708f3b7/colorLogoPNG.png" tvc-guide-art="https://images.pluto.tv/channels/625f04253e5f6c000708f3b7/featuredImage.jpg?fill=blur&fit=fill&fm=jpg&h=562&q=75&w=1000" tvc-guide-title="Jeopardy! hosted by Alex Trebek" tvc-guide-description="Jeopardy! hosted by Alex Trebek" group-title="Gameshows", tvc-guide-placeholders="1800", Jeopardy! hosted by Alex Trebek
https://cfd-v4-service-channel-stitcher-use1-1.prd.pluto.tv/stitch/hls/channel/625f04253e5f6c000708f3b7/master.m3u8?advertisingId=&appName=web&appVersion=unknown&appStoreUrl=&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId={REDACTED}&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&sid={REDACTED}&userId=&serverSideAds=true

#EXTINF:-1 channel-id="pluto-wheel-of-fortune" channel-number="89001" tvg-logo="https://images.pluto.tv/channels/625f054c5dfea70007244612/colorLogoPNG.png" tvc-guide-art="https://images.pluto.tv/channels/625f054c5dfea70007244612/featuredImage.jpg?fill=blur&fit=fill&fm=jpg&h=562&q=75&w=1000" tvc-guide-title="Wheel of Fortune" tvc-guide-description="Wheel of Fortune" group-title="Gameshows", tvc-guide-placeholders="1800", Wheel of Fortune
https://cfd-v4-service-channel-stitcher-use1-1.prd.pluto.tv/stitch/hls/channel/625f054c5dfea70007244612/master.m3u8?advertisingId=&appName=web&appVersion=unknown&appStoreUrl=&architecture=&buildVersion=&clientTime=0&deviceDNT=0&deviceId={REDACTED}&deviceMake=Chrome&deviceModel=web&deviceType=web&deviceVersion=unknown&includeExtendedEvents=false&sid={REDACTED}&userId=&serverSideAds=true

Notice that I put tvc-guide-placeholders="1800" in the code. This puts a 30 minute block (30 minutes * 60 seconds/minute = 1800 seconds) in the guide. Unfortunately, getting the XML guide data from Pluto is a different issue entirely. While you can map stations and there seems to be an available one for both Jeopardy and Wheel of Fortune, I found they were both fairly useless with no season/episode number information or anything like that.

image

However, if you'd still like to use them instead of the default placeholders, you are more than free to do so.

How to Map Stations

Either way, you'll end up with something like this:

It will work perfectly like normal and you won't be able to tell any differences compared to the prior method:

Enjoy!

2 Likes

Thanks, man, works great!

Thank you for the detailed instructions. I'm currently running docker (maddox for pluto). Is that where I'd find a unique device ID and unique SID?

Yes, here:

JP_ScreenShot_2024_01_17_09_39_54

Figured this would be helpful to see in this thread as well. Matt has the links back up on his site.

2 Likes

Yep, and if you are using one of the other methods and only want the missing stations, you can just pull those directly from that m3u, like this:

#EXTM3U x-tvg-url="https://i.mjh.nz/PlutoTV/us.xml"
#EXTINF:-1 channel-id="pluto-625f04253e5f6c000708f3b7" tvg-id="625f04253e5f6c000708f3b7" tvg-logo="https://images.pluto.tv/channels/625f04253e5f6c000708f3b7/colorLogoPNG.png" tvg-chno="2000" group-title="Game Shows" , Jeopardy! hosted by Alex Trebek
https://r.mjh.nz/PlutoTV/625f04253e5f6c000708f3b7-alt.m3u8

#EXTINF:-1 channel-id="pluto-625f054c5dfea70007244612" tvg-id="625f054c5dfea70007244612" tvg-logo="https://images.pluto.tv/channels/625f054c5dfea70007244612/colorLogoPNG.png" tvg-chno="2010" group-title="Game Shows" , Wheel of Fortune
https://r.mjh.nz/PlutoTV/625f054c5dfea70007244612-alt.m3u8

Then you can set the XML Guide Data for that to https://i.mjh.nz/PlutoTV/us.xml (or whatever you territory is). This way, you'll end up with the real stuff:

Still, I'm maintaining every possible way of having these stations just in case...

1 Like

This stopped working for me a few days ago, and try as I might I can't seem to get it back. I've updated my Device ID and SID several times to no avail.

Question, when looking through the Pluto m3u, I've noticed that the Device ID is the same on every channel but the SID is different on every channel, is that normal? If so, should I use a different SID for WOF and Jeopardy or the same one? Also, every day that I've downloaded the m3u I'm getting a different Device ID, is that to be expected? Are you having any trouble on your end or am I doing something wrong?

I'm getting my Device ID and SID from the nocords m3u even though WOF and Jeopardy are not available there, is that okay? The channels are not available on https://i.mjh.nz/PlutoTV/us.m3u8 either, only here: https://i.mjh.nz/PlutoTV/all.m3u8. But I can't get them to play from there, and your other method to pull them directly from the m3u (comment #27) doesn't work for me either.

Any ideas?

Is this a typo? Those two URLs the same.

1 Like

Yes, the first one where they are not available was supposed to be the us.m3u8 link.

Fixed.

Thanks for the heads up!

both wof and jeopardy are in https://i.mjh.nz/PlutoTV/us.m3u8

however, need to update the scraper as pluto is enforcing jwt with WOF and maybe more.

1 Like

would be very cool to be able to authorize with our own pluto logins...
then jwt / device id could actually be legitimately unique to the user.

fHDHR had done this to an extent, but unfortunately i think that project has fallen off.

https://github.com/fHDHR/fHDHR_plugin_origin_plutotv/blob/main/origin/init.py

Ah, that explains this:

image

It's not you; Pluto is doing something on their end that seems to be blocking us:

If you try plugging in a different random station, it'll work:

image

1 Like

try WOF now:
https://r.mjh.nz/PlutoTV/625f054c5dfea70007244612-alt.m3u8

1 Like

WOF is working for me. Jeopardy is not.

1 Like

I can confirm that WOF is working now.

Thanks, Matt!

i didnt add jeopardy. added now. should work in the next hour

not switching everything to v2 yet as its more resource intensive to generate.
just any channels that people let me know aren't working

1 Like

Thank you. jeopardy is working now!

Yikes that is a long JWT! I can see the annoyance in getting that encoded. Thanks for getting it working again!

1 Like

its more that a single token can only be used to stream 1 channel at once.
So, every channel needs its own token generated.
token only lasts 24 hours