Бот для «Московской школы профессиональной филантропии»
- Зависимости и пакеты управляются через poetry. Убедитесь, что poetry установлен на вашем компьютере и ознакомьтесь с документацией.
- Активируйте виртуальное окружение.
poetry shell
- Установите зависимости.
poetry install
- Установите pre-commit хуки
pre-commit install --all
При каждом коммите выполняются хуки (автоматизации) перечисленные в .pre-commit-config.yaml. Документация pre-commit
Если не понятно какая ошибка мешает сделать коммит можно запустить хуки вручную и посмотреть ошибки:
bash pre-commit run --all-files
Для запуска бота в режиме polling задайте в файле .env значение False для константы WEBHOOK_MODE
WEBHOOK_MODE=False
Для запуска бота в режиме webhook задайте в файле .env значение True для константы WEBHOOK_MODE, также необходимо указать URL сайта, на котором развернут проект, в константе WEBHOOK_URL
WEBHOOK_MODE=True
WEBHOOK_URL=https://example.com
Локальный запуск webhook
Для локального запуска бота в режиме webhook можно использовать приложение ngrok
- Скачать и установить ngrok
- Зарегистрировать учетную запись
- Авторизоваться
- В термминале перейти в папку с ngrok
- Скопировать и выполнить в терминале команду для добавления в ngrok токена авторизации (https://dashboard.ngrok.com/get-started/setup, пункт Connect your account)
ngrok config add-authtoken <ваш_токен>- Запустить ngrok в терминале
ngrok http 8000- Из ngrok cкопировать url из поля
Forwardingв константуWEBHOOK_URLфайла .env
- Перейдите в директорию src
cd src - Скопируйте статические файлы
python manage.py collectstatic
- Примените миграции
python manage.py migrate
- Создайте суперпользователя
python manage.py createsuperuser
- Запустите проект
uvicorn config.asgi:application
Anton Zelinsky
kr0t
AlexGriv
Serge Balyaba
Nikita Troshkin
ivanyuk-vl