Informacje o urządzeniu
Dostawcy mogą informować użytkownika 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 |
| Zaktualizowano adres BLE | 0x02 |
| Zaktualizowano baterię | 0x03 |
| Pozostały czas pracy na baterii | 0x04 |
| Prośba o aktywne komponenty | 0x05 |
| Odpowiedź na prośbę o aktywne komponenty | 0x06 |
| (Wycofane) Możliwości | 0x07 |
| Typ platformy | 0x08 |
| Wersja oprogramowania | 0x09 |
| Bieżący efemeryczny identyfikator FHN | 0x0B |
Identyfikator modelu
Informacje o identyfikatorze modelu (na potrzeby
wstecznego zapisywania AccountKey) powinny być
wysyłane do użytkownika, gdy strumień wiadomości się połączy. Na przykład 0x03010003AABBCC to:
- 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 wstecznego zapisywania AccountKey), jeśli
dostawca może je uzyskać, powinny być też wysyłane do użytkownika, gdy strumień wiadomości
się połączy i za każdym razem, gdy adres zostanie zmieniony. Na przykład 0x03020006AABBCCDDEEFF to:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x02: wartość adresu BLE
- 0x0006: dane dodatkowe, długość 6
- 0xAABBCCDDEEFF: dane dodatkowe, adres BLE
Zaktualizowano baterię
W przypadku dostawców, którzy obsługują powiadomienia o baterii,
informacje o baterii mogą być też wysyłane za pomocą strumienia wiadomości. Gdy strumień wiadomości się połączy lub zmieni się wartość baterii, należy wysłać aktualizację. Sekcja danych dodatkowych
pakietu powinna zawierać te same dane co bajty
s + 2, s + 3, s + 4 podczas rozgłaszania danych o baterii przez BLE. Na przykład 0x0303000357417F to:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x03: wartość baterii
- 0x0003: dane dodatkowe, długość 3
- 0x57417F: dane dodatkowe, 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ę, nieznana bateria
Dostawcy mogą też aktualizować pozostały czas pracy na baterii (jeśli jest znany). 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 może to być 2 w przypadku uint16)
- 0xF0: dane dodatkowe, pozostały czas pracy na 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 prośbę zawierającą kod prośby o aktywne komponenty (0x05), w ciągu 1 sekundy powinna zostać zwrócona odpowiedź wskazująca bieżący stan dostawcy. Odpowiedź będzie używać kodu odpowiedzi na prośbę o aktywne komponenty (0x06) i zawierać dane dodatkowe wskazujące, które komponenty są dostępne.
W przypadku dostawcy z jednym komponentem dane dodatkowe powinny być ustawione na 0x00, jeśli komponent jest niedostępny. Może to być na przykład tryb oszczędzania baterii, w którym odtwarzanie multimediów nie będzie wykonywane. W przeciwnym razie dane dodatkowe powinny być ustawione na 0x01.
W przypadku zestawów słuchawkowych z wieloma komponentami (np. lewą i prawą słuchawką) każdy bit w danych dodatkowych wskazuje, czy dany komponent jest aktywny. Przykładem nieaktywnego komponentu może być słuchawka, która znajduje się w etui i nie jest używana. W przypadku lewej i prawej słuchawki:
- 0x00 (0b00000000): żadna słuchawka nie jest aktywna
- 0x01 (0b00000001): prawa słuchawka jest aktywna, lewa nieaktywna
- 0x02 (0b00000010): lewa słuchawka jest aktywna, prawa nieaktywna
- 0x03 (0b00000011): obie słuchawki są aktywne
Typ platformy
Dostawcy mogą chcieć działać inaczej w zależności od platformy, z którą są połączeni. Szybkie parowanie jest obecnie wykonywane tylko w Androidzie, 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 platformy. W Androidzie będzie odnosić się do wersji pakietu SDK. Na przykład Android Pie będzie miał wartość 28 (0x1C).
Wersja oprogramowania
Wersja oprogramowania dostawcy jako ciąg znaków w kodowaniu UTF-8. Są to te same informacje co w charakterystyce Firmware revision.
Bieżący efemeryczny identyfikator FHN
Dostawcy, którzy reklamują ramki FHN, powinni zgłaszać bieżący efemeryczny identyfikator FHN (EID) z bieżącą wartością zegara, aby zsynchronizować się z użytkownikiem w przypadku dryfu zegara (np. z powodu wyczerpania baterii).
Na przykład:
- 0x03: zdarzenie dotyczące informacji o urządzeniu
- 0x0B: bieżąca efemeryczna wiadomość z identyfikatorem FHN
- 0x0018: dane dodatkowe, długość 24 lub 36 bajtów
- 0x13F9EA80: dane dodatkowe (wartość zegara; 4 bajty)
- 0x1122334455667788990011223344556677889900: dane dodatkowe (bieżący identyfikator EID; 20 lub 32 bajty)