Informacje o urządzeniu

Dostawcy mogą powiadamiać osobę poszukującą o informacjach o urządzeniu za pomocą strumienia wiadomości.

Nazwa grupy wiadomości Wartość
Zdarzenie dotyczące informacji o urządzeniu 0x03
Nazwa kodowa informacji o urządzeniu Wartość
Identyfikator modelu 0x01
Adres BLE został zaktualizowany 0x02
Bateria została zaktualizowana 0x03
Pozostały czas pracy na baterii 0x04
Prośba o aktywne komponenty 0x05
Odpowiedź dotycząca aktywnych komponentów 0x06
(Wycofano) Możliwości 0x07
Typ platformy 0x08
Wersja oprogramowania 0x09
Bieżący efemeryczny identyfikator FHN 0x0B

Identyfikator modelu

Informacje o identyfikatorze modelu (w przypadku wstecznego zapisu klucza konta) powinny być wysyłane do wyszukującego, gdy połączy się strumień wiadomości. Na przykład 0x03010003AABBCC oznacza:

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

Adres BLE

Informacje o adresie BLE (w przypadku wstecznego zapisu klucza AccountKey), jeśli są dostępne, powinny być też wysyłane do urządzenia wyszukującego, gdy łączy się strumień wiadomości i za każdym razem, gdy adres jest zmieniany. Na przykład 0x03020006AABBCCDDEEFF będzie wyglądać tak:

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

Bateria została zaktualizowana

W przypadku dostawców, którzy obsługują powiadomienia o baterii, informacje o baterii można też przesyłać za pomocą strumienia wiadomości. Gdy strumień wiadomości nawiąże połączenie lub zmieni się wartość baterii, należy wysłać aktualizację. Dodatkowa sekcja danych pakietu powinna zawierać identyczne dane jak bajty s + 2, s + 3, s + 4 podczas rozgłaszania danych o baterii przez BLE. Na przykład 0x0303000357417F będzie wyglądać tak:

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

Dostawcy mogą też aktualizować pozostały czas pracy baterii (jeśli jest znany). Na przykład:0x03040001F0:

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

Aktywne komponenty

Użytkownicy mogą czasami chcieć wiedzieć, które komponenty są obecnie aktywne, co oznacza, że można na nich wykonać działanie (patrz Działania na urządzeniu). Gdy dostawca otrzyma żądanie zawierające kod aktywnych komponentów (0x05), powinien w ciągu 1 sekundy zwrócić odpowiedź wskazującą jego bieżący stan. Odpowiedź będzie zawierać kod aktywnych komponentów (0x06) i dodatkowe dane wskazujące, które komponenty są dostępne.

W przypadku dostawcy z jednym komponentem dodatkowe dane powinny mieć wartość 0x00, jeśli nie są dostępne. Przykładem może być tryb oszczędzania baterii, w którym odtwarzanie multimediów nie będzie możliwe. W przeciwnym razie dodatkowe dane powinny mieć wartość 0x01.

W przypadku słuchawek z wieloma elementami (np. lewą i prawą słuchawką) każdy bit w danych dodatkowych określa, czy dany element jest aktywny. Przykładem nieaktywnego komponentu może być słuchawka, która znajduje się w etui i nie jest używana. W przypadku etui na lewą i prawą słuchawkę:

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

Typ platformy

Dostawcy mogą działać inaczej w zależności od platformy, z którą są połączeni. Szybkie parowanie jest obecnie dostępne tylko na urządzeniach z Androidem, ale w przyszłości może zostać rozszerzone na inne platformy.

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

Nazwa platformy Wartość
Android 0x01

Drugi bajt będzie dostosowany do platformy. W przypadku Androida będzie to wersja pakietu SDK. Na przykład Android Pie będzie miał wartość 28 (0x1C).

Wersja oprogramowania

Wersja oprogramowania układowego dostawcy jako ciąg znaków w kodowaniu UTF-8. To te same informacje co w charakterystyce wersji oprogramowania.

Bieżący tymczasowy identyfikator FHN

Dostawcy, którzy reklamują ramki FHN, powinni zgłaszać bieżący identyfikator tymczasowy FHN (EID) wraz z bieżącą wartością zegara, aby zsynchronizować się z wyszukiwarką w przypadku odchylenia zegara (np. z powodu wyczerpania baterii).

Na przykład:

  • 0x03: Zdarzenie dotyczące informacji o urządzeniu
  • 0x0B: Current FHN ephemeral identifier message
  • 0x0018: dodatkowe dane, długość 24 lub 36 bajtów
  • 0x13F9EA80: dodatkowe dane (wartość zegara; 4 bajty)
  • 0x1122334455667788990011223344556677889900: dodatkowe dane (bieżący identyfikator EID; 20 lub 32 bajty)