nodejs module for radio-browser API (http://www.radio-browser.info/webservice)
npm install radio-browserNodejs module for Radio-browser API
``bash`
npm install radio-browser
Every method returns a promise so you have to use then and catch or async and await.
`js
const RadioBrowser = require('radio-browser')
let filter = {
limit: 5, // list max 5 items
by: 'tag', // search in tag
searchterm: 'jazz' // term in tag
}
RadioBrowser.getStations(filter)
.then(data => console.log(data))
.catch(error => console.error(error))
`
* addStation( Add radio stationclickStation(
* Station click countergetCategory(
* Get a list of codecs, countries, countrycodes, languages, states, tagsgetChecks([stationuuid][, seconds])
* List of station check resultsgetChecksteps(
* List of station check stepsgetClicks([stationuuid][, seconds])
* List of station clicksgetRandomHost()
* Convenience function to get a random host without api request.getServerConfig()
* Server configgetServerMirrors()
* Server mirrorsgetServerStats()
* Server statsgetStations([filter])
* List of radio stations, Stations by clicks, Url, vote, recent click, recent changed, deleted, need improvements, brokensearchStations([params])
* Advanced station searchvoteStation(
* Vote for station
* filter_by_types list of types using in getStations({by: {type}, ...})category_types
* list of categories using in getCategory({type} ...)service_url
* get or set the api-url. Default is null to get a random API host at first request.
Get Server Stats from a random API-Host by using async/await
`js
// file: examples/server-stats.js
const RadioBrowser = require('radio-browser')
const start = async () => {
try {
let data = await RadioBrowser.getServerStats()
console.log(API Server: ${RadioBrowser.service_url})
console.log('stats', data)
}
catch (e) {
console.error(e)
}
}
start()
`
`bash`
// example output
API Server: https://de1.api.radio-browser.info/
stats { supported_version: 1,
software_version: '0.6.14',
status: 'OK',
stations: 25603,
stations_broken: 767,
tags: 6757,
clicks_last_hour: 2707,
clicks_last_day: 59547,
languages: 374,
countries: 246 }
Get the 5 top voted station
`js`
let filter = {
by: 'topvote', // stations by topvote
limit: 5 // top 5 stations
}
RadioBrowser.getStations(filter)
.then(data => console.log(data))
.catch(err => console.error(err))
data` looks like this