rx3-to-mastodon/index.js

43 lines
1.3 KiB
JavaScript
Raw Normal View History

2019-12-17 11:06:56 +01:00
const moment = require('moment')
2019-12-01 17:56:13 +01:00
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) {
2019-12-17 11:06:56 +01:00
console.log('[ERR] GET LAST SONG:', moment().format(), err)
2019-12-01 17:56:13 +01:00
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) {
2019-12-17 11:06:56 +01:00
console.log('[ERR] SAVE SONG:', moment().format(), err)
2019-12-01 17:56:13 +01:00
return false
}
// On récupère la cover du morceau actuel
libs.findCover(currentSong, (err, coverUrl) => {
if (err) {
2019-12-17 11:06:56 +01:00
console.log('[ERR] FIND COVER:', moment().format(), err)
2019-12-01 17:56:13 +01:00
return false
}
// On publie sur Mastodon
libs.publishMessage(currentSong, coverUrl)
})
})
}
})
}
})
}, config.delay)