Opracowanie kompleksowego rozwiązania do automatyzacji procesów szkoły online opartego na bocie Telegram. Projekt zrealizowany całkowicie od podstaw z wykorzystaniem nowoczesnego asynchronicznego stosu technologii, co zapewnia wysoką prędkość przetwarzania danych i niezawodność.
Główna funkcjonalność i architektura:
Zarządzanie dostępem: Zautomatyzowane zarządzanie strumieniami nauczania i przyznawaniem dostępu uczestnikom.
Integracja płatności (WayForPay): Konfiguracja przetwarzania zapytań webhook z weryfikacją podpisu kryptograficznego (HMAC_MD5) dla bezpiecznego potwierdzania płatności i automatycznej rejestracji użytkowników.
Praca z Google Sheets: Wykorzystanie Google Arkuszy jako głównego źródła prawdy (bazy danych).
System cache: Opracowano lokalny cache w pamięci (CacheStore), który regularnie aktualizuje się w tle, zapewniając natychmiastowy dostęp do informacji bez zbędnych zapytań do API arkuszy.
Optymalizacja zapisów: Stworzono tło kolejki (WriteQueue), która partiami i bezpiecznie zapisuje wszystkie zmiany (dodawanie uczestników, aktualizacja statusów) z powrotem do Google Sheets, minimalizując ryzyko przekroczenia limitów API.
Stos technologiczny:
Python, aiogram (v3.x), FastAPI, uvicorn, Pydantic (pydantic-settings), gspread, WayForPay API.
Główna funkcjonalność i architektura:
Zarządzanie dostępem: Zautomatyzowane zarządzanie strumieniami nauczania i przyznawaniem dostępu uczestnikom.
Integracja płatności (WayForPay): Konfiguracja przetwarzania zapytań webhook z weryfikacją podpisu kryptograficznego (HMAC_MD5) dla bezpiecznego potwierdzania płatności i automatycznej rejestracji użytkowników.
Praca z Google Sheets: Wykorzystanie Google Arkuszy jako głównego źródła prawdy (bazy danych).
System cache: Opracowano lokalny cache w pamięci (CacheStore), który regularnie aktualizuje się w tle, zapewniając natychmiastowy dostęp do informacji bez zbędnych zapytań do API arkuszy.
Optymalizacja zapisów: Stworzono tło kolejki (WriteQueue), która partiami i bezpiecznie zapisuje wszystkie zmiany (dodawanie uczestników, aktualizacja statusów) z powrotem do Google Sheets, minimalizując ryzyko przekroczenia limitów API.
Stos technologiczny:
Python, aiogram (v3.x), FastAPI, uvicorn, Pydantic (pydantic-settings), gspread, WayForPay API.