UntisBot/src/modules/scanForNotifications.ts

29 lines
942 B
TypeScript

import * as WebUntis from 'webuntis';
import main from '../index';
import Discord from 'discord.js';
const { bot, defaultEmbedColor, untis, db, sendEmbed } = main;
export async function run() {
let news: WebUntis.NewsWidget;
try {
let news = await untis.getNewsWidget(new Date(), true);
} catch(e) {
console.error(e);
return;
}
if (!news) return;
news.messagesOfDay.forEach(message => {
if (db.seenMessages.get(`${message.id}`)) return;
console.log('New message found: ' + message.text);
let embed = new Discord.MessageEmbed()
.setAuthor('Notification')
.setColor(defaultEmbedColor)
.setTitle(message.subject)
.setDescription(message.text.replace(/\<br\>/g, "\n"))
.setFooter(`Notification ID: ${message.id}`);
sendEmbed(embed);
db.seenMessages.set(`${message.id}`, true);
});
}