عناصر التحكّم في الأجهزة القابلة للارتداء
تهدف عناصر التحكّم في الأجهزة القابلة للارتداء في ميزة "الإقران السريع" إلى توفير عناصر تحكّم أفضل في الوصول إلى الميزات المهمة في الأجهزة القابلة للارتداء على Android. ولتحقيق ذلك، تمت إضافة مجموعة رسائل جديدة باسم "عناصر التحكّم في الأجهزة القابلة للارتداء" (Hearable controls) ضمن "بث الرسائل" (Message Stream).
| اسم مجموعة الرسائل | القيمة |
|---|---|
| التحكّم في الأجهزة القابلة للارتداء | 0x08 |
التحكّم الفعّال بالضوضاء
يصبح التحكّم الفعّال بالضوضاء ميزة بارزة في سماعات الرأس المميّزة. من جهة الباحث، ستتضمّن ميزة "الإقران السريع" واجهة المستخدم والمنطق اللازمين لضبط الحالة والحصول عليها وحفظها، وسيتم تخزين الحالة من جهة موفِّر الخدمة. على موفِّر الخدمة إرسال Session Nonce عند الاتصال ببث الأحداث. ولتحقيق ذلك، تم تحديد رموز الرسائل التالية:
| اسم رمز الرسالة | القيمة | المُرسِل | المجيب | MAC | ACK |
|---|---|---|---|---|---|
| الحصول على حالة التحكّم الفعّال بالضوضاء | 0x11 | الباحث | موفِّر الخدمة | لا | لا |
| ضبط حالة التحكّم الفعّال بالضوضاء | 0x12 | الباحث | موفِّر الخدمة | نعم | نعم |
| إشعار حالة التحكّم الفعّال بالضوضاء | 0x13 | موفِّر الخدمة | الباحث | لا | لا |
عندما يتصل الباحث بموفِّر الخدمة، أو عندما يتلقّى موفِّر الخدمة رسالة "الحصول على حالة التحكّم الفعّال بالضوضاء"، يمكن لموفِّر الخدمة إشعار حالة التحكّم الفعّال بالضوضاء لإعلام الباحث بإمكانية التحكّم الفعّال بالضوضاء وحالته المخزّنة. الرسالة هي كما يلي:
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | التحكّم في الأجهزة القابلة للارتداء | 0x08 |
| 1 | uint8 | إشعار حالة التحكّم الفعّال بالضوضاء | 0x13 |
| 2 - 3 | uint16 | طول البيانات الإضافية | 0x04 |
| 4 - 7 | بيانات التحكّم الفعّال بالضوضاء | تختلف |
بيانات التحكّم الفعّال بالضوضاء
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رمز الإصدار | يختلف ، 0x02 لهذا الإصدار |
| 1 | أعلام | مفاتيح التبديل في واجهة المستخدم يتم تفعيل كل وضع (1) أو إيقافه (0) وفقًا لقيمة وحدة بت العلم، على النحو التالي: وحدة البت 0 (أعلى وحدة بت): الوضع الشفاف وحدة البت 1: الوضع التكيّفي (أو 0 إذا لم يكن متاحًا) وحدة البت 2: إيقاف وحدة البت 3: محجوزة (اضبط وحدة البت على 0) وحدة البت 4: التحكّم الفعّال بالضوضاء |
تختلف |
| 2 | أعلام | مفاتيح التبديل القابلة للضبط يمكن أيضًا ضبط أي من وحدات بت مفتاح التبديل في واجهة المستخدم أعلاه أو جميعها هنا للإشارة إلى المفاتيح المفعّلة حاليًا. |
تختلف |
| 3 | أعلام | الحالة الحالية يمكن ضبط وحدة بت واحدة فقط ويجب أن تكون قيمة هذا البايت غير صفرية. |
تختلف |
سيعرض الباحث واجهة مستخدم مفتاح التبديل وفقًا لبيانات التحكّم الفعّال بالضوضاء.
المثال 1: يتيح موفِّر الخدمة التحكّم الفعّال بالضوضاء بثلاث طرق: الوضع الشفاف - إيقاف - التحكّم الفعّال بالضوضاء، وسماعات الأذن موضوعة على الرأس، ويمكن ضبط جميع الأوضاع الآن، والحالة الحالية هي "إيقاف":
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رمز الإصدار | 0x02 |
| 1 | أعلام | مفاتيح التبديل في واجهة المستخدم | 0b10101000 |
| 2 | أعلام | مفاتيح التبديل القابلة للضبط | 0b10101000 |
| 3 | أعلام | الحالة الحالية | 0b00100000 |
المثال 2: يتيح موفِّر الخدمة التحكّم الفعّال بالضوضاء بثلاث طرق: الوضع الشفاف - إيقاف - التحكّم الفعّال بالضوضاء، وسماعة أذن واحدة فقط موضوعة على الرأس أو لا توجد سماعات أذن موضوعة على الرأس، لذا لا يمكن ضبط أي أوضاع، والحالة الحالية هي "إيقاف":
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رمز الإصدار | 0x02 |
| 1 | أعلام | مفتاح التبديل في واجهة المستخدم | 0b10101000 |
| 2 | أعلام | مفتاح التبديل القابل للضبط | 0b00000000 |
| 3 | أعلام | الحالة الحالية | 0b00100000 |
إذا بدّل المستخدم مفتاح التبديل، سيضبط الباحث الحالة الحالية لموفِّر الخدمة على النحو التالي:
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | التحكّم في الأجهزة القابلة للارتداء | 0x08 |
| 1 | uint8 | ضبط حالة التحكّم الفعّال بالضوضاء | 0x12 |
| 2 - 3 | uint16 | طول البيانات الإضافية | يختلف، 0x04 أو 0x14 |
| 4 | uint8 | رمز إصدار الباحث | يختلف، 0x01 أو 0x02 |
| 5 | أعلام | الأوضاع القابلة للضبط في التحكّم الفعّال بالضوضاء (مفتاح التبديل في واجهة المستخدم) | تختلف |
| 6 | أعلام | الأوضاع المفعّلة في التحكّم الفعّال بالضوضاء (مفتاح التبديل القابل للضبط) | تختلف |
| 7 | أعلام | فهرس وضع التحكّم الفعّال بالضوضاء الجديد (الحالة الجديدة) | تختلف |
| 8 - 23 | تم الحجز | تختلف |
البايت 4 - 7 هي في الواقع بيانات التحكّم الفعّال بالضوضاء التي يتم إرسالها من جهة الباحث. إذا تم ضبط قيمة الطول الإضافي على 0x14، ستظهر البايتات المحجوزة 8-23، وعلى موفِّر الخدمة تجاهلها عند استلامها. إذا تم ضبط قيمة الطول الإضافي على 0x04، لن تظهر أي بايتات محجوزة.
عندما يتلقّى موفِّر الخدمة رسالة "ضبط حالة التحكّم الفعّال بالضوضاء"، عليه إرسال إقرار، وإشعار حالة التحكّم الفعّال بالضوضاء إلى جميع الباحثين المتصلين. إذا غيّر المستخدم الإعداد من خلال إيماءة سماعة الرأس أو التطبيق المصاحب، على موفِّر الخدمة أيضًا إرسال إشعار إلى جميع الباحثين المتصلين.
المثال 3: يتيح موفِّر الخدمة التحكّم الفعّال بالضوضاء بأربع طرق: الوضع الشفاف - الوضع التكيّفي - إيقاف - التحكّم الفعّال بالضوضاء، وسماعات الأذن موضوعة على الرأس، ويمكن ضبط جميع الأوضاع الآن، والحالة الحالية هي "الوضع التكيّفي":
| Byte | نوع البيانات | الوصف | القيمة |
|---|---|---|---|
| 0 | uint8 | رمز الإصدار | 0x02 |
| 1 | أعلام | مفتاح التبديل في واجهة المستخدم | 0b11101000 |
| 2 | أعلام | مفتاح التبديل القابل للضبط | 0b11101000 |
| 3 | أعلام | الحالة الحالية | 0b01000000 |