42 lines
1.2 KiB
JavaScript
42 lines
1.2 KiB
JavaScript
const libs = require('./libs')
|
|
|
|
const config = require('./config')
|
|
|
|
setInterval(() => {
|
|
// Récupération du morceau en cours de diffusion
|
|
libs.getStream((error, currentSong) => {
|
|
if (!error) {
|
|
// On récupére en base le précédent morceau joué
|
|
libs.getLastSong((err, last) => {
|
|
if (err) {
|
|
console.log(err)
|
|
return false
|
|
}
|
|
|
|
// Le morceau actuel est différent du précedent morceau
|
|
if (last.length === 0 ||
|
|
(last[0] !== undefined && last[0].id !== currentSong.id)
|
|
) {
|
|
// On sauvegarde en base le morceau en cours de diffusion
|
|
libs.saveSong(currentSong, (err, savedSond) => {
|
|
if (err) {
|
|
console.log('ERR:', err)
|
|
return false
|
|
}
|
|
|
|
// On récupère la cover du morceau actuel
|
|
libs.findCover(currentSong, (err, coverUrl) => {
|
|
if (err) {
|
|
console.log('ERR:', err)
|
|
return false
|
|
}
|
|
|
|
// On publie sur Mastodon
|
|
libs.publishMessage(currentSong, coverUrl)
|
|
})
|
|
})
|
|
}
|
|
})
|
|
}
|
|
})
|
|
}, config.delay)
|