chrome.hid

الوصف

استخدِم واجهة برمجة التطبيقات chrome.hid للتفاعل مع أجهزة HID المتصلة. تتيح واجهة برمجة التطبيقات هذه الوصول إلى عمليات HID من داخل سياق التطبيق. وباستخدامها، يمكن للتطبيقات أن تعمل كبرامج تشغيل للأجهزة. يتم الإبلاغ عن الأخطاء التي تنشأ عن واجهة برمجة التطبيقات هذه من خلال ضبط runtime.lastError وتنفيذ معاودة الاتصال العادية للدالة. في هذه الحالة، ستكون المَعلمات العادية لدالة معاودة الاتصال غير محدّدة.

الأذونات

hid

الأنواع

DeviceFilter

الخصائص

  • productId

    number اختياري

    معرّف المنتج للجهاز، ويتم التحقّق منه فقط إذا تطابق معرّف المورّد.

  • الاستخدام

    number اختياري

    معرّف استخدام HID، يتم التحقّق منه فقط إذا كانت صفحة استخدام HID متطابقة.

  • usagePage

    number اختياري

    معرّف صفحة استخدام HID

  • vendorId

    number اختياري

    معرّف مورّد الجهاز

GetDevicesOptions

الخصائص

  • الفلاتر

    DeviceFilter[] اختياري

    سيتم عرض جهاز يطابق أي فلتر محدّد. ستعرض قائمة الفلاتر الفارغة جميع الأجهزة التي حصل التطبيق على إذن الوصول إليها.

  • productId

    number اختياري

    تم إيقافها نهائيًا

    هذا التوجيه مكافئ لضبط DeviceFilter.productId.

  • vendorId

    number اختياري

    تم إيقافها نهائيًا

    هذا التوجيه مكافئ لضبط DeviceFilter.vendorId.

HidCollectionInfo

الخصائص

  • reportIds

    number[]

    أرقام تعريف التقارير التي تنتمي إلى المجموعة وإلى عناصرها الفرعية

  • الاستخدام

    الرقم

    معرّف الاستخدام الذي تحدّده الصفحة.

  • usagePage

    الرقم

    معرّف صفحة استخدام HID

HidConnectInfo

الخصائص

  • connectionId

    الرقم

    المعرّف غير الشفاف المستخدَم لتحديد هذا الاتصال في جميع الدوال الأخرى

HidDeviceInfo

الخصائص

  • مجموعات

    المجموعات ذات المستوى الأعلى من واصفات التقارير لهذا الجهاز

  • deviceId

    الرقم

    معرّف الجهاز غير الشفاف

  • maxFeatureReportSize

    الرقم

    الحدّ الأقصى لحجم تقرير الميزات في المجموعة ذات المستوى الأعلى.

  • maxInputReportSize

    الرقم

    الحدّ الأقصى لحجم تقرير الإدخال للمجموعة ذات المستوى الأعلى

  • maxOutputReportSize

    الرقم

    الحدّ الأقصى لحجم تقرير الناتج لمجموعة المستوى الأعلى

  • productId

    الرقم

    معرّف المنتج

  • productName

    سلسلة

    Chrome 46 والإصدارات الأحدث

    اسم المنتج الذي تم استخراجه من الجهاز، إذا كان متاحًا

  • reportDescriptor

    ArrayBuffer

    واصف تقرير الجهاز الأوّلي (غير متوفّر على أجهزة Windows)

  • serialNumber

    سلسلة

    Chrome 46 والإصدارات الأحدث

    الرقم التسلسلي الذي تمّت قراءته من الجهاز، إذا كان متاحًا

  • vendorId

    الرقم

    معرّف المورّد

الطُرق

connect()

الوعد
chrome.hid.connect(
  deviceId: number,
  callback?: function,
)
: Promise<HidConnectInfo>

فتح اتصال بجهاز HID للتواصل

المعلمات

  • deviceId

    الرقم

    HidDeviceInfo.deviceId الجهاز الذي تريد فتحه

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (connection: HidConnectInfo) => void

المرتجعات

  • الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

disconnect()

الوعد
chrome.hid.disconnect(
  connectionId: number,
  callback?: function,
)
: Promise<void>

إلغاء الربط بجهاز إنّ استدعاء العمليات على جهاز بعد استدعاء هذا الإجراء آمن ولكن ليس له أي تأثير.

المعلمات

  • connectionId

    الرقم

    المبلغ connectionId الذي تم إرجاعه من قِبل connect

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

getDevices()

الوعد
chrome.hid.getDevices(
  options: GetDevicesOptions,
  callback?: function,
)
: Promise<HidDeviceInfo[]>

تعداد أجهزة HID المتصلة

المعلمات

  • الخيارات

    الخصائص التي سيتم البحث عنها على الأجهزة المستهدَفة

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (devices: HidDeviceInfo[]) => void

المرتجعات

  • Promise<HidDeviceInfo[]>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

receive()

chrome.hid.receive(
  connectionId: number,
  callback: function,
)
: void

تلقّي تقرير الإدخال التالي من الجهاز

المعلمات

  • connectionId

    الرقم

    المبلغ connectionId الذي تم إرجاعه من قِبل connect

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (reportId: number, data: ArrayBuffer) => void

    • reportId

      الرقم

      معرّف التقرير أو 0 إذا لم يكن هناك معرّف

    • البيانات

      ArrayBuffer

      تتم إزالة بيانات التقرير وبادئة معرّف التقرير (إذا كانت متوفرة).

receiveFeatureReport()

الوعد
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)
: Promise<ArrayBuffer>

طلب تقرير ميزة من الجهاز

المعلمات

  • connectionId

    الرقم

    المبلغ connectionId الذي تم إرجاعه من قِبل connect

  • reportId

    الرقم

    معرّف التقرير، أو 0 إذا لم يكن متوفّرًا

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (data: ArrayBuffer) => void

    • البيانات

      ArrayBuffer

      بيانات التقرير، بما في ذلك بادئة معرّف التقرير إذا أرسلها الجهاز

المرتجعات

  • Promise<ArrayBuffer>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

send()

الوعد
chrome.hid.send(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

إرسال تقرير إخراج إلى الجهاز

ملاحظة: لا تُدرِج بادئة رقم تعريف التقرير في data. ستتم إضافته إذا لزم الأمر.

المعلمات

  • connectionId

    الرقم

    المبلغ connectionId الذي تم إرجاعه من قِبل connect

  • reportId

    الرقم

    معرّف التقرير المطلوب استخدامه، أو 0 إذا لم يكن هناك معرّف

  • البيانات

    ArrayBuffer

    بيانات التقرير

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

sendFeatureReport()

الوعد
chrome.hid.sendFeatureReport(
  connectionId: number,
  reportId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<void>

إرسال تقرير ميزة إلى الجهاز

ملاحظة: لا تُدرِج بادئة رقم تعريف التقرير في data. ستتم إضافته إذا لزم الأمر.

المعلمات

  • connectionId

    الرقم

    المبلغ connectionId الذي تم إرجاعه من قِبل connect

  • reportId

    الرقم

    معرّف التقرير المطلوب استخدامه، أو 0 إذا لم يكن هناك معرّف

  • البيانات

    ArrayBuffer

    بيانات التقرير

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    الإصدار 117 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

الفعاليات

onDeviceAdded

chrome.hid.onDeviceAdded.addListener(
  callback: function,
)

حدث يتم إنشاؤه عند إضافة جهاز إلى النظام. يتم بث الأحداث فقط إلى التطبيقات والإضافات التي لديها إذن بالوصول إلى الجهاز. ربما تم منح الإذن في وقت التثبيت أو عندما وافق المستخدم على إذن اختياري (راجِع permissions.request).

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (device: HidDeviceInfo) => void

onDeviceRemoved

chrome.hid.onDeviceRemoved.addListener(
  callback: function,
)

حدث يتم إنشاؤه عند إزالة جهاز من النظام. اطّلِع على onDeviceAdded لمعرفة الأحداث التي يتمّ إرسالها.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (deviceId: number) => void

    • deviceId

      الرقم