ข้อมูลอุปกรณ์
ผู้ให้บริการสามารถแจ้งข้อมูลอุปกรณ์แก่ผู้ค้นหาได้ผ่านสตรีมข้อความ
ชื่อกลุ่มข้อความ | ค่า |
---|---|
เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์ | 0x03 |
ชื่อรหัสข้อมูลอุปกรณ์ | ค่า |
---|---|
รหัสโมเดล | 0x01 |
อัปเดตที่อยู่ BLE แล้ว | 0x02 |
แบตเตอรี่อัปเดตแล้ว | 0x03 |
เวลาที่เหลือของแบตเตอรี่ | 0x04 |
คำขอคอมโพเนนต์ที่ใช้งานอยู่ | 0x05 |
การตอบสนองของคอมโพเนนต์ที่ใช้งานอยู่ | 0x06 |
(เลิกใช้งานแล้ว) ความสามารถ | 0x07 |
ประเภทแพลตฟอร์ม | 0x08 |
เวอร์ชันเฟิร์มแวร์ | 0x09 |
ตัวระบุชั่วคราวปัจจุบันของ FHN | 0x0B |
รหัสโมเดล
ข้อมูลรหัสรุ่น (สําหรับการเขียน AccountKey ย้อนหลัง) ควรส่งไปยัง Seeker เมื่อ RFCOMM เชื่อมต่อ เช่น 0x03010003AABBCC
จะมีลักษณะดังนี้
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x01: ค่ารหัสรุ่น
- 0x0003: ข้อมูลเพิ่มเติม ความยาว 3
- 0xAABBCC: ข้อมูลเพิ่มเติม รหัสรุ่น
ที่อยู่ BLE
ข้อมูลที่อยู่ BLE (สําหรับการเขียน AccountKey ย้อนหลัง) หากมี ควรส่งไปยังอุปกรณ์ค้นหาเมื่อ 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
สำหรับชุดหูฟังที่มีหลายองค์ประกอบ (เช่น หูฟังข้างซ้ายและขวา) แต่ละบิตในข้อมูลเพิ่มเติมจะแสดงว่าองค์ประกอบนั้นทำงานอยู่หรือไม่ ตัวอย่างของคอมโพเนนต์ที่ไม่มีการใช้งานอาจเป็นหูฟังที่อยู่ในเคสและไม่ได้ใช้งาน สำหรับเคสของหูฟังข้างซ้ายและขวาโดยเฉพาะ ให้ทำดังนี้
- 0x00 (0b00000000): ไม่มีหูฟังใดทำงานอยู่
- 0x01 (0b00000001): หูฟังเอียร์บัดข้างขวาทำงานอยู่ ส่วนข้างซ้ายไม่ทำงาน
- 0x02 (0b00000010): หูฟังเอียร์บัดซ้ายทำงานอยู่ ส่วนขวาไม่ทำงาน
- 0x03 (0b00000011): หูฟังเอียร์บัดทั้ง 2 ข้างทำงานอยู่
ประเภทแพลตฟอร์ม
ผู้ให้บริการอาจต้องการดำเนินการแตกต่างกันไปตามแพลตฟอร์มที่เชื่อมต่ออยู่ ปัจจุบันการจับคู่ด่วนทำได้ผ่าน Android เท่านั้น แต่อาจรองรับอุปกรณ์อื่นๆ เพิ่มเติมในอนาคต
ข้อความจะมีไบต์แรกระบุประเภทแพลตฟอร์มในข้อมูลเพิ่มเติม ดังนี้
ชื่อแพลตฟอร์ม | ค่า |
---|---|
Android | 0x01 |
ระบบจะปรับแต่งไบต์ที่ 2 ตามแพลตฟอร์ม ใน Android ข้อมูลนี้จะหมายถึงเวอร์ชัน SDK ตัวอย่างเช่น Android Pie จะมีค่าเป็น 28 (0x1C)
เวอร์ชันเฟิร์มแวร์
เวอร์ชันเฟิร์มแวร์ของผู้ให้บริการเป็นสตริงที่เข้ารหัส UTF-8 ซึ่งเป็นข้อมูลเดียวกับในลักษณะการแก้ไขเฟิร์มแวร์
ตัวระบุชั่วคราวของ FHN ปัจจุบัน
ผู้ให้บริการที่โฆษณาเฟรม FHN ควรรายงานตัวระบุชั่วคราว (EID) ของ FHN ปัจจุบันพร้อมค่านาฬิกาปัจจุบันเพื่อซิงค์กับเครื่องมือค้นหาในกรณีที่นาฬิกาเดินช้า (เช่น เนื่องจากแบตเตอรี่หมด)
เช่น
- 0x03: เหตุการณ์เกี่ยวกับข้อมูลอุปกรณ์
- 0x0B: ข้อความตัวระบุชั่วคราวปัจจุบันของ FHN
- 0x0018: ข้อมูลเพิ่มเติม ความยาว 24 หรือ 36 ไบต์
- 0x13F9EA80: ข้อมูลเพิ่มเติม (ค่านาฬิกา 4 ไบต์)
- 0x1122334455667788990011223344556677889900: ข้อมูลเพิ่มเติม (EID ปัจจุบัน 20 หรือ 32 ไบต์)