So you want the available bandwidth to be monitored in “real time”, but you don’t want constant speed tests to happen. Then you mention a script doing a speed test.
You’re gonna have to choose: Either you run some kind of Speedtest on a regular basis, which will give you somewhat “real-time” results, or you don’t do it, and you don’t have real-time data as a result.
A very quick google search brought up this power shell script, that even formats the results for PRTG:
But if he wanted that historical data for, say, making sure an ISP delivers promised bandwidth, then unless he’s constantly maxing out the connection, the usage graph is going to be fairly useless.