اطلاعات دستگاه
ارائه دهندگان می توانند از طریق جریان پیام به جستجوگر درباره اطلاعات دستگاه اطلاع دهند.
نام گروه پیام | ارزش |
---|---|
رویداد اطلاعات دستگاه | 0x03 |
اطلاعات دستگاه نام کد | ارزش |
---|---|
شناسه مدل | 0x01 |
آدرس BLE به روز شد | 0x02 |
باتری به روز شد | 0x03 |
زمان باقی مانده باتری | 0x04 |
درخواست اجزای فعال | 0x05 |
پاسخ اجزای فعال | 0x06 |
(منسوخ شده) قابلیت ها | 0x07 |
نوع پلت فرم | 0x08 |
نسخه سیستم عامل | 0x09 |
شناسه زودگذر FMDN فعلی | 0x0B |
شناسه مدل
هنگامی که RFCOMM متصل می شود، اطلاعات شناسه مدل (برای نوشتن عطف به ماسبق کردن حساب حساب ) باید به جستجوگر ارسال شود. به عنوان مثال، 0x03010003AABBCC
خواهد بود:
- 0x03: رویداد اطلاعات دستگاه
- 0x01: مقدار شناسه مدل
- 0x0003: داده های اضافی، طول 3
- 0xAABBCC: داده های اضافی، شناسه مدل
آدرس BLE
هنگام اتصال RFCOMM و هر زمان که آدرس چرخانده می شود، اطلاعات آدرس BLE (برای نوشتن عطف به ماسبق ، در صورت وجود، باید به جستجوگر ارسال شود. به عنوان مثال، 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): هر دو جوانه فعال هستند
نوع پلت فرم
ارائه دهندگان ممکن است بخواهند بر اساس پلتفرمی که به آن متصل هستند عملکرد متفاوتی داشته باشند. Fast Pair در حال حاضر فقط از طریق Android انجام می شود، اما ممکن است پشتیبانی در آینده گسترش یابد.
این پیام حاوی اولین بایت شناسایی کننده نوع پلت فرم در داده های اضافی خواهد بود:
نام پلتفرم | ارزش |
---|---|
اندروید | 0x01 |
بایت دوم در هر پلتفرم سفارشی می شود. در اندروید به نسخه SDK اشاره خواهد کرد. به عنوان مثال، Android Pie دارای مقدار 28 (0x1C) خواهد بود.
نسخه سیستم عامل
نسخه سیستم عامل ارائه دهنده به عنوان یک رشته در رمزگذاری utf-8. این همان اطلاعاتی است که در مشخصه بازبینی سیستم عامل وجود دارد.
شناسه زودگذر FMDN فعلی
ارائهدهندگانی که فریمهای FMDN را تبلیغ میکنند باید شناسه زودگذر FMDN (EID) فعلی را با مقدار ساعت فعلی خود گزارش دهند تا در صورت جابجایی ساعت (مثلاً به دلیل تخلیه باتری) با جستجوگر همگام شود.
مثلا:
- 0x03: رویداد اطلاعات دستگاه
- 0x0B: پیام شناسه زودگذر FMDN فعلی
- 0x0018: داده های اضافی، طول 24 یا 36 بایت
- 0x13F9EA80: داده های اضافی (مقدار ساعت؛ 4 بایت)
- 0x1122334455667788990011223344556677889900: داده های اضافی (EID فعلی؛ 20 یا 32 بایت)