Функция регистрации реализована
This commit is contained in:
parent
f81fb60969
commit
c798bd7797
1 changed files with 15 additions and 17 deletions
32
src/bot.ts
32
src/bot.ts
|
@ -1,14 +1,8 @@
|
|||
import { Bot } from "grammy";
|
||||
const bot = new Bot(`${process.env.BOT_TOKEN}`);
|
||||
|
||||
|
||||
const sqlite3 = require("sqlite3");
|
||||
const db = new sqlite3.Database(process.env.DB_PATH)
|
||||
|
||||
function newPerson(values: string){
|
||||
console.log("В таблицу people вносятся данные: " + `${values}`);
|
||||
db.run(`INSERT INTO people(per_name, per_email) VALUES (${values});`);
|
||||
}
|
||||
import { Database } from "sqlite3";
|
||||
const database = new Database(`${process.env.DB_PATH}`)
|
||||
|
||||
|
||||
|
||||
|
@ -21,20 +15,24 @@ bot.command("start", (ctx) => {
|
|||
|
||||
bot.command("help", (ctx) => {
|
||||
ctx.reply(
|
||||
"Список команд доступен в сплывающем меню от знака «/» в поле ввода сообщения\\. Но если Вы ещё не зарегистрированы в системе, сделайте это в первую очередь по команде: `/register \"[полное имя]\", \"[электропочта]\"`",
|
||||
"Список команд доступен в сплывающем меню от знака «/» в поле ввода сообщения\\. Но если Вы ещё не зарегистрированы в системе, сделайте это в первую очередь в формате SQL по команде: `/register \"[полное имя]\", \"[электропочта]\"`",
|
||||
{ parse_mode: "MarkdownV2" },
|
||||
);
|
||||
});
|
||||
|
||||
bot.command("register", (ctx) => {
|
||||
if (ctx.match != '') {
|
||||
newPerson(`${ctx.match}`);
|
||||
} else {
|
||||
ctx.reply(
|
||||
"Данная команда требует аргументы, введённые в формате `\"[полное имя]\", \"[электропочта]\"`\\. Например: `/register \"Зажигин Богдан Алексеевич\", \"za.boal@vk.com\"`",
|
||||
{ parse_mode: "MarkdownV2" }
|
||||
);
|
||||
}
|
||||
// В ctx.match берутся аргументы команды /register и используются как данные вводимые в таблицу
|
||||
database.run(`INSERT INTO people(per_name, per_email) VALUES (${ctx.match})`, (error) => {
|
||||
if (error == null) {
|
||||
ctx.reply(`Регистрация прошла успешно`)
|
||||
} else {
|
||||
// Отправить «сухую» ошибку пользователю
|
||||
ctx.reply(
|
||||
`Регистрация не удалась, SQLite сообщает об ошибке: «\`${error}\`»\\. Вы можете запросить трактовку и рекомендации у @zaboal`,
|
||||
{ parse_mode: "MarkdownV2" }
|
||||
);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue