Управляйте рассылками с MESSAGE SERVICE!
- Создайте .env файл в папке 'email_app' на одном уровне вложенности с файлом manage.py (используйте пример из файла env.example)
- Для .env файла также понадобятся данные вашего аккаунта Stripe (Secret key, Publishable key, Webhook Secret)
- Также необходимо создать в Stripe товар 'Campaign' (можно использовать любое ваше название) - с ценой $10 - и указать его 'price_id' в .env файле
- Перед запуском docker-compose из консоли установите пароль для БД в переменную среды командой: export POSTGRES_PASSWORD=EmailApp123 (пароль должен совпадать с паролем в .env файле)
- Также измените дефолтное значение таймаута для HTTP-соединения у контейнеров в момент сборки - из консоли запустите команду: export COMPOSE_HTTP_TIMEOUT=300 (300 сек. вместо 60 сек.)
- Запустите команду в консоли: docker-compose -f docker-compose.yml up --build (дождитесь завершения сборки сети контейнеров)
- Если по какой-то причине процесс остановился с ошибкой - вызовите команду из консоли: docker-compose down и дождитесь остановки. Затем повторите предыдущий шаг
- После завершения сборки сети нужно создать superuser для Django Admin в контейнере с приложением Django: docker exec -it message_backend /bin/bash (и далее: python manage.py createsuperuser)
- Авторизуйтесь в Django Admin ( http://127.0.0.1/admin ) и установите 'IntervalSchedule' для Celery Beat: 5, 10, 30 секунд (три интервала)
- Установите утилиту Stripe CLI и авторизуйтесь в ней с помощью вашего Stripe аккаунта - теперь вы сможете принимать запросы от Stripe на локальной машине
- Запустите утилиту на прослушивание событий от сервиса Stripe с помощью команды: stripe listen --forward-to 127.0.0.1:8000/api/webhook/
- Больше информации об использовании утилиты Stripe CLI и в целом модуля 'stripe' - рекомендуется ознакомиться с серией видеоуроков от компании Sripe: https://www.youtube.com/playlist?list=PLy1nL-pvL2M55YVn0mGoQ5r-39A1-ZypO
- Регистрируйтесь >> Входите в ЛК >> Добавляйте клиентов >> Создавайте рассылки >> Редактируйте и подтверждайте >> Проверяйте статус рассылки >> Оплачивайте счет за рассылку
- Тестовые карты для оплаты счета: 4242 4242 4242 4242 (успешная оплата), 4000 0000 0000 9995 (оплата не проходит). Срок действия и код могут быть любыми
- Если сообщение не будет отправлено с первого раза - повторная попытка произойдет через минимум 5 секунд. И так будет происходить пока не наступит таймаут - после первой попытки 60 секунд
- Если время окончания рассылки наступит раньше чем таймаут - попытки отправки сообщения будут остановлены
- Страница со Swagger-UI доступна по адресу: http://127.0.0.1/api/schema/swagger-ui/
- Страница с Redoc доступна по адресу: http://127.0.0.1/api/schema/redoc/
- Есть заготовка приложения с авторизацией по OAuth (частично реализована - сервис авторизации реализован на FastAPI & Vue.js - https://github.com/KD3821/email_app/tree/oauth
- Сервис авторизации (DOLLAR SERVICE) на FastAPI - https://github.com/KD3821/dollar_app & минимальным фронтендом на Vue.js + Vuetify- https://github.com/KD3821/dollar_vue