Paidagogos is a Telegram bot for remote learning. It is recommended to use it in conjunction with a Paidagogos Drawer, which provides the review interface for teachers.
There are two types of users: teachers and students. They can do the following things.
- create classrooms and add students to them
- assign tasks in any format: text, photo, video, files or audio messages
- review submissions (Paidagogos Drawer), rate and comment them
- get tasks from teachers
- send submissions to teachers
- get teachers reviews (Paidagogos Drawer) on their submissions as well as rates and comments
Paidagogos bot requires Python 3.7 and packages specified in requirements.txt
.
You can install them with
pip install -r requirements.txt
Before you start Paidagogos it is necessary to create .env
file:
touch .env
and fill in this file according to the example below:
DEBUG = True
BOT_TOKEN = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ADMIN_ID = XXXXXXXXXXX
DATABASE_URL = postgres://XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
DB_NAME = paidagogos_db
DB_USER = user
DB_PASSWORD = XXXXXXXXXXX
DB_HOST = localhost
PROXY = https://XXX.XXX.XXX.XXX:XXXX
DEBUG
should be False in prod
BOT_TOKEN
is the token got from BotFather
ADMIN_ID
is the telegram id of the admin
DATABASE_URL
is used to access the database in prod
DB_NAME
, DB_USER
, DB_PASSWORD
and DB_HOST
are used to access the database in dev
PROXY
is used if Telegram is blocked in your country (also uncomment appropriate code in bot.py)
Then you can start Paidagogos bot with this command:
python app.py
Let's see how Karl Weierstrass could teach Sofya Kovalevskaya if they had this bot.
First of all, Karl should start the bot and create the classroom.
Then he invites Sofya.
And Sofya joins his classroom.
So Karl can see her in the students list now.
To create the new task for Sofya, Karl goes to Tasks, taps New task and sends the name of the task.
Then he sends the task itself.
And assigns it.
Let's return to Sofya and see that she got notified about the new task.
She can view it.
Send her solution in any format.
And submit for Karl's review.
Karl can see now that he has submissions for review in the appropriate classroom task list.
He has 1 submission for review and 0 reviewed submissions.
So Karl starts to review Sofya's solution.
If Paidagogos Bot is used in conjunction with a Paidagogos Drawer, Karl can tap Review and make notes for Sofya in WEB interface.
As review is done Karl has the photo with his notes in the bot.
Then he writes comments for Sofya and rates her.
After that Sofya gets notified that her submission is reviewed and can see the result.