This is a Batch file which performs the same function as the .HTM file in my post of yesterday (above).
Code:
@ECHO OFF
:: *** MediaSelector ID ***
:: Final 8 Characters
SET ID=b01by95r
:: Source -
:: http://www.bbc.co.uk/radio/aod/availability/radio4extra.xml
:: *** Create a HTM file ***
ECHO ^<html^> >> %temp%\temp.htm
ECHO ^<head^> >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO ^<title^>Parse XML File^</title^> >> %temp%\temp.htm
ECHO.
ECHO ^<!-- Downloading from a BBC iPlayer page --^> >> %temp%\temp.htm
ECHO ^<!-- This parses the elements in a MediaSelector xml page --^> >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO ^<SCRIPT^> >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO // Target XML file's URL address [MediaSelector URL] >> %temp%\temp.htm
ECHO var url = "http://www.bbc.co.uk/mediaselector/4/mtis/stream/%ID%" ; >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO var xmlDoc; >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO window.open('','_self'); >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO function loadxml() >> %temp%\temp.htm
ECHO { >> %temp%\temp.htm
ECHO xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); >> %temp%\temp.htm
ECHO xmlDoc.async = false; >> %temp%\temp.htm
ECHO xmlDoc.onreadystatechange = readXML; >> %temp%\temp.htm
ECHO xmlDoc.load(url); >> %temp%\temp.htm
ECHO } >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO function readXML() >> %temp%\temp.htm
ECHO { >> %temp%\temp.htm
ECHO if(xmlDoc.readyState == 4) { >> %temp%\temp.htm
ECHO // This function is called on statechange >> %temp%\temp.htm
ECHO // When the state reaches 4 this function reads the xml document >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO // Create a Text File >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO var fso = new ActiveXObject("Scripting.FileSystemObject"); >> %temp%\temp.htm
ECHO var fh = fso.CreateTextFile("C:\\Users\\dg\\AppData\\Local\\Temp\\MediaSelector.bat", true); >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO for(i=0; i^<xmlDoc.getElementsByTagName("media").length; i++) { >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO bitrate = xmlDoc.getElementsByTagName("media")[i].attributes.getNamedItem("bitrate").nodeValue ; >> %temp%\temp.htm
ECHO encoding = xmlDoc.getElementsByTagName("media")[i].attributes.getNamedItem("encoding").nodeValue ; >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO if ( bitrate==128 ^&^& encoding=="aac" ){ >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO fh.WriteLine( '@echo off' ); >> %temp%\temp.htm
ECHO fh.WriteLine( ':: Media tag #' + [i] ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO fh.WriteLine( 'SET rtmpdump=C:\\Data\\General\\iPlayer\\- Recording iPlayer\\rtmpdump.exe' ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO fh.WriteLine( 'SET server=' + >> %temp%\temp.htm
ECHO xmlDoc.getElementsByTagName("media")[i].firstChild.attributes.getNamedItem("server").nodeValue ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO fh.WriteLine( 'SET application=' + >> %temp%\temp.htm
ECHO xmlDoc.getElementsByTagName("media")[i].firstChild.attributes.getNamedItem("application").nodeValue ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO fh.WriteLine( 'SET identifier=' + >> %temp%\temp.htm
ECHO xmlDoc.getElementsByTagName("media")[i].firstChild.attributes.getNamedItem("identifier").nodeValue ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO var str1=xmlDoc.getElementsByTagName("media")[i].firstChild.attributes.getNamedItem("authString").nodeValue ; >> %temp%\temp.htm
ECHO fh.WriteLine( 'SET authString=' + str1.replace(/^&/g,"^&") ); >> %temp%\temp.htm
ECHO fh.WriteLine( '' ); >> %temp%\temp.htm
ECHO var str2=xmlDoc.getElementsByTagName("media")[i].firstChild.attributes.getNamedItem("identifier").nodeValue ; >> %temp%\temp.htm
ECHO fh.WriteLine( '"%%rtmpdump%%" --protocol 0 --host "%%server%%" -a "%%application%%?%%authString%%" ' + >> %temp%\temp.htm
ECHO '-y "%%identifier%%" -o ' + str2.slice(28,999) ); >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO } >> %temp%\temp.htm
ECHO } >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO fh.Close(); >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO } >> %temp%\temp.htm
ECHO } >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO ^</SCRIPT^> >> %temp%\temp.htm
ECHO. >> %temp%\temp.htm
ECHO ^</head^> >> %temp%\temp.htm
ECHO ^<body onload="loadxml();window.close()"^> ^</body^> >> %temp%\temp.htm
ECHO ^</html^> >> %temp%\temp.htm
:: *** Run HTM file in Internet Explorer ***
"C:\Program Files (x86)\Internet Explorer\IEXPLORE.EXE" %temp%\temp.htm
:: *** Run MediaSelector.bat ***
CALL %temp%\MediaSelector.bat