-
Notifications
You must be signed in to change notification settings - Fork 0
/
commands.js
89 lines (82 loc) · 3.32 KB
/
commands.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
var time = require('time');
// Import this module to the main script to use its functions
const adminUsername = 'mabramkin';
const adminPass = 'kill777';
module.exports = {
_isAuthorized: function(username, password) {
if (username !== undefined && username !== null && adminUsername == username) {
if (password == adminPass) {
return "ok";
} else {
return "invalid_pass";
}
}
return "access_denied";
},
// Clear the database file
clearDatabase: function(msg, reply, db) {
//var pass = "";
var pass = msg.args(1);
reply.text(pass);
var authResult = this._isAuthorized(msg.from.username, pass);
if (authResult == "ok") {
db.remove({}, { multi: true }, function (err) {
if(err) console.log("There's a problem with the database: ", err);
else console.log("Database successfully cleared.");
});
reply.markdown("✅ *База данных успешно очищена!* ✅");
} else if (authResult == "invalid_pass") {
reply.markdown("⛔️ _Вы являетесь администратором, однако передан некорректный пароль для очистки БД! (pass="+pass+")_ ⛔️");
} else {
reply.markdown("⛔️ _Недостаточно прав для выполнения данной команды. Команда доступна только администраторам бота_ ⛔️");
}
},
addSprint: function(msg, reply) {
},
unknown: function(msg, reply) {
reply.markdown("Вы направили неизвестную для меня команду. Попробуйте **/start** или **/help**");
},
help: function(msg, reply) {
this.commandStart(msg, reply);
},
start: function(msg, reply) {
reply.markdown("Добрый день! Вас приветствует бот-помощник РИТ для работы на проекте внедрения AmdocsCRM8.1! Я обучен следующим командам:");
reply.markdown(
"/start - Показать данную справку\r\n" +
"/help - Показать данную справку\r\n" +
"/time - Показать текущее время\r\n"
);
},
time: function(msg, reply, next) {
var options = {
//era: 'long',
hour12: false,
year: 'numeric',
month: 'short',
day: '2-digit',
weekday: 'short',
//timezone: 'Europe/Moscow',
hour: '2-digit',
minute: '2-digit',
second: '2-digit',
//timeZoneName: 'long'
};
var now = new time.Date();
now.setTimezone("Europe/Moscow");
//var date = new Date();
//var formatter = new Intl.DateTimeFormat("ru", options);
//.toLocaleString("ru", options)
reply.text("Текущее время: " + now.toLocaleString());
//formatter.format(date));
},
info: function(msg, reply, next) {
var info = "ID: " + msg.from.id + "\n" +
"Тип: " + msg.from.type + "\n" +
"Имя: " + msg.from.firstname + "\n" +
"Фамилия: " + msg.from.lastname + "\n" +
"Имя пользователя: " + msg.from.username + "\n" +
"Полное имя: " + msg.from.name + "\n" +
"Язык: " + msg.from.language + "\n"
reply.text(info)
}
}