From 84c90328918e6eb44d100ad3d8998d7a84cc4b60 Mon Sep 17 00:00:00 2001 From: DeSqBlocki Date: Sat, 15 Feb 2025 17:09:58 +0100 Subject: [PATCH] added a message to the embed --- events/Twitch/Online.js | 75 +++++++++++++++++------------------------ 1 file changed, 31 insertions(+), 44 deletions(-) diff --git a/events/Twitch/Online.js b/events/Twitch/Online.js index fdae8b0..db963a1 100644 --- a/events/Twitch/Online.js +++ b/events/Twitch/Online.js @@ -7,15 +7,15 @@ module.exports = { once: false, async execute(stream) { const db = mClient.db('guilds') - const res = await db.listCollections().toArray() + const guilds = await db.listCollections().toArray() const streamer = stream.broadcaster_user_login console.log(`${streamer} went live!`) - res.forEach(async (guildColl) => { - const guildId = guildColl.name + guilds.forEach(async (guildData) => { + const guildId = guildData.name const coll = db.collection(guildId) const res = await coll.findOne({ event: 'Twitch/Online' }) - if(!res){ + if (!res) { return // ignore if no live channel set } const guild = dClient.guilds.cache.get(guildId) @@ -23,47 +23,34 @@ module.exports = { try { const streamData = await getStreams(streamer) - - if (streamData?.data[0]) { - let liveData = { - streamer: streamData.data[0].user_name, - game: streamData.data[0].game_name, - title: streamData.data[0].title, - thumbnail: streamData.data[0].thumbnail_url.replace('-{width}x{height}', ''), - tags: streamData.data[0].tags - } - - const embed = new EmbedBuilder() - .setTitle(`${escapeMarkdown(liveData.streamer)} is live!`) - .setDescription(`They're playing ${liveData.game}`) - .addFields( - { name: '\u200B', value: `${liveData.title}` }) - .setImage(liveData.thumbnail) - .setURL(`https://twitch.tv/${streamer}`) - let footer = "" - liveData.tags.forEach((tag) => { - footer += `#${tag} ` - }) - embed.setFooter({ - text: footer - }) - - return channel.send({ - embeds: [embed], - flags: MessageFlags.Ephemeral - }).then(message => setTimeout(() => { - message.deleteReply() - }, 60000)) - } else { - const embed = new EmbedBuilder() - .setTitle(`${escapeMarkdown(streamer)} is currently offline!`) - .setImage('https://media.discordapp.net/attachments/1061304429724319794/1319800268770250883/no-signal-tv-descendant-network-rainbow-bars-abstract-background-vector.jpg?ex=67674748&is=6765f5c8&hm=d539944a67fccec461b0183a9f0300e19ac485deda7b23090165088567f2c84f&=&format=webp') - .setURL(`https://twitch.tv/${streamer}`) - return channel.send({ - embeds: [embed], - flags: MessageFlags.Ephemeral - }) + let liveData = { + streamer: streamData.data[0].user_name, + game: streamData.data[0].game_name, + title: streamData.data[0].title, + thumbnail: streamData.data[0].thumbnail_url.replace('-{width}x{height}', ''), + tags: streamData.data[0].tags } + + const embed = new EmbedBuilder() + .setTitle(`${escapeMarkdown(liveData.streamer)} is live!`) + .setDescription(`They're playing ${liveData.game}`) + .addFields( + { name: '\u200B', value: `${liveData.title}` }) + .setImage(liveData.thumbnail) + .setURL(`https://twitch.tv/${streamer}`) + let footer = "" + liveData.tags.forEach((tag) => { + footer += `#${tag} ` + }) + embed.setFooter({ + text: footer + }) + + return channel.send({ + content: `@everyone ${escapeMarkdown(streamer)} is live`, + embeds: [embed] + }) + } catch (error) { return console.error }