AndreyBritvin / TLSQ_bot

Telegram bot for the school

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TLSQ_bot

Существуют множество Telegram ботов, которые помогают пользователям в различных областях их деятельности. Финансовые, развлекательные, игровые, познавательные и даже юморичтисекие БОТ-каналы доставляют пользователям необходимую информацию. Среди них практически нет чисто школьных каналов, которые были бы предназначены только для школьников. Цель моего проекта создать создать бота (или множество ботов), которые будут предназначаться только для школьников. Все школьники, изучив какую-то тему, должны её закрепить или же проверить свои уже имеющиеся знания. Я думаю, что повтор пройденной темы в виде поиска правильных ответов из предложенных вариантов это один из таких хороших методов обучения. Я разработал проект на языке Python3.5, который из себя представляет универсальную плафторму для организации Telegram-бота и который взаимодействует с пользователем через вопросы и предложенные к нему вариантов с ответами. Только один из них правильный и пользователь должен его найти. Предполагается подготовить серию ботов, по различным школьным направлениям такие как: русский язык (определение корня в слове), математика (сложения, умножение, вычитание и деление чисел), история (определить знание столиц различных стран), литература (определение автора по предложенному произведению) и тд. К этому модулю можно будет добавлять различные другие направления по мере надобности. Также важной составляющей этого бота это ведение статистики среди участвующих пользователей, чтобы каждый пользователь видел, какой у него рейтинг среди остальных пользователей тем самым был более мотивирован продолжать закреплять знания и иметь более высокий рейтинг.

Перед запуском бота нужно создать базу данных со следующими таблицами: СREATE TABLE Subj ( id integer , subj_name varchar , CONSTRAINT pk_Subj UNIQUE ( id ) );

CREATE TABLE Users ( id integer , tg_userID varchar , tg_first_name varchar , tg_last_name varchar , CONSTRAINT pk_Users UNIQUE ( id ) , CONSTRAINT sqlite_autoindex_Users_1 UNIQUE ( tg_userID ) );

CREATE TABLE sqlite_sequence ( name varchar , seq varchar
);

CREATE TABLE Stat_answers ( id integer , id_user integer , id_subj integer , count_correct integer NOT NULL , count_incorrect integer NOT NULL , time datetime NOT NULL , CONSTRAINT pk_Stat_answers UNIQUE ( id ) , FOREIGN KEY ( id_subj ) REFERENCES Subj( id ) , FOREIGN KEY ( id_user ) REFERENCES Users( id )
);

CREATE TABLE Questions ( id INTEGER PRIMARY KEY AUTOINCREMENT, id_user CHAR UNIQUE, true_answer CHAR, answers CHAR, object CHAR, counter INTEGER DEFAULT ( 0 ) );

Также нужно переименовать файл config.json.example а config.json и обновить свои данные для бота (токен, пути до файлов с логами и базами данных)

About

Telegram bot for the school


Languages

Language:Python 100.0%