Skip to content

danceandfight/telegrambot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Телаграм бот для уведомлений о проверке заданий DVMN

Телеграм бот, который пришлет уведомление о проверке любого задания с курса DVMN.org и вам не придется больше обновлять страничку в томительном ожидании.

Как установить

Важно! Предварительно должен быть установлен python версии не выше 3.9.x.

Скачайте код:

git clone [email protected]:danceandfight/telegrambot.git

Перейдите в каталог проекта:

cd telegrambot

Проверьте, что python установлен и корректно настроен. Запустите его в командной строке:

python --version

Возможно, вместо команды python здесь и в остальных инструкциях этого README придётся использовать python3. Зависит это от операционной системы и от того, установлен ли у вас Python старой второй версии.

В каталоге проекта создайте виртуальное окружение:

python -m venv venv

Активируйте его. На разных операционных системах это делается разными командами:

  • Windows: .\venv\Scripts\activate
  • MacOS/Linux: source venv/bin/activate

Установите зависимости в виртуальное окружение:

pip install -r requirements.txt

Зарегестрируйте двух новых ботов с помощью @BotFather в телеграме: первый будет присылать уведомления о проверках, а второй сообщать, если что-то пойдет не так. Вам потребуются их токены, которые выдаст @BotFather после регистрации.

Найдите свой токен devman в профиле:

Создайте файл .env в каталоге telegrambot/ и положите туда код такого вида, заменив токены на свои:

TELEGRAM_BOT_TOKEN='123456789:SFefseEGhyfJyj4jKUutkuASFhrtjhyJ42g'
TELEGRAM_BOT_LOGGER_TOKEN='987654321:DSGJHEQIhvhu2g4hfsduf21jif4fi3jinfk'
TELEGRAM_CHAT_ID=308193329
DVMN_TOKEN=46f539vfsjngi4359860ewgnirgnri39341vmor1

Запустите бота:

python main.py

Как установить используя Docker

Установите Docker любым удобным способом: https://docs.docker.com/engine/install/

В репозитории уже есть необходимый Dockerfile. Не запускайте бота через команду: python main.py, вместо это нужно создать image и container в докере.

Для создания image используйте команду:

docker build -t <название бота> .

<название бота> может быть произвольным, например, tg-bot. Для запуска контейнера используйте команду:

docker run --publish 8000:5000 <название бота>

Как установить бота на heroku

  • После регистрации на heroku.com, создайте новое приложение:Create new app
  • Подключите GitHub во вкладке Deployment Method и активируйте Automatic Deploys, тогда при каждом обновлении репозитория на GitHub код будет автоматически обновлятся. С помощью Manual Deploy/Deploy Branch можно запушить код вручную.
  • Добавьте переменные окружения из .env во вкладке Settings/Config Vars
  • Во вкладке Resources будет строка bot python3 main.py - нужно активировать запуск бота переключателем

Как установить бота на heroku с помощью докер-контейнера

В репозитории уже есть необходимый Dockerfile и файл .yml.

  • Залогиньтесь в heroku: heroku container:login
  • Переключите stack c heroku-22 на container командой: heroku stack:set container - измнение будет видно во вкладке Settings/stack
  • Во вкладке Deployment Method используйте Manual Deploy/Deploy Branch, чтобы запушить код вручную. В логах будет видно, что для установки используется Dockerfile.

Как пользоваться

Начните диалоги с двумя вашими ботами, использовав команду /start в диалоге. Для того, чтобы проверить работоспособность бота, отправьте любую работу на проверку и затем верните ее. Бот должен прислать уведовление с указанием название урока.

Цели проекта

Код написан в учебных целях — это урок в курсе по Python и веб-разработке на сайте Devman.

About

Get notification in telegram when your dvmn.org task is checked

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors