Search code examples
javascriptnode.jsinternet-radio

How can I get the raw stream URL of an iheartradio station


I am trying to make a discord bot to stream the iheart80s at 103.7 radio station, and so far I can not find a direct stream URL to give my discord bot.

I have tried to get the JSON via Python but that just returns http.client.BadStatusLine: ICY 200 OK

I am using discord.js. And here is the function I am trying to feed the stream URL into:

function(CmdArg,CmdMsg){
  const voiceChannel = CmdMsg.member.voiceChannel;
  voiceChannel.join().then(connection => resolve(connection)).catch(err =>reject(err));
  const stream = () => {
           return request.get({
               uri: CmdArg,
               followAllRedirects: true,
               encoding: null
           });
       }


    console.log(stream);
    CmdMsg.guild.voiceConnection.playStream(stream, { passes: token.passes    });
}

Solution

  • You can use mitmproxy on a computer to inspect the traffic for the app. I was able to identify http://c10.prod.playlists.ihrhls.com/4342/playlist.m3u8 as the stream source of that radio station. Of course, the url may change over time, so ymmv.