Informacje o urządzeniu

Dostawcy mogą powiadomić aplikację Seeker o informacjach o urządzeniu za pomocą strumienia wiadomości.

Nazwa grupy wiadomości Wartość
Zdarzenie dotyczące informacji o urządzeniu 0x03
Nazwa kodu informacji z urządzenia Wartość
Identyfikator modelu 0x01
Adres BLE został zaktualizowany 0x02
Bateria zaktualizowana 0x03
Pozostały czas pracy na baterii 0x04
Żądanie aktywnych komponentów 0x05
Odpowiedź aktywnych komponentów 0x06
(Wycofane)Możliwości 0x07
Typ platformy 0x08
Wersja oprogramowania 0x09
Bieżący identyfikator efemeryczny FMDN 0 x 0 mld

Identyfikator modelu

Informacje o identyfikatorze modelu (na potrzeby zapisania klucza konta z wyprzedzeniem) powinny być wysyłane do narzędzia Seeker podczas nawiązywania połączenia przez RFCOMM. np. 0x03010003AABBCC będzie:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x01: wartość identyfikatora modelu
  • 0x0003: dane dodatkowe, długość 3
  • 0xAABBCC: dane dodatkowe, identyfikator modelu

adres BLE

Informacje o adresie BLE (na potrzeby Retroactively Write AccountKey) (jeśli są dostępne) powinny być też wysyłane do obiektu Seeker podczas nawiązywania połączenia przez RFCOMM i przy rotacji adresu. Na przykład 0x03020006AABBCCDDEEFF będzie wyglądać tak:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x02: wartość adresu BLE
  • 0x0006: dane dodatkowe, długość 6
  • 0xAABBCCDDEEFF: dodatkowe dane, adres BLE

Bateria zaktualizowana

Do usługodawców, którzy obsługują powiadomienia o stanie baterii, informacje o baterii mogą być też wysyłane przez RFCOMM. Aktualizacja musi zostać wysłana, gdy nastąpi połączenie RFCOMM lub zmieni się wartość baterii. Sekcja dodatkowych danych pakietu powinna zawierać te same dane co bajty s + 2, s + 3, s + 4, jeśli reklamujesz dane o baterii przez BLE. np. 0x0303000357417F to:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x03: wartość baterii
  • 0x0003: dane dodatkowe, długość 3
  • 0x57417F: Dodatkowe dane, wartości baterii
    • 0x57: wartość lewej słuchawki, nie ładuje się, bateria: 87%
    • 0x41: wartość prawej słuchawki, brak ładowania, 65% baterii
    • 0x7F: wartość etui, brak ładowania, nieznana bateria

Dostawcy mogą też aktualizować pozostały czas pracy na baterii (jeśli są znani), na przykład 0x03040001F0 to:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x04: pozostały czas pracy na baterii
  • 0x0001: dane dodatkowe, długość 1 (w razie potrzeby 2 w przypadku uint16).
  • 0xF0: dodatkowe dane, pozostały czas pracy baterii w minutach, 240 minut

Aktywne komponenty

Poszukiwacze mogą czasem chcieć się dowiedzieć, które komponenty są obecnie aktywne, co oznacza, że można z nimi podjąć odpowiednie działania (patrz Działania na urządzeniu). Gdy dostawca otrzyma żądanie zawierające kod żądania aktywnych komponentów (0x05), w ciągu 1 sekundy powinna zostać zwrócona odpowiedź wskazująca bieżący stan dostawcy. Odpowiedź będzie zawierać kod odpowiedzi aktywnych komponentów (0x06) oraz dodatkowe dane wskazujące, które komponenty są dostępne.

W przypadku dostawcy z jednym komponentem dodatkowe dane powinny mieć wartość 0x00, jeśli są niedostępne. Przykładem może być tryb oszczędzania baterii, w którym multimedia nie są odtwarzane. W przeciwnym razie dodatkowe dane należy ustawić na 0x01.

W przypadku zestawów słuchawkowych z wieloma komponentami (np. lewą i prawą słuchawką) każdy bit w dodatkowych danych wskazuje, czy dany komponent jest aktywny. Przykładem nieaktywnego komponentu może być słuchawka, która jest w danym przypadku, ale nie jest w użyciu. Konkretnie w przypadku lewego i prawego etui słuchawek:

  • 0x00 (0b00000000): żadna ze słuchawek nie jest aktywna
  • 0x01 (0b00000001): Prawa słuchawka aktywna, lewa nieaktywna
  • 0x02 (0b00000010): lewa słuchawka aktywna, prawa nieaktywna
  • 0x03 (0b00000011): Obie słuchawki aktywne

Typ platformy

Dostawcy mogą chcieć działać różnie w zależności od platformy, z którą są połączeni. Szybkie parowanie jest obecnie wykonywane tylko na urządzeniach z Androidem, ale w przyszłości jego obsługa może zostać rozszerzona.

W dodatkowych danych wiadomość będzie zawierać pierwszy bajt identyfikujący typ platformy:

Nazwa platformy Wartość
Android 0x01

Drugi bajt zostanie dostosowany do każdej platformy. W przypadku Androida odnosi się ona do wersji pakietu SDK. Na przykład Android Pie będzie miał wartość 28 (0x1C).

Wersja oprogramowania

Wersja oprogramowania układowego dostawcy w postaci ciągu znaków w kodowaniu UTF-8. To te same informacje co w charakterze wersji oprogramowania.

Bieżący identyfikator efemeryczny FMDN

Dostawcy, którzy reklamują ramki FMDN, powinni zgłaszać aktualny identyfikator efemeryczny FMDN z bieżącą wartością zegara, aby zsynchronizować go z Poszukiwaczem w przypadku odchylenia zegara (np. z powodu rozładowania baterii).

Na przykład:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x0B: komunikat o bieżącym identyfikatorze tymczasowym FMDN
  • 0x0018: dane dodatkowe, długość 24 lub 36 bajtów
  • 0x13F9EA80: dodatkowe dane (wartość zegara; 4 bajty)
  • 0x1122334455667788990011223344556677889900: dane dodatkowe (bieżący EID; 20 lub 32 bajty)