Pobierz publiczną konfigurację
Jedno żądanie GET zwraca konfigurację projektu Firebase. apiKey jest z założenia publiczny: identyfikuje projekt, a nie wywołującego. Zapisz go w pamięci podręcznej; wystarczy odświeżanie raz w tygodniu.
Dokumentacja integracji zewnętrznych
Konto TigerSystem łączy każdą aplikację i każde urządzenie. Twoja aplikacja, urządzenie lub Home Assistant łączy się z nim natywnie przez Firebase: loguje się własnymi danymi użytkownika, odczytuje jego szpule i regały w Firestore i zapisuje z powrotem wagę.
$ GET https://tigertag-cdn.web.app/__/firebase/init.json
POST https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key={apiKey}
{ "email": "user@example.com", "password": "…", "returnSecureToken": true }Każdy klient wykonuje te same cztery kroki: pobiera publiczną konfigurację Firebase, loguje się jako użytkownik, wywołuje Firestore REST API z tokenem użytkownika i dba o to, by ten token był aktualny.
Jedno żądanie GET zwraca konfigurację projektu Firebase. apiKey jest z założenia publiczny: identyfikuje projekt, a nie wywołującego. Zapisz go w pamięci podręcznej; wystarczy odświeżanie raz w tygodniu.
Własny e-mail i hasło użytkownika zwracają UID, idToken ważny 1 godzinę i refreshToken. Google Sign-In wymaga przeglądarki, dlatego klienci bez interfejsu używają hasła.
Wysyłaj idToken jako token Bearer. Szpule znajdują się w users/{uid}/inventory, regały w users/{uid}/racks; wagi to gramy netto, daty to milisekundy Unix.
Każdy klient loguje się własnymi danymi logowania użytkownika końcowego. Nigdy nie dołączaj SDK firebase-admin ani żadnego klucza administratora do klienta zewnętrznego.
Firestore Security Rules sprawdzają każde żądanie względem zalogowanego użytkownika: właściciel odczytuje i zapisuje swoje dokumenty, znajomi czytają inwentarz i regały, wszystko inne jest odrzucane.
Ścieżki dokumentów i nazwy pól pozostają stabilne. Zmiana nazwy lub usunięcie pola wymaga co najmniej 3 miesięcy uprzedzenia w dzienniku zmian; nowe pola są zawsze tylko dodawane.
Szkic komponentu niestandardowego, który udostępnia jeden czujnik na szpulę, z pozostałą wagą w gramach jako stanem. Przewodnik obejmuje też inwentarze znajomych, paginację i przechowywanie tokenów.

Wyszukaj szpulę po zeskanowanym UID RFID (uid, a następnie twin_uid), oblicz wagę netto i zapisz weight_available oraz last_update z maską aktualizacji. Przewodnik kończy się kompletnym szkicem dla ESP32 (WiFi, ArduinoJson).

Minimalny klient w Pythonie oparty na Pyrebase4: loguje się, wyświetla listę Twoich szpul i pokazuje, ile szpul ma każdy znajomy. Przewodnik zawiera cały skrypt i przykładowe uruchomienie.
Nie. Każdy klient loguje się własnym adresem e-mail i hasłem TigerSystem użytkownika końcowego, a Firestore Security Rules decydują, co ten użytkownik może odczytać lub zapisać. Nie ma wspólnego klucza administratora, a SDK firebase-admin nigdy nie może być używany w kliencie zewnętrznym.
apiKey identyfikuje projekt Firebase, a nie wywołującego. Bez ważnego idToken, uzyskanego przez zalogowanie się jako prawdziwy użytkownik, nie daje dostępu do niczego; kontrolę dostępu zapewniają uwierzytelnianie i Security Rules.
Nie bezpośrednio: Google Sign-In wymaga przekierowania w przeglądarce. Użytkownik, który zawsze korzystał tylko z Google, najpierw ustawia hasło do konta TigerSystem przez funkcję przypomnienia hasła w Tiger Studio Manager 2 lub Tiger NFC Connect, a następnie loguje się e-mailem i hasłem.
Najczęściej co 5 minut dla czujnika, co 15 minut dla przeglądu regałów i nigdy częściej niż co 30 sekund. Waga zapisuje dane tylko wtedy, gdy zmienia się ciężar. Odczyty list powinny podawać limit: 200 dla inwentarza, 50 dla regałów.
Tak, tylko do odczytu. Gdy dwoje użytkowników jest znajomymi, każdy z nich ma dokument dotyczący drugiego w users/{uid}/friends, a reguły pozwalają znajomemu odczytywać inwentarz i regały. Każdy z użytkowników może w dowolnej chwili usunąć znajomość, co natychmiast odcina dostęp.
Wybierz przewodnik dla swojej platformy i przejdź go od logowania do pierwszego odczytu. To, co jest udokumentowane, działa na produkcji.
Rozpocznij integrację