23 lines
870 B
TypeScript
23 lines
870 B
TypeScript
import * as WebUntis from 'webuntis';
|
|
import main from '../index';
|
|
import User from '../class/User';
|
|
import NotificationMessage from '../class/NotificationMessage';
|
|
const { db, sendEmbed } = main;
|
|
|
|
export async function run(untis: WebUntis.default, user: User) {
|
|
let news = await untis.getNewsWidget(new Date(), true);
|
|
if (!news) return;
|
|
|
|
news.messagesOfDay.forEach(message => {
|
|
if (db.seenMessages.get(user.ID, `${message.id}`)) return;
|
|
console.log('New message found: ' + message.text);
|
|
let notif = new NotificationMessage()
|
|
.setTitle('Notification')
|
|
.setTitle(message.subject)
|
|
.setBody(message.text.replace(/\<br\>/g, "\n"))
|
|
.setFooter(`Notification ID: ${message.id}`);
|
|
|
|
sendEmbed(notif, user);
|
|
db.seenMessages.set(user.ID, true, `${message.id}`);
|
|
});
|
|
} |