Informazioni del dispositivo
I provider possono inviare una notifica a una persona che cerca informazioni sul dispositivo tramite il stream di messaggi.
Nome gruppo di messaggi | Valore |
---|---|
Evento informazioni del dispositivo | 0x03 |
Nome codice informazioni dispositivo | Valore |
---|---|
ID modello | 0x01 |
Indirizzo BLE aggiornato | 0x02 |
Batteria aggiornata | 0x03 |
Durata della batteria rimanente | 0x04 |
Richiesta di componenti attivi | 0x05 |
Risposta dei componenti attivi | 0x06 |
Funzionalità (deprecate) | 0x07 |
Tipo di piattaforma | 0x08 |
Versione firmware | 0x09 |
Identificatore temporaneo FMDN attuale | 0 x 0 MLD |
ID modello
Le informazioni sull'ID modello (per
Scrittura retroattiva AccountKey) devono essere inviate al richiedente quando RFCOMM si connette. Ad esempio, 0x03010003AABBCC
sarà:
- 0x03: Evento informazioni del dispositivo
- 0x01: valore dell'ID modello
- 0x0003: dati aggiuntivi, lunghezza 3
- 0xAABBCC: dati aggiuntivi, ID modello
Indirizzo BLE
Le informazioni sull'indirizzo BLE (per la chiave di account con scrittura retroattiva) , se disponibili, devono essere inviate al richiedente anche quando RFCOMM si connette e ogni volta che l'indirizzo viene ruotato. Ad esempio, 0x03020006AABBCCDDEEFF
sarebbe:
- 0x03: Evento informazioni del dispositivo
- 0x02: valore indirizzo BLE
- 0x0006: dati aggiuntivi, lunghezza 6
- 0xAABBCCDDEEFF: dati aggiuntivi, indirizzo BLE
Batteria aggiornata
Per i fornitori che supportano le notifiche sulla batteria, le informazioni sulla batteria possono essere inviate anche tramite RFCOMM. Quando RFCOMM si connette o il valore della batteria cambia, deve essere inviato un aggiornamento. La sezione dei dati aggiuntivi del pacchetto deve contenere dati identici ai byte S + 2, S + 3, S + 4 quando vengono pubblicizzati i dati della batteria tramite BLE. Ad esempio,0x0303000357417F
sarebbe:
- 0x03: Evento informazioni del dispositivo
- 0x03: valore della batteria
- 0x0003: dati aggiuntivi, lunghezza 3
- 0x57417F: dati aggiuntivi, valori della batteria
- 0x57: valore dell'auricolare sinistro, non in carica, batteria all'87%
- 0x41: valore dell'auricolare destro, non in carica, batteria al 65%
- 0x7F: valore della custodia, non in carica, batteria sconosciuta
I provider possono anche aggiornare il tempo rimanente della batteria (se noto), ad esempio,
0x03040001F0
sarebbe:
- 0x03: Evento informazioni del dispositivo
- 0x04: durata della batteria rimanente
- 0x0001: Dati aggiuntivi, lunghezza 1 (potrebbe essere 2 per uint16 se necessario).
- 0xF0: dati aggiuntivi, durata rimanente della batteria in minuti, 240 minuti
Componenti attivi
A volte gli utenti desiderano sapere quali componenti sono attualmente attivi, ovvero è possibile eseguire un'azione su di essi (vedi Azioni del dispositivo). Quando il provider riceve una richiesta contenente il codice della richiesta di componenti attivi (0x05), deve essere restituita una risposta entro un secondo con l'indicazione dello stato attuale del provider. La risposta utilizzerà il codice di risposta dei componenti attivi (0x06) e conterrà dati aggiuntivi che indicano i componenti disponibili.
Per un provider con un singolo componente, i dati aggiuntivi devono essere impostati su 0x00 se non sono disponibili. Un esempio potrebbe essere una modalità a basso consumo in cui non viene eseguita la riproduzione di contenuti multimediali. In caso contrario, i dati aggiuntivi devono essere impostati su 0x01.
Per le cuffie con più componenti (ad esempio, un auricolare destro e uno sinistro), ciascun bit nei dati aggiuntivi indica se quel componente è attivo. Un esempio di componente non attivo potrebbe essere un auricolare presente all'interno della custodia e non in uso. In particolare per la custodia degli auricolari sinistro e destro:
- 0x00 (0b00000000): Nessun auricolare attivo
- 0x01 (0b00000001): Auricolare destro attivo, sinistro inattivo
- 0x02 (0b00000010): Auricolare sinistro attivo, destro inattivo
- 0x03 (0b00000011): entrambi gli auricolari attivi
Tipo di piattaforma
I provider potrebbero voler operare in modo diverso a seconda della piattaforma a cui sono connessi. Al momento l'accoppiamento rapido viene eseguito solo tramite Android, ma il supporto potrebbe essere esteso in futuro.
Il messaggio conterrà un primo byte che identifica il tipo di piattaforma nei dati aggiuntivi:
Nome piattaforma | Valore |
---|---|
Android | 0x01 |
Il secondo byte verrà personalizzato in base alla piattaforma. In Android, farà riferimento alla versione dell'SDK. Ad esempio, Android Pie avrà un valore di 28 (0x1C).
Versione firmware
La versione del firmware del provider come stringa con codifica utf-8. Sono le stesse informazioni della caratteristica di revisione del firmware.
Identificatore temporaneo FMDN attuale
I fornitori che pubblicizzano frame FMDN devono indicare l'identificatore temporaneo FMDN Ephemeral Identifier (EID) corrente con il valore dell'orologio corrente da sincronizzare con il Seeker in caso di deviazione dell'orologio (ad esempio, a causa della batteria scarica).
Ad esempio:
- 0x03: Evento informazioni del dispositivo
- 0x0B: messaggio di identificatore temporaneo FMDN attuale
- 0x0018: dati aggiuntivi, lunghezza 24 o 36 byte
- 0x13F9EA80: Dati aggiuntivi (valore orologio; 4 byte)
- 0x1122334455667788990011223344556677889900: dati aggiuntivi (EID attuale; 20 o 32 byte)