Thông tin thiết bị

Nhà cung cấp có thể thông báo cho Người tìm thông tin về thiết bị thông qua luồng thông báo.

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 về thành phần đang hoạt động 0x06
(Không dùng nữa)Chức năng 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 hiện tại của FHN 0x0B

Mã kiểu máy

Thông tin mã nhận dạng mô hình (để Ghi lại AccountKey) sẽ được gửi đế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ị mã nhận dạng mẫu
  • 0x0003: Dữ liệu bổ sung, độ dài 3
  • 0xAABBCC: Dữ liệu bổ sung, mã mô hình

Địa chỉ BLE

Thông tin địa chỉ BLE (để Ghi lại AccountKey) (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í 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, độ dài 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 pin, bạn cũng có thể gửi thông tin pin 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 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, độ dài 3
  • 0x57417F: Dữ liệu bổ sung, giá trị pin
    • 0x57: Giá trị của tai nghe bên trái, không sạc, pin 87%
    • 0x41: Giá trị của tai nghe bên phải, không sạc, pin còn 65%
    • 0x7F: Giá trị trường hợp, 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 đối với uint16 nếu cần.)
  • 0xF0: Dữ liệu bổ sung, thời lượng pin còn lại tính bằng phút, 240 phút

Thành phần đang hoạt động

Đôi khi, trình tìm kiếm có thể muốn biết thành phần nào đang hoạt động, nghĩa là có thể thực hiện hành động trên các thành phần đó (xem phần Hành động 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), hệ thống sẽ trả về một phản hồi 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 sẽ sử dụng mã phản hồi thành phần đang hoạt động (0x06) và chứa dữ liệu bổ sung cho biết thành phần nào có sẵn.

Đối với Nhà cung cấp có một thành phần, dữ liệu bổ sung phải được đặt thành 0x00 nếu không có. Ví dụ: chế độ tiết kiệm pin sẽ không phát nội dung nghe nhìn. Nếu không, bạn phải đặt dữ liệu bổ sung thành 0x01.

Đối với tai nghe có nhiều thành phần (ví dụ: tai nghe bên trái và bên phải), mỗi bit trong dữ liệu bổ sung sẽ 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 nút đang ở trong hộp và không được sử dụng. Cụ thể đối với hộp đựng tai nghe trái và phải:

  • 0x00 (0b00000000): Cả hai tai nghe đều không hoạt động
  • 0x01 (0b00000001): Tai nghe bên phải đang hoạt động, tai nghe bên trái không hoạt động
  • 0x02 (0b00000010): Tai nghe trái đang hoạt động, tai nghe phải không hoạt động
  • 0x03 (0b00000011): Cả hai tai nghe đều đang hoạt động

Loại nền tảng

Nhà cung cấp có thể muốn thực hiện theo cách khác nhau dựa trên nền tảng mà họ được 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ể được mở rộng hỗ trợ trong tương lai.

Thông báo sẽ chứa một byte đầu tiên xác định loại nền tảng 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 từng nền tảng. Trong Android, thuộc tính này sẽ tham chiếu đế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 phần mềm của nhà cung cấp dưới dạng chuỗi được mã hoá utf-8. Đây là thông tin giống như trong Đặc điểm sửa đổi chương trình cơ sở.

Giá trị nhận dạng tạm thời hiện tại của FHN

Các nhà cung cấp quảng cáo khung FHN phải báo cáo Giá trị nhận dạng tạm thời (EID) của FHN hiện tại cùng 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ồ bị trễ (ví dụ: do pin đã cạn).

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 FHN 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ị xung nhịp; 4 byte)
  • 0x1122334455667788990011223344556677889900: Dữ liệu bổ sung (EID hiện tại; 20 hoặc 32 byte)