Fetch announcement channel at server start

This commit is contained in:
2023-06-12 20:27:54 +02:00
parent 40d220ed7b
commit c0369fcb49
3 changed files with 30 additions and 16 deletions

View File

@ -1,7 +1,7 @@
import { GuildScheduledEvent, Message, TextChannel } from "discord.js";
import { ScheduledTask, schedule } from "node-cron";
import { v4 as uuid } from "uuid";
import { jellyfinHandler } from "../..";
import { client, jellyfinHandler } from "../..";
import { closePoll } from "../commands/closepoll";
import { config } from "../configuration";
import { logger } from "../logger";
@ -28,8 +28,8 @@ export async function execute(event: GuildScheduledEvent) {
logger.info(`Got ${movies.length} random movies. Creating voting`, { guildId: event.guildId, requestId })
logger.debug(`Movies: ${JSON.stringify(movies.map(movie => movie.name))}`, { guildId: event.guildId, requestId })
const channel: TextChannel = <TextChannel>(await event.guild?.channels.fetch())?.filter(channel => channel!.id === config.bot.announcement_channel_id).map((value, _) => value)[0] //todo: needs to be done less sketchy
logger.debug(`Found channel ${JSON.stringify(channel, null, 2)}`, { guildId: event.guildId, requestId })
const announcementChannel: TextChannel = client.getAnnouncementChannelForGuild(event.guildId)
logger.debug(`Found channel ${JSON.stringify(announcementChannel, null, 2)}`, { guildId: event.guildId, requestId })
let message = "[Abstimmung]\nEs gibt eine neue Abstimmung für die nächste Watchparty! Stimme hierunter für den nächsten Film ab!\n"
@ -37,7 +37,7 @@ export async function execute(event: GuildScheduledEvent) {
message = message.concat(Emotes[i]).concat(": ").concat(movies[i].name!).concat("\n")
}
const sentMessage: Message<true> = await (await channel.fetch()).send(message)
const sentMessage: Message<true> = await (await announcementChannel.fetch()).send(message)
for (let i = 0; i < movies.length; i++) {
sentMessage.react(Emotes[i])