Мы с важной новостью: с 28 февраля 2025 года сервис Хабр Фриланс прекратит свою работу.

Купить услуги можно до 28 февраля 2025, но пополнить баланс уже нельзя. Если на вашем счете остались средства, вы можете потратить их на небольшие услуги — служба поддержки готова поделиться бонусами, на случай, если средств немного не хватает.
R50 0c0a29c077326d3c155cb5e82d8361e6
Разработка ПО

Zoe Telegram Bot

Добавлено 30 янв 2018 в 06:09

Телеграм бот для рассылки уведомлений заступающим на дежурство.

1) Пользователь инициирует диалог с ботом обязательной командой /start
2) На стороне сервера (webhook-сервер) происходит регистрация пользователя в базе.
3) Администратор (в административной панели) добавляет пользователя в расписание (или создает новое расписание)
4) Каждый день в определенное системой время пользвателю приходит сообщение в Telegram о том что сегодня его очередь заступать на дежурство.
На данном этапе у пользователя есть возможность:
  • Принять дежурство
    Бот установит статус готовности пользователя заступить на дежурство
  • Заявить о том что
    Бот найдет пользователя следующего по расписанию и предложит ему заступить на дежурство
  • Поменяться с кем либо
    Бот предоставит пользователю список тех кто бы мог его подменить (дежурные из данного расписания)

Количество пользователей и расписаний ограничено только допустимым объемом БД.

Технологии
python 3.6
python-telegram-bot 8.1.1 - python-библиотека для работы с Telegram Bot API
django 2.0 - Основное приложение. Взаимодействие сбазой данных, администртивная панель.
django-rest-framework 3.7.3 - python-библиотека для написания REST-FULL API вокруг django. Cлужит прослойкой между django и python-telegram-bot
celery 4.1.0 - python-библиотека для фонового исполнения задач. Использутся как ядро подсистемы ежедневной отправки сообщений пользователям.
redis (python) 2.10.6 - Бэкэнд для celery в котором хранятся результаты выполнения задач
rabbitmq - Серевер для обмена сообщениями между django и celery

2bb0ff095d