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)