Auth0 Tg_bot
Telegram-bot z autoryzacją przez Auth0 (Device Authorization Flow)
Opis projektu:
Ten projekt to Telegram-bot, zaprojektowany do autoryzacji użytkowników za pomocą Auth0 przez Device Authorization Flow. Po pomyślnej autoryzacji bot dostarcza użytkownikowi JSON z danymi profilu i przechodzi w tryb powtarzania wszystkich otrzymanych wiadomości. W przypadku bezczynności trwającej ponad 1 minutę — sesja zostaje zakończona, a autoryzacja unieważniona.
Główna funkcjonalność:
Użytkownik rozpoczyna czat z botem.
Bot wysyła żądanie autoryzacji przez Auth0.
W przypadku niepowodzenia — bot wyświetla odpowiednią wiadomość z możliwością spróbowania ponownie.
Po pomyślnej autoryzacji bot:
Wysyła JSON z danymi użytkownika z Auth0.
Powtarza wszystkie przychodzące wiadomości użytkownika.
Jeśli użytkownik jest nieaktywny przez ponad 60 sekund — sesja zostaje zakończona, token unieważniony.
Stos technologiczny:
Język programowania: Python 3.11
Telegram API: aiogram 3.x — asynchroniczny framework do tworzenia Telegram-botów
Autoryzacja: Auth0 z obsługą Device Authorization Flow
Baza danych: PostgreSQL 13
ORM: SQLAlchemy (z obsługą asyncpg)
Konteneryzacja: Docker i Docker Compose
Testowanie: pytest z pokryciem powyżej 87%
Wynik:
Telegram-bot z bezpieczną autoryzacją przez Auth0, automatycznym zarządzaniem sesjami, asynchroniczną architekturą, wysokim poziomem pokrycia testowego oraz konteneryzacją dla wygodnego wdrożenia.
Opis projektu:
Ten projekt to Telegram-bot, zaprojektowany do autoryzacji użytkowników za pomocą Auth0 przez Device Authorization Flow. Po pomyślnej autoryzacji bot dostarcza użytkownikowi JSON z danymi profilu i przechodzi w tryb powtarzania wszystkich otrzymanych wiadomości. W przypadku bezczynności trwającej ponad 1 minutę — sesja zostaje zakończona, a autoryzacja unieważniona.
Główna funkcjonalność:
Użytkownik rozpoczyna czat z botem.
Bot wysyła żądanie autoryzacji przez Auth0.
W przypadku niepowodzenia — bot wyświetla odpowiednią wiadomość z możliwością spróbowania ponownie.
Po pomyślnej autoryzacji bot:
Wysyła JSON z danymi użytkownika z Auth0.
Powtarza wszystkie przychodzące wiadomości użytkownika.
Jeśli użytkownik jest nieaktywny przez ponad 60 sekund — sesja zostaje zakończona, token unieważniony.
Stos technologiczny:
Język programowania: Python 3.11
Telegram API: aiogram 3.x — asynchroniczny framework do tworzenia Telegram-botów
Autoryzacja: Auth0 z obsługą Device Authorization Flow
Baza danych: PostgreSQL 13
ORM: SQLAlchemy (z obsługą asyncpg)
Konteneryzacja: Docker i Docker Compose
Testowanie: pytest z pokryciem powyżej 87%
Wynik:
Telegram-bot z bezpieczną autoryzacją przez Auth0, automatycznym zarządzaniem sesjami, asynchroniczną architekturą, wysokim poziomem pokrycia testowego oraz konteneryzacją dla wygodnego wdrożenia.