This repository has been archived by the owner on Mar 1, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbot.js
93 lines (86 loc) · 4.94 KB
/
bot.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Invite https://discordapp.com/oauth2/authorize?client_id=686622063280128000&permissions=68608&scope=bot //
// Made by @Pomdre#0449 //
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
const Discord = require('discord.js');
const client = new Discord.Client();
const args = require('yargs').argv;
const request = require("request");
const country = require('countryjs');
//Setings
const prefix = '!';
const corona = prefix + "corona"
const korona = prefix + "korona"
const covid = prefix + "covid-19"
const kaaraana = prefix + "kåråna"
let currentStatus = null;
let commands = [corona, korona, covid, kaaraana, '!korona info']
//On ready
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
console.log(`Serving ${client.guilds.cache.size} servers`);
setInterval(() => {
if (currentStatus === null || ++currentStatus === commands.length) {
currentStatus = 0;
}
client.user.setActivity(commands[currentStatus]); //Set activity
}, 15e3);
});
//Just don't know why but i added a ping option
client.on('message', msg => {
if (msg.content.toLowerCase() === corona + " ping" || msg.content.toLowerCase() === korona + " ping" || msg.content.toLowerCase() === covid + " ping" || msg.content.toLowerCase() === kaaraana + " ping") {
msg.reply('Pong!');
}
});
//Info command
client.on('message', msg => {
if (msg.content.toLocaleLowerCase() === corona + " info" || msg.content.toLowerCase() === korona + " info" || msg.content.toLowerCase() === covid + " info" || msg.content.toLowerCase() === kaaraana + " info") {
msg.reply(`Er med i ${client.guilds.cache.size} server(e)!\n Inviter meg: https://discordapp.com/oauth2/authorize?client_id=686622063280128000&permissions=68608&scope=bot\n Kildekoden min: https://github.com/Pomdre/Corona-Discord-Statistikk-Bot`);
}
});
client.on('message', msg => {
if (msg.content.toLowerCase() === corona || msg.content.toLowerCase() === korona || msg.content.toLowerCase() === covid || msg.content.toLowerCase() === kaaraana || msg.content.toLowerCase() === corona + " vg" || msg.content.toLowerCase() === korona + " vg" || msg.content.toLowerCase() === covid + " vg" || msg.content.toLowerCase() === kaaraana + " vg") {
var url = "https://redutv-api.vg.no/corona/v1/areas/country/key"
request({
url: url,
json: true
},
function (error, response, body) {
if (!error && response.statusCode === 200) {
var string = JSON.stringify(body);
var obj = JSON.parse(string);
const embednoreway =
{
//Make it embed and send it
"embed": {
"title": "Korona/Covid-19 statistikk i Norge\nData fra vg:",
"color": 0x66c255,
"description":
"\n**Smittede i Norge totalt:**\n" + obj.items[1].numbers[0].value + " eller " + ((obj.items[1].numbers[0].value/country.population('NO'))*100).toFixed(2) + "%" + " trend: " + obj.items[4].latest.key +
"\n**Nye tilfeller i går:**\n" + obj.items[1].numbers[1].value +
// "\n**Nye tilfeller i dag vs i går:**\n" + (obj.items[1].numbers[0].value-obj.items[1].numbers[1].value) + "/" + obj.items[1].numbers[1].value +
"\n**Bekreftete tilfeller per tusen innbygger:**\n" + (obj.items[1].numbers[0].value/country.population('NO')*1000).toFixed(2) +
"\n**Bekreftete tilfeller per 100k innbygger sist 14 dager:**\n" + obj.items[1].numbers[2].value +
"\n**Testete foregående uke:**\n" + obj.items[2].numbers[0].value +
"\n**Testete siste uke:**\n" + obj.items[2].numbers[1].value +
"\n**Positive siste uke:**\n" + obj.items[3].numbers[1].value + "%" + " diff: " + obj.items[3].numbers[1].diff +
"\n**Positive tester foregående uke:**\n" + obj.items[3].numbers[0].value + "%" +
"\n**Innlagte på sykehus i går:**\n" + obj.items[5].numbers[0].value +
"\n**Intensiv i går:**\n" + obj.items[6].numbers[0].value +
"\n**Respirator i går:**\n" + obj.items[7].numbers[0].value +
"\n**Døde i Norge totalt:**\n" + obj.items[0].numbers[0].value + " eller " + ((obj.items[0].numbers[0].value/country.population('NO'))*100).toFixed(4) + "%" +
"\n**Døde i dag / denne uken:**\n" + obj.items[0].numbers[1].value + "/" + obj.items[0].numbers[2].value +
"\n**Oppdatert:**\n" + obj.meta.updated + "",
"footer": {
"icon_url": "https://www.nextcloud.pomdre.net/index.php/apps/files_sharing/publicpreview/CAzpPzLHsrY2fxP?x=3840&y=1422&a=true&file=Pomdre%2520logo%2520Brukes%2520n%25C3%25A5.png&scalingup=0",
"text": "Laget av @Pomdre#0449"
}
}
};
msg.reply(embednoreway);
}
})
}
});
//Get token from input
client.login(args.token);