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