Informacje o urządzeniu
Dostawcy mogą powiadamiać Poszukiwacza 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 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 |
(Wycofane) Możliwości | 0x07 |
Typ platformy | 0x08 |
Wersja oprogramowania | 0x09 |
bieżący tymczasowy identyfikator FHN; | 0x0B |
Identyfikator modelu
Informacje o identyfikatorze modelu (do zapisywania klucza konta z efektem wstecz) należy wysłać do urządzenia szukającego, gdy RFCOMM nawiąże połączenie. Na przykład: 0x03010003AABBCC
:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x01: wartość identyfikatora modelu
- 0x0003: dodatkowe dane, długość 3
- 0xAABBCC: dodatkowe dane, identyfikator modelu
Adres BLE
Informacje o adresie BLE (do zapisu klucza konta w steście wstecz), jeśli są dostępne, powinny zostać wysłane do urządzenia poszukującego, gdy RFCOMM nawiąże połączenie, oraz za każdym razem, gdy adres zostanie zastąpiony. Na przykład 0x03020006AABBCCDDEEFF
to:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x02: wartość adresu BLE
- 0x0006: dodatkowe dane o długości 6.
- 0xAABBCCDDEEFF: dodatkowe dane, adres BLE
Bateria została zaktualizowana.
W przypadku dostawców, którzy obsługują powiadomienia o stanie baterii, informacje o baterii mogą być również wysyłane przez RFCOMM. Gdy RFCOMM połączy się lub zmieni się wartość baterii, należy wysłać aktualizację. Sekcja dodatkowych danych pakietu powinna zawierać te same dane co bajty s + 2, s + 3 i s + 4 podczas przesyłania danych o baterii przez BLE. Na przykład:0x0303000357417F
:
- 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: wartość etui, nie ładuje się, bateria nieznana
Dostawcy mogą też aktualizować pozostały czas pracy baterii (jeśli jest znany). Na przykład:
0x03040001F0
to:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x04: Pozostały czas pracy baterii
- 0x0001: dodatkowe dane o długości 1 (w razie potrzeby może to być 2 dla uint16).
- 0xF0: dodatkowe dane, pozostały czas pracy baterii w minutach, 240 minut
Aktywne komponenty
Czasami osoby poszukujące informacji chcą wiedzieć, które komponenty są obecnie aktywne, co oznacza, że można je modyfikować (patrz Działania na urządzeniu). Gdy dostawca otrzyma żądanie zawierające kod żądania komponentów aktywnych (0x05), w ciągu 1 sekundy powinien zwrócić odpowiedź wskazującą bieżący stan dostawcy. Odpowiedź będzie używać kodu active components response (0x06) i zawierać 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 nie będzie możliwe odtwarzanie multimediów. W przeciwnym razie dodatkowe dane powinny być ustawione na 0x01.
W przypadku zestawów słuchawkowych z większą liczbą komponentów (np. lewego i prawego ucha) każdy bit w dodatkowych danych wskazuje, czy dany komponent jest aktywny. Przykładem nieaktywnego komponentu może być element, który znajduje się w obudowie, ale nie jest używany. W przypadku lewej i prawej słuchawki:
- 0x00 (0b00000000): żadna z podgrup nie jest aktywna
- 0x01 (0b00000001): prawa słuchawka aktywna, lewa nieaktywna
- 0x02 (0b00000010): słuchawka lewa aktywna, prawa nieaktywna
- 0x03 (0b00000011): obie słuchawki są 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.
Wiadomość będzie zawierać pierwszy bajt identyfikujący typ platformy w danych dodatkowych:
Nazwa platformy | Wartość |
---|---|
Android | 0x01 |
Drugi bajt będzie dostosowywany do każdej platformy. W przypadku Androida odnosi się do wersji pakietu SDK. Na przykład Android Pie będzie miał wartość 28 (0x1C).
Wersja oprogramowania
Wersja oprogramowania sprzętowego dostawcy jako ciąg znaków w kodowaniu utf-8. To te same informacje co w charakterystyce wersji oprogramowania układowego.
Bieżący tymczasowy identyfikator FHN
Dostawcy, którzy reklamują ramki FHN, powinni zgłaszać bieżący tymczasowy identyfikator FHN (EID) z bieżącą wartością zegara, aby zsynchronizować się z wyszukiwarką w przypadku przesunięcia zegara (np. z powodu wyczerpania baterii).
Na przykład:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x0B: bieżąca wiadomość z identyfikatorem tymczasowym FHN
- 0x0018: dodatkowe dane o długości 24 lub 36 bajtów
- 0x13F9EA80: dodatkowe dane (wartość zegara; 4 bajty)
- 0x1122334455667788990011223344556677889900: dodatkowe dane (bieżący identyfikator EID; 20 lub 32 bajty)