1.4 KiB
Using radiomanifest is pretty simple. In an ideal usecase, you can easily do this:
const radiomanifest = require('radiomanifest')
const radio = radiomanifest.get('http://myradio.com/')
console.log(radio.getName())
Now we have radio
, a {@link Radio} object, which can be seen as the "center" of our data. From here, we can
get more data. How about this?
const show = radio.getShowAtTime()
if (show !== null) {
console.log(show.getName())
} else {
console.log("Nothing special going on right now, sorry")
}
Streaming
The first thing we could want to do is just to play the radio.
var urls = await radio.pickURLs()
console.log(urls)
and here we go! This is a list of URLs that the radio is indicating to us as their preferred ones. Why not a single one? Well, this could include different servers, so that the client itself can act as load-balancers.
Shows
Another nice thing you might want to do, is to display a list of all the shows that the radio is broadcasting. Our {@link Radio} keeps track of those, and for each show we can have useful metadata. See {@link RadioShow} for more details.
var shows = radio.getShows()
console.log(shows.map(s => s.getName()))
Conclusions
I hope this tutorial helped you get your feet wet. Hopefully, using radiomanifest you'd be able to create great webapps that work on any webradio (well, any webradio that supports radiomanifest, at least).