Bots sprzedaży NFT - TŻ
Monitorowanie sprzedaży NFT na rynku GetGems i wysyłanie powiadomień na Telegram.
Zasada działania
Podejście Polling: Okresowe zapytania 5 adresów prowizji GetGems przez TonAPI
Filtracja: Śledzenie tylko wskazanych kolekcji z collections.json
Powiadomienia: Wysyłanie do czatu Telegram z szczegółami sprzedaży (nazwa, cena, linki)
Główne komponenty
app.py - główny bot z logiką polling
admin/handlers.py - komendy administracyjne do zarządzania kolekcjami
admin/keyboards.py - klawiatury inline
utils/converter.py - konwersja adresów (raw ↔️ friendly)
collections.json - lista śledzonych kolekcji
processed_events.json - pamięć podręczna przetworzonych zdarzeń
Technologie
Python 3.11+
aiogram 3.x (Telegram Bot API)
TonAPI REST API
systemd do automatycznego uruchamiania
Kluczowe możliwości
Monitorowanie
Zapytanie 5 adresów GetGems co
Podwójna ochrona przed duplikatami: timestamp + event_id cache
Wsparcie dla zakupów zbiorczych (kilka NFT w jednej transakcji)
Graceful shutdown z zachowaniem stanu
Ustawienie limitu zapytań (1.1 sek 1 zapytanie), aby nie otrzymać błędu od TonAPI.
Panel administracyjny (Telegram)
Podgląd śledzonych kolekcji
Dodawanie/usuwanie kolekcji
Powiadomienia
Format wiadomości:
💎 NOWA SPRZEDAŻ 💎
Kolekcja: [nazwa]
NFT: [nazwa NFT]
Cena: [cena] TON
⏰ [data czas]
🔗 GetGems | Transakcja
Konwersja adresów
Format raw: 0:hex (dla TonAPI)
Format friendly: EQ... / UQ... (dla użytkowników)