Merge branch 'dev'

# Conflicts:
#	server/notification.js
This commit is contained in:
LouisLam 2021-07-13 11:42:51 +08:00
commit 3e4a98b6bc
2 changed files with 70 additions and 9 deletions

View file

@ -92,6 +92,24 @@ class Notification {
console.log(error)
return false;
}
return await Notification.discord(notification, msg)
} else if (notification.type === "signal") {
try {
let data = {
"message": msg,
"number": notification.signalNumber,
"recipients": notification.signalRecipients.replace(/\s/g, '').split(",")
};
let config = {};
let res = await axios.post(notification.signalURL, data, config)
return true;
} catch (error) {
console.log(error)
return false;
}
} else {
throw new Error("Notification type is not supported")
}
@ -135,20 +153,15 @@ class Notification {
static async smtp(notification, msg) {
let data = {
let transporter = nodemailer.createTransport({
host: notification.smtpHost,
port: notification.smtpPort,
secure: notification.smtpSecure,
};
if (notification.smtpUsername) {
data.auth = {
auth: {
user: notification.smtpUsername,
pass: notification.smtpPassword,
};
}
let transporter = nodemailer.createTransport(data);
},
});
// send mail with defined transport object
let info = await transporter.sendMail({
@ -160,6 +173,18 @@ class Notification {
return true;
}
static async discord(notification, msg) {
const client = new Discord.Client();
await client.login(notification.discordToken)
const channel = await client.channels.fetch(notification.discordChannelID);
await channel.send(msg);
client.destroy()
return true;
}
}
module.exports = {