ข้อมูลอุปกรณ์
ผู้ให้บริการสามารถแจ้งผู้ส่งคำขอเกี่ยวกับข้อมูลอุปกรณ์ผ่านสตรีมข้อความได้
ชื่อกลุ่มข้อความ | ค่า |
---|---|
เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์ | 0x03 |
ชื่อรหัสข้อมูลอุปกรณ์ | ค่า |
---|---|
รหัสโมเดล | 0x01 |
อัปเดตที่อยู่ BLE แล้ว | 0x02 |
อัปเดตแบตเตอรี่แล้ว | 0x03 |
เวลาแบตเตอรี่ที่เหลือ | 0x04 |
คำขอคอมโพเนนต์ที่ใช้งานอยู่ | 0x05 |
การตอบสนองของคอมโพเนนต์ที่ใช้งานอยู่ | 0x06 |
ความสามารถ (เลิกใช้งาน) | 0x07 |
ประเภทแพลตฟอร์ม | 0x08 |
เวอร์ชันเฟิร์มแวร์ | 0x09 |
ตัวระบุชั่วคราวของ FMDN ปัจจุบัน | 0x0 พันล้าน |
รหัสโมเดล
ควรส่งข้อมูลรหัสโมเดล (สำหรับ
Retroactively Writing AccountKey) ไปยัง Seeker เมื่อเชื่อมต่อ RFCOMM ตัวอย่างเช่น 0x03010003AABBCC
จะเป็นดังนี้
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x01: ค่ารหัสโมเดล
- 0x0003: ข้อมูลเพิ่มเติม ความยาว 3
- 0xAABBCC: ข้อมูลเพิ่มเติม, รหัสโมเดล
ที่อยู่ BLE
ข้อมูลที่อยู่ BLE (สำหรับ
Retroactively Writing AccountKey) หากมี
ควรส่งไปยัง Seeker เมื่อเชื่อมต่อ RFCOMM เชื่อมต่อและเมื่อใดก็ตามที่
มีการหมุนที่อยู่ ตัวอย่างเช่น 0x03020006AABBCCDDEEFF
จะเป็นดังนี้
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x02: ค่าที่อยู่ BLE
- 0x0006: ข้อมูลเพิ่มเติม ความยาว 6
- 0xAABBCCDDEEFF: ข้อมูลเพิ่มเติม ที่อยู่ BLE
อัปเดตแบตเตอรี่แล้ว
สำหรับผู้ให้บริการที่รองรับการแจ้งเตือนแบตเตอรี่
คุณส่งข้อมูลแบตเตอรี่ผ่าน RFCOMM ได้ด้วย เมื่อมีการเชื่อมต่อ RFCOMM หรือ
ค่าแบตเตอรี่เปลี่ยนแปลง คุณควรส่งอัปเดต ส่วนข้อมูลเพิ่มเติมของแพ็กเก็ตควรมีข้อมูลที่เหมือนกันกับจำนวนไบต์ s + 2, s + 3, s + 4 เมื่อแสดงโฆษณาแบตเตอรี่ผ่าน BLE ตัวอย่างเช่น 0x0303000357417F
จะเป็น
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x03: ค่าแบตเตอรี่
- 0x0003: ข้อมูลเพิ่มเติม ความยาว 3
- 0x57417F: ข้อมูลเพิ่มเติม, ค่าแบตเตอรี่
- 0x57: ค่าของหูฟังข้างซ้าย, ไม่ชาร์จ, แบตเตอรี่ 87%
- 0x41: ค่าหูฟังข้างขวา, ไม่ชาร์จ, แบตเตอรี่ 65%
- 0x7F: มูลค่าของเคส, ไม่ชาร์จ, ไม่ทราบแบตเตอรี่
ผู้ให้บริการยังสามารถอัปเดตเวลาแบตเตอรี่ที่เหลืออยู่ (หากทราบ) ได้ด้วย ตัวอย่างเช่น 0x03040001F0
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x04: เวลาแบตเตอรี่ที่เหลือ
- 0x0001: ข้อมูลเพิ่มเติม ความยาว 1 (อาจเท่ากับ 2 สำหรับ uint16 หากจำเป็น)
- 0xF0: ข้อมูลเพิ่มเติม, เวลาแบตเตอรี่ที่เหลือในหน่วยนาที, 240 นาที
คอมโพเนนต์ที่ใช้งานอยู่
บางครั้งผู้ค้นหาอาจต้องการทราบว่าคอมโพเนนต์ใดทำงานอยู่ในขณะนั้น ซึ่งหมายความว่าดำเนินการกับคอมโพเนนต์ดังกล่าวได้ (ดูการทำงานของอุปกรณ์) เมื่อผู้ให้บริการได้รับคำขอที่มีรหัสคำขอคอมโพเนนต์ที่ใช้งานอยู่ (0x05) การตอบกลับควรแสดงขึ้นภายใน 1 วินาทีเพื่อแสดงถึงสถานะปัจจุบันของผู้ให้บริการ การตอบสนองจะใช้โค้ดการตอบสนองของคอมโพเนนต์ที่ใช้งานอยู่ (0x06) และมีข้อมูลเพิ่มเติมที่ระบุว่าคอมโพเนนต์ใดใช้งานได้
สำหรับผู้ให้บริการที่มีคอมโพเนนต์เดียว ควรตั้งค่าข้อมูลเพิ่มเติมเป็น 0x00 หากไม่มีข้อมูล เช่น โหมดใช้พลังงานต่ำซึ่งจะไม่มีการเล่นสื่อ หรือไม่เช่นนั้น ข้อมูลเพิ่มเติมควรตั้งค่าเป็น 0x01
สำหรับชุดหูฟังที่มีหลายคอมโพเนนต์ (เช่น หูฟังเอียร์บัดข้างซ้ายและขวา) แต่ละบิตในข้อมูลเพิ่มเติมจะแสดงว่าคอมโพเนนต์นั้นทำงานอยู่หรือไม่ ตัวอย่างของคอมโพเนนต์ที่ไม่ได้ใช้งานอาจเป็น Buds ซึ่งอยู่ในกล่องและไม่ได้ใช้งาน สำหรับเคสหูฟังข้างซ้ายและขวาโดยเฉพาะ
- 0x00 (0b00000000): ไม่มีการใช้งานหูฟังเอียร์บัด
- 0x01 (0b00000001): หูฟังเอียร์บัดข้างขวาใช้งานอยู่ ไม่ได้ใช้งาน
- 0x02 (0b00000010): หูฟังเอียร์บัดข้างซ้ายใช้งานอยู่ ไม่ได้ใช้งานข้างขวา
- 0x03 (0b00000011): หูฟังเอียร์บัดทั้ง 2 ข้างใช้งานอยู่
ประเภทแพลตฟอร์ม
ผู้ให้บริการอาจต้องการดำเนินการแตกต่างกันไปตามแพลตฟอร์มที่เชื่อมต่อ ปัจจุบันฟีเจอร์จับคู่ด่วนจะดำเนินการผ่าน Android เท่านั้น แต่อาจมีการขยายการรองรับในอนาคต
ข้อความจะมีไบต์แรกที่ระบุประเภทแพลตฟอร์มในข้อมูลเพิ่มเติม
ชื่อแพลตฟอร์ม | ค่า |
---|---|
Android | 0x01 |
ระบบจะปรับแต่งไบต์ที่ 2 ตามแพลตฟอร์ม ใน Android หน้าจอจะหมายถึงเวอร์ชัน SDK ตัวอย่างเช่น Android Pie จะมีค่าเป็น 28 (0x1C)
เวอร์ชันเฟิร์มแวร์
เวอร์ชันเฟิร์มแวร์ของผู้ให้บริการเป็นสตริงในการเข้ารหัส utf-8 ซึ่งเป็นข้อมูลเดียวกับในลักษณะการแก้ไขเฟิร์มแวร์
ตัวระบุชั่วคราวของ FMDN ปัจจุบัน
ผู้ให้บริการที่โฆษณาเฟรม FMDN ควรรายงานตัวระบุชั่วคราว (EID) ของ FMDN ปัจจุบันพร้อมกับค่านาฬิกาปัจจุบันเพื่อซิงค์กับผู้ขอในกรณีที่นาฬิกาเลื่อน (เช่น เนื่องจากแบตเตอรี่หมด)
เช่น
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x0B: ข้อความตัวระบุชั่วคราวของ FMDN ปัจจุบัน
- 0x0018: ข้อมูลเพิ่มเติม ความยาว 24 หรือ 36 ไบต์
- 0x13F9EA80: ข้อมูลเพิ่มเติม (ค่านาฬิกา 4 ไบต์)
- 0x1122334455667788990011223344556677889900: ข้อมูลเพิ่มเติม (EID ปัจจุบัน 20 หรือ 32 ไบต์)