Główny cel
Zbudowanie kompleksowego systemu rozwiązywania tożsamości, który tworzy deterministyczne mapowania numerów telefonów ↔ ADID (identyfikator urządzenia mobilnego) przy użyciu protokołu IAB UID2 oraz dopasowywania opartego na kampaniach reklamowych.
Przegląd projektu
To zaawansowana platforma rozwiązywania tożsamości z następującym przepływem pracy:
Numery telefonów → Tokeny UID2 → Kampanie reklamowe → Śledzenie wyświetleń → Przechwytywanie ADID → Mapowania dwukierunkowe
Kluczowe komponenty systemu:
1. Usługa przesyłania numerów telefonów
Akceptuje pliki CSV/JSON/Excel z numerami telefonów
Normalizuje do formatu E.164
Szyfruje i hashuje dla bezpieczeństwa
Śledzi partie przesyłania z danymi walidacyjnymi
2. Usługa konwersji UID2
Konwertuje numery telefonów na tokeny reklamowe UID2 za pomocą protokołu IAB UID2
Zarządza cyklami odświeżania tokenów (90-dniowa ważność)
Przechowuje mapowania w PostgreSQL
Asynchroniczne przetwarzanie za pomocą kolejki Kafka
3. Menedżer kampanii reklamowych (integracja Prebid)
Tworzy niskokosztowe kampanie śledzenia celujące w tokeny UID2
Strategia: wyświetlenia 1x1 piksel dla efektywności kosztowej
Konfigurowalny budżet, geografia i limity częstotliwości
Śledzi wyświetlenia i wydajność kampanii
4. System śledzenia wyświetleń
Przechwytuje ADID-y z wydarzeń wyświetleń
Ekstrahuje dane urządzenia z żądań ofert OpenRTB
Obsługuje zarówno śledzenie GET (piksel), jak i POST (postback S2S)
Rejestruje agenta użytkownika i dane geograficzne
5. Usługa mapowania
Tworzy i aktualizuje relacje telefon ↔ ADID
Ocena pewności na podstawie częstotliwości wyświetleń
Obsługuje wiele ADID-ów na jeden telefon (użytkownicy z wieloma urządzeniami)
Aktualizuje status przetwarzania telefonu
6. API wyszukiwania (dwukierunkowe)
Telefon → ADID: Znajdź wszystkie ADID-y powiązane z numerem telefonu
ADID → Telefon: Znajdź numer telefonu powiązany z ADID
Cache Redis dla wyszukiwań <10ms
Oceny pewności i liczby wyświetleń
7. Panel internetowy (Streamlit)
Statystyki i metryki systemu w czasie rzeczywistym
Interfejs przesyłania numerów telefonów
Tworzenie i monitorowanie kampanii
Interaktywne narzędzie do wyszukiwania
Analizy i wykresy wydajności
Podsumowanie punktów końcowych API
/api/upload - Prześlij plik z numerem telefonu
/api/create-campaign/{batch_id} - Utwórz kampanię reklamową z partii
/lookup/phone-to-adid - Znajdź ADID-y według telefonu
/lookup/adid-to-phone - Znajdź telefon według ADID
/stats/overview - Statystyki systemu
/campaigns - Lista kampanii
/track - Piksel śledzenia wyświetleń
Wyniki
To kompletna, gotowa do produkcji implementacja z:
✅ Pełna schemat bazy danych z indeksami i partycjonowaniem
✅ Wszystkie mikroserwisy zaimplementowane (przesyłanie, UID2, kampanie, śledzenie)
✅ Dwukierunkowe API wyszukiwania z pamięcią podręczną
✅ Konteneryzacja Docker i orkiestracja docker-compose
✅ Panel internetowy z analizami w czasie rzeczywistym
✅ Kompleksowe zarządzanie błędami i logowanie
✅ Punkty końcowe testowe i framework testów integracyjnych
System jest gotowy do wdrożenia z odpowiednimi poświadczeniami API UID2 i alokacją budżetu kampanii.