Thông tin thiết bị
Nhà cung cấp có thể thông báo cho Người tìm kiếm về thông tin thiết bị thông qua luồng tin nhắn.
Tên nhóm tin nhắn | Giá trị |
---|---|
Sự kiện thông tin thiết bị | 0x03 |
Tên mã thông tin thiết bị | Giá trị |
---|---|
Mã kiểu máy | 0x01 |
Đã cập nhật địa chỉ BLE | 0x02 |
Đã cập nhật pin | 0x03 |
Thời lượng pin còn lại | 0x04 |
Yêu cầu thành phần đang hoạt động | 0x05 |
Phản hồi của thành phần đang hoạt động | 0x06 |
Các chức năng (không dùng nữa) | 0x07 |
Loại nền tảng | 0x08 |
Phiên bản chương trình cơ sở | 0x09 |
Giá trị nhận dạng tạm thời FMDN hiện tại | 0x0 tỷ |
Mã kiểu máy
Thông tin về mã nhận dạng mô hình (dành cho tính năng Retroactively Write AccountKey) đến Trình tìm kiếm khi RFCOMM kết nối. Ví dụ: 0x03010003AABBCC
sẽ là:
- 0x03: Sự kiện thông tin thiết bị
- 0x01: Giá trị ID mô hình
- 0x0003: Dữ liệu bổ sung, thời lượng 3
- 0xAABBCC: Dữ liệu bổ sung, mã mô hình
Địa chỉ BLE
Thông tin địa chỉ BLE (dành cho Ghi lại từ khoá tài khoản) , nếu có, cũng phải được gửi đến Trình tìm kiếm khi RFCOMM kết nối và bất cứ khi nào địa chỉ được xoay vòng. Ví dụ: 0x03020006AABBCCDDEEFF
sẽ là:
- 0x03: Sự kiện thông tin thiết bị
- 0x02: Giá trị địa chỉ BLE
- 0x0006: Dữ liệu bổ sung, thời lượng 6
- 0xAABBCCDDEEFF: Dữ liệu bổ sung, địa chỉ BLE
Đã cập nhật pin
Đối với những Nhà cung cấp hỗ trợ thông báo về pin, thông tin về pin cũng có thể được gửi qua RFCOMM. Khi RFCOMM kết nối hoặc giá trị pin thay đổi, hệ thống sẽ gửi thông tin cập nhật. Phần dữ liệu bổ sung của gói phải chứa dữ liệu giống hệt với các byte s + 2, s + 3, s + 4 khi quảng cáo dữ liệu pin qua BLE. Ví dụ: 0x0303000357417F
sẽ là:
- 0x03: Sự kiện thông tin thiết bị
- 0x03: Giá trị pin
- 0x0003: Dữ liệu bổ sung, thời lượng 3
- 0x57417F: Dữ liệu bổ sung, giá trị pin
- 0x57: Giá trị tai nghe trái, không sạc, 87% pin
- 0x41: Giá trị Pixel Buds bên phải, không sạc, 65% pin
- 0x7F: Giá trị hộp đựng, không sạc, pin không xác định
Nhà cung cấp cũng có thể cập nhật thời lượng pin còn lại (nếu biết). Ví dụ: 0x03040001F0
sẽ là:
- 0x03: Sự kiện thông tin thiết bị
- 0x04: Thời lượng pin còn lại
- 0x0001: Dữ liệu bổ sung, độ dài 1 (có thể là 2 cho uint16 nếu cần.)
- 0xF0: Dữ liệu bổ sung, thời gian pin còn lại tính bằng phút, 240 phút
Thành phần đang hoạt động
Đôi khi, người tìm kiếm có thể muốn biết thành phần nào hiện đang hoạt động, nghĩa là có thể thực hiện một hành động đối với các thành phần đó (xem phần Thao tác trên thiết bị). Khi Nhà cung cấp nhận được một yêu cầu chứa mã yêu cầu thành phần đang hoạt động (0x05), một phản hồi sẽ được trả về trong vòng 1 giây cho biết trạng thái hiện tại của Nhà cung cấp. Phản hồi này sẽ sử dụng mã phản hồi của thành phần đang hoạt động (0x06) và chứa dữ liệu bổ sung cho biết những thành phần nào có sẵn.
Đối với Nhà cung cấp có một thành phần duy nhất, dữ liệu bổ sung phải được đặt thành 0x00 nếu không có sẵn. Một ví dụ của trường hợp này có thể là chế độ tiết kiệm pin, trong đó việc phát nội dung đa phương tiện sẽ không được thực hiện. Nếu không, dữ liệu bổ sung nên được đặt thành 0x01.
Đối với tai nghe có nhiều thành phần (ví dụ: tai nghe trái và phải), mỗi bit trong dữ liệu bổ sung cho biết thành phần đó có đang hoạt động hay không. Ví dụ về một thành phần không hoạt động có thể là một chồi nằm trong trường hợp này chứ không được sử dụng. Cụ thể đối với tai nghe trái và phải:
- 0x00 (0b00000000): Không có Bud hoạt động
- 0x01 (0b00000001): Tai nghe phải đang hoạt động, tai trái không hoạt động
- 0x02 (0b00000010): Pixel trái đang hoạt động, tai phải không hoạt động
- 0x03 (0b00000011): Cả hai chồi đang hoạt động
Loại nền tảng
Nhà cung cấp có thể muốn có hiệu suất khác đi dựa trên nền tảng mà họ kết nối. Tính năng Ghép nối nhanh hiện chỉ được thực hiện thông qua Android nhưng có thể sẽ mở rộng khả năng hỗ trợ trong tương lai.
Thông báo sẽ chứa loại nền tảng xác định byte đầu tiên trong dữ liệu bổ sung:
Tên nền tảng | Giá trị |
---|---|
Android | 0x01 |
Byte thứ hai sẽ được tuỳ chỉnh theo nền tảng. Trong Android, API này sẽ đề cập đến phiên bản SDK. Ví dụ: Android Pie sẽ có giá trị là 28 (0x1C).
Phiên bản chương trình cơ sở
Phiên bản chương trình cơ sở của nhà cung cấp dưới dạng một chuỗi trong mã hoá utf-8. Thông tin này giống với thông tin trong Đặc điểm sửa đổi chương trình cơ sở.
Số nhận dạng tạm thời FMDN hiện tại
Các nhà cung cấp quảng cáo khung FMDN phải báo cáo Giá trị nhận dạng tạm thời FMDN (EID) hiện tại với giá trị đồng hồ hiện tại để đồng bộ hoá với Trình tìm kiếm trong trường hợp đồng hồ trôi (ví dụ: do hết pin).
Ví dụ:
- 0x03: Sự kiện thông tin thiết bị
- 0x0B: Thông báo về giá trị nhận dạng tạm thời FMDN hiện tại
- 0x0018: Dữ liệu bổ sung, độ dài 24 hoặc 36 byte
- 0x13F9EA80: Dữ liệu bổ sung (giá trị đồng hồ; 4 byte)
- 0x1122334455667788990011223344556677889900: Dữ liệu bổ sung (EID hiện tại; 20 hoặc 32 byte)