裝置資訊

供應商可以透過訊息串流,向尋找者通知裝置資訊。

訊息群組名稱
裝置資訊事件 0 x 3
裝置資訊代碼名稱
模型 ID 0x01
已更新 BLE 地址 0 x 2
已更新電池 0 x 3
剩餘電量 0x04
有效元件要求 0x05
有效元件回應 0 x 6
(已淘汰) 功能 0 x 7
平台類型 0x08
韌體版本 0 x 9
目前的 FMDN 臨時 ID 0 x 00 億

模型 ID

當 RFCOMM 連線時,應將模型 ID 資訊 (用於回溯編寫 AccountKey) 傳送至 Seeker。例如,0x03010003AABBCC 會是:

  • 0x03:裝置資訊事件
  • 0x01:型號 ID 值
  • 0x0003:其他資料,長度 3
  • 0xAABBCC:其他資料,模型 ID

BLE 位址

如果有 BLE 位址資訊 (適用於回溯寫入 AccountKey),也應在 RFCOMM 連線時和每次旋轉位址時傳送給 Seeker。舉例來說,0x03020006AABBCCDDEEFF 會是:

  • 0x03:裝置資訊事件
  • 0x02:BLE 位址值
  • 0x0006:其他資料,長度 6
  • 0xAABBCCDDEEFF:其他資料,BLE 位址

已更新電池

如果供應商支援電池通知,也可以透過 RFCOMM 傳送電池資訊。當 RFCOMM 連線或電池值發生變更時,則應傳送更新。封包的其他資料部分在透過 BLE 宣傳電池資料時,應含有與 s + 2s + 3s + 4 相同的資料。舉例來說,0x0303000357417F 會是:

  • 0x03:裝置資訊事件
  • 0x03:電池值
  • 0x0003:其他資料,長度 3
  • 0x57417F:其他資料、電池值
    • 0x57:左耳機值、未充電,87% 電量
    • 0x41:右側耳機值、未充電,65% 電量
    • 0x7F:充電盒價值,未充電,電量不明

供應商也可以更新剩餘電量 (如果知道的話),例如 0x03040001F0 會是:

  • 0x03:裝置資訊事件
  • 0x04:剩餘電池時間
  • 0x0001:其他資料,長度 1 (如有需要,uint16 可為 2)。
  • 0xF0:其他資料,剩餘電量 (分鐘),240 分鐘

已啟用的元件

尋求者有時可能會想瞭解哪些元件目前為使用中,因而想知道可以對其採取行動 (請參閱「裝置動作」)。當提供者收到包含有效元件要求代碼 (0x05) 的要求時,應在 1 秒內傳回回應,說明提供者的目前狀態。回應會使用有效元件回應代碼 (0x06),並包含額外資料來指出可以使用哪些元件。

對於具有單一元件的提供者,如果沒有額外資料,則應設為 0x00。這可能就是無法執行媒體播放的低耗電模式。否則,其他資料應設為 0x01。

如果頭戴式裝置含有多個元件 (例如左右耳機),其他資料中的每一個位元都代表該元件是否處於使用中狀態。例如閒置元件、特別適用於左耳機和右耳機保護殼:

  • 0x00 (0b00000000):沒有使用中的耳機
  • 0x01 (0b00000001):右耳機使用中、左側閒置
  • 0x02 (0b00000010):左耳機使用中,右耳機已停用
  • 0x03 (0b00000011):左右耳機都在使用中

平台類型

供應商可能會希望根據連結的平台以不同方式執行服務。快速配對功能目前只能透過 Android 執行,但日後可能會擴大支援範圍。

該訊息的其他資料中會包含第一個位元組識別平台類型:

平台名稱
Android 0x01

第二個位元組會為每個平台自訂。在 Android 中,則是指 SDK 版本。舉例來說,Android Pie 的值為 28 (0x1C)。

韌體版本

供應商的韌體版本,作為 utf-8 編碼的字串。 而且與韌體修訂版本特性中相同。

目前的 FMDN 臨時 ID

通告 FMDN 影格的供應商應回報目前的 FMDN 臨時 ID (EID) 及其目前的時鐘值,以便在時鐘偏離 (例如電池耗電) 的情況下與 Seeker 同步。

例如:

  • 0x03:裝置資訊事件
  • 0x0B:目前的 FMDN 臨時 ID 訊息
  • 0x0018:其他資料,長度為 24 或 36 個位元組
  • 0x13F9EA80:其他資料 (時鐘值;4 個位元組)
  • 0x1122334455667788990011223344556677889900:其他資料 (目前 EID;20 或 32 個位元組)