chrome.hid

شرح

از chrome.hid API برای تعامل با دستگاه‌های HID متصل استفاده کنید. این میانای برنامه‌سازی کاربردی دسترسی به عملیات HID را از درون بافتار برنامه فراهم می‌کند. بااستفاده از این میانای برنامه‌سازی کاربردی، برنامه‌ها می‌توانند به‌عنوان درایور برای دستگاه‌های سخت‌افزاری عمل کنند. خطاهای تولیدشده توسط این میانای برنامه‌سازی کاربردی با تنظیم runtime.lastError و اجرای فراخوانی برگشتی معمول تابع گزارش می‌شود. در این حالت، پارامترهای عادی فراخوانی برگشتی تعریف‌نشده خواهند بود.

اجازه‌ها

hid

انواع

DeviceFilter

مشخصات

  • productId

    شماره اختیاری

    شناسه محصول دستگاه، فقط درصورتی بررسی می‌شود که شناسه ارائه‌دهنده مطابقت داشته باشد.

  • مصرف

    شماره اختیاری

    شناسه استفاده از HID، فقط درصورتی بررسی می‌شود که صفحه استفاده از HID مطابقت داشته باشد.

  • usagePage

    شماره اختیاری

    شناسه صفحه استفاده از HID.

  • vendorId

    شماره اختیاری

    شناسه فروشنده دستگاه.

GetDevicesOptions

مشخصات

  • فیلترها

    DeviceFilter[] اختیاری

    دستگاهی که با هریک از فیلترهای ارائه‌شده مطابقت داشته باشد برگردانده خواهد شد. فهرست فیلتر خالی همه دستگاه‌هایی را که برنامه برای آن‌ها اجازه دارد برمی‌گرداند.

  • productId

    شماره اختیاری

    منسوخ‌شده

    معادل تنظیم DeviceFilter.productId.

  • vendorId

    شماره اختیاری

    منسوخ‌شده

    معادل تنظیم DeviceFilter.vendorId.

HidCollectionInfo

مشخصات

  • reportIds

    عدد[]

    شناسه‌های گزارش که به مجموعه و فرزندان آن تعلق دارد.

  • مصرف

    شماره

    شناسه استفاده تعریف‌شده توسط صفحه.

  • usagePage

    شماره

    شناسه صفحه استفاده از HID.

HidConnectInfo

مشخصات

  • connectionId

    شماره

    شناسه مبهمی که برای شناسایی این اتصال در همه عملکردهای دیگر استفاده می‌شود.

HidDeviceInfo

مشخصات

  • مجموعه‌ها

    مجموعه‌های سطح بالا از توصیف‌کننده‌های گزارش این دستگاه.

  • deviceId

    شماره

    شناسه دستگاه مبهم.

  • maxFeatureReportSize

    شماره

    حداکثر اندازه گزارش ویژگی مجموعه سطح بالا.

  • maxInputReportSize

    شماره

    حداکثر اندازه گزارش ورودی مجموعه سطح بالا.

  • maxOutputReportSize

    شماره

    حداکثر اندازه گزارش برونداد مجموعه سطح بالا.

  • productId

    شماره

    شناسه محصول.

  • productName

    رشته

    Chrome نسخه ۴۶ و بالاتر

    نام محصول خوانده‌شده از دستگاه، درصورت وجود.

  • reportDescriptor

    ArrayBuffer

    توصیف‌کننده گزارش دستگاه خام (در Windows دردسترس نیست).

  • serialNumber

    رشته

    Chrome نسخه ۴۶ و بالاتر

    شماره سریال خوانده‌شده از دستگاه، درصورت وجود.

  • vendorId

    شماره

    شناسه ارائه‌دهنده.

روش‌ها

connect()

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

اتصالی به دستگاه HID برای برقراری ارتباط باز کنید.

پارامترها

  • deviceId

    شماره

    HidDeviceInfo.deviceId دستگاه برای باز کردن.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (connection: HidConnectInfo) => void

بازگشتی‌ها

  • Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

disconnect()

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

قطع اتصال از دستگاه. فراخوانی عملیات در دستگاه پس‌از فراخوانی این مورد ایمن است اما تأثیری ندارد.

پارامترها

  • connectionId

    شماره

    ‫connectionId توسط connect برگردانده شد.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

getDevices()

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

دستگاه‌های میانای انسانی متصل را فهرست کنید.

پارامترها

  • گزینه‌ها

    ویژگی‌هایی که باید در دستگاه‌های هدف جستجو شود.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    (devices: HidDeviceInfo[]) => void

بازگشتی‌ها

  • Promise<HidDeviceInfo[]>

    Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

receive()

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

گزارش ورودی بعدی را از دستگاه دریافت کنید.

پارامترها

  • connectionId

    شماره

    ‫connectionId توسط connect برگردانده شد.

  • تماس برگشتی

    عملکرد

    پارامتر 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 به‌صورت زیر است:

    (data: ArrayBuffer) => void

    • داده

      ArrayBuffer

      داده‌های گزارش، ازجمله پیشوند شناسه گزارش (اگر دستگاه آن را ارسال کرده باشد).

بازگشتی‌ها

  • Promise<ArrayBuffer>

    Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

send()

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

گزارش خروجی را به دستگاه ارسال کنید.

توجه: پیشوند شناسه گزارش را در data وارد نکنید. درصورت لزوم اضافه خواهد شد.

پارامترها

  • connectionId

    شماره

    ‫connectionId توسط connect برگردانده شد.

  • reportId

    شماره

    شناسه گزارش برای استفاده، یا 0 اگر وجود ندارد.

  • داده

    ArrayBuffer

    داده‌های گزارش.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

sendFeatureReport()

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

گزارش ویژگی را به دستگاه ارسال کنید.

توجه: پیشوند شناسه گزارش را در data وارد نکنید. درصورت لزوم اضافه خواهد شد.

پارامترها

  • connectionId

    شماره

    ‫connectionId توسط connect برگردانده شد.

  • reportId

    شماره

    شناسه گزارش برای استفاده، یا 0 اگر وجود ندارد.

  • داده

    ArrayBuffer

    داده‌های گزارش.

  • تماس برگشتی

    تابع اختیاری

    پارامتر callback به‌صورت زیر است:

    () => void

بازگشتی‌ها

  • Promise<void>

    Chrome نسخه ۱۱۷ و بالاتر

    ‫Promises فقط برای «مانیفست نسخه ۳» و نسخه‌های جدیدتر پشتیبانی می‌شود، پلاتفرم‌های دیگر باید از callbacks استفاده کنند.

رویدادها

onDeviceAdded

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

رویداد ایجادشده هنگام افزودن دستگاه به سیستم. رویدادها فقط برای برنامه‌ها و افزونه‌هایی پخش می‌شوند که اجازه دسترسی به دستگاه را دارند. ممکن است اجازه در زمان نصب یا وقتی کاربر اجازه اختیاری را پذیرفته است اعطا شده باشد (permissions.request را ببینید).

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (device: HidDeviceInfo) => void

onDeviceRemoved

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

رویدادی که هنگام برداشته شدن دستگاه از سیستم ایجاد می‌شود. برای اطلاع از اینکه کدام رویدادها ارسال می‌شوند، به onDeviceAdded مراجعه کنید.

پارامترها

  • تماس برگشتی

    عملکرد

    پارامتر callback به‌صورت زیر است:

    (deviceId: number) => void

    • deviceId

      شماره