const { useQueue } = require('discord-player') const appDir = require('path').dirname(require.main.filename) const generate = require(appDir + '/utilsPlayer/generate.js') const getUptime = require(appDir + '/utils/getUptime.js') module.exports = replay = async (client) => { //client.guilds.cache.each(async guild => { //const Data = sequelize.define(guild.id, { // playerChannelId: DataTypes.STRING //}) //await sequelize.sync({ force: true }) //if (!Data.playerChannelId) { // clearInterval(interval) // console.log(`\u001b[1;31m Aucun channel inscrit dans la base, veuillez utiliser la commande \`/setchannel\` !`) // return 'clear' //} //let channel = client.channels.cache.get(Data.playerChannelId) let guild = client.guilds.cache.get(process.env.DISCORD_GUILD_ID) if (!guild) { clearInterval(interval) console.log(`\u001b[1;31m Error: Aucun serveur trouvé avec l'id \`${process.env.DISCORD_GUILD_ID}\`, veuillez utiliser la commande \`/setchannel\` !`) return 'clear' } // Keep track of the music progress if the bot reboots let queue = useQueue(guild.id) if (queue) if (queue.isPlaying()) writeEnv('DISCORD_MUSIC_CURRENT_PROGRESS', queue.node.playbackTime) let channel = client.channels.cache.get(process.env.DISCORD_PLAYERCHANNEL_ID) if (!channel) { clearInterval(interval) console.log(`\u001b[1;31m Error: Aucun channel trouvé avec l'id \`${process.env.DISCORD_PLAYERCHANNEL_ID}\`, veuillez utiliser la commande \`/setchannel\` !`) return 'clear' } let { embed, components } = await generate(guild) if (components) embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)} \n ${embed.data.footer.text}` }) else embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)}` }) let messages = await channel.messages.fetch() let botMessage = messages.find(msg => msg.author.id === client.user.id) if (!botMessage || (!components && botMessage.components.length > 0)) { await channel.bulkDelete(messages) return channel.send({ embeds: [embed] }) } else return botMessage.edit({ embeds: [embed], components }) }