chrome.hid

תיאור

משתמשים ב-API של chrome.hid כדי לתקשר עם מכשירי HID מחוברים. ה-API הזה מספק גישה לפעולות HID מתוך ההקשר של אפליקציה. באמצעות ה-API הזה, אפליקציות יכולות לפעול כמנהלי התקנים של מכשירי חומרה. שגיאות שנוצרות על ידי ה-API הזה מדווחות על ידי הגדרת runtime.lastError והפעלת פונקציית ה-callback הרגילה. במקרה כזה, הפרמטרים הרגילים של הקריאה החוזרת לא יוגדרו.

הרשאות

hid

סוגים

DeviceFilter

מאפיינים

  • productId

    מספר אופציונלי

    מזהה המוצר של המכשיר, נבדק רק אם מזהה הספק תואם.

  • שימוש

    מספר אופציונלי

    מזהה השימוש ב-HID, נבדק רק אם דף השימוש ב-HID תואם.

  • usagePage

    מספר אופציונלי

    מזהה דף השימוש ב-HID.

  • vendorId

    מספר אופציונלי

    מזהה ספק המכשיר.

GetDevicesOptions

מאפיינים

  • מסננים

    DeviceFilter[] אופציונלי

    יוחזר מכשיר שתואם לאחד מהמסננים שצוינו. אם רשימת המסננים ריקה, יוצגו כל המכשירים שלאפליקציה יש הרשאה לגשת אליהם.

  • productId

    מספר אופציונלי

    הוצא משימוש

    שווה ערך להגדרה DeviceFilter.productId.

  • vendorId

    מספר אופציונלי

    הוצא משימוש

    שווה ערך להגדרה DeviceFilter.vendorId.

HidCollectionInfo

מאפיינים

  • reportIds

    number[]‎

    מזהי דוחות ששייכים לאוסף ולפריטים המשניים שלו.

  • שימוש

    number

    מזהה שימוש שמוגדר בדף.

  • usagePage

    number

    מזהה דף השימוש ב-HID.

HidConnectInfo

מאפיינים

  • connectionId

    number

    המזהה הלא שקוף שמשמש לזיהוי החיבור הזה בכל הפונקציות האחרות.

HidDeviceInfo

מאפיינים

  • אוספים

    אוספים ברמה העליונה מתיאורי הדוחות של המכשיר הזה.

  • deviceId

    number

    מזהה מכשיר אטום.

  • maxFeatureReportSize

    number

    הגודל המקסימלי של דוח התכונות של האוסף ברמה העליונה.

  • maxInputReportSize

    number

    הגודל המקסימלי של דוח הקלט של האוסף ברמה העליונה.

  • maxOutputReportSize

    number

    הגודל המקסימלי של דוח הפלט של אוסף ברמה העליונה.

  • productId

    number

    מזהה המוצר.

  • productName

    מחרוזת

    ‫Chrome מגרסה 46 ואילך

    שם המוצר שנקרא מהמכשיר, אם הוא זמין.

  • reportDescriptor

    ArrayBuffer

    מתאר דוח גולמי של המכשיר (לא זמין ב-Windows).

  • serialNumber

    מחרוזת

    ‫Chrome מגרסה 46 ואילך

    המספר הסידורי שנקרא מהמכשיר, אם הוא זמין.

  • vendorId

    number

    מזהה הספק.

Methods

connect()

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

לפתוח חיבור למכשיר HID לצורך תקשורת.

פרמטרים

החזרות

  • ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

disconnect()

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

להתנתק ממכשיר. הפעלת פעולות במכשיר אחרי הקריאה הזו היא בטוחה, אבל אין לה השפעה.

פרמטרים

  • connectionId

    number

    הערך של connectionId שמוחזר על ידי connect.

  • callback

    function optional

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

getDevices()

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

למנות את מכשירי ה-HID המחוברים.

פרמטרים

  • אפשרויות

    המאפיינים שצריך לחפש במכשירי היעד.

  • callback

    function optional

    הפרמטר callback נראה כך:

    (devices: HidDeviceInfo[]) => void

החזרות

  • Promise<HidDeviceInfo[]>

    ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

receive()

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

קבלת דוח הקלט הבא מהמכשיר.

פרמטרים

  • connectionId

    number

    הערך של connectionId שמוחזר על ידי connect.

  • callback

    פונקציה

    הפרמטר callback נראה כך:

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

    • reportId

      number

      מזהה הדוח, או 0 אם אין מזהה.

    • נתונים

      ArrayBuffer

      נתוני הדוח, הקידומת של מזהה הדוח (אם קיימת) מוסרת.

receiveFeatureReport()

Promise
chrome.hid.receiveFeatureReport(
  connectionId: number,
  reportId: number,
  callback?: function,
)
: Promise<ArrayBuffer>

בקשה לקבלת דוח תכונות מהמכשיר.

פרמטרים

  • connectionId

    number

    הערך של connectionId שמוחזר על ידי connect.

  • reportId

    number

    מזהה הדוח, או 0 אם אין מזהה.

  • callback

    function optional

    הפרמטר callback נראה כך:

    (data: ArrayBuffer) => void

    • נתונים

      ArrayBuffer

      נתוני הדוח, כולל קידומת של מזהה הדוח אם המכשיר שולח אותה.

החזרות

  • Promise<ArrayBuffer>

    ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

send()

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

שליחת דוח פלט למכשיר.

הערה: אל תכללו קידומת של מזהה דוח ב-data. הוא יתווסף אם יהיה צורך.

פרמטרים

  • connectionId

    number

    הערך של connectionId שמוחזר על ידי connect.

  • reportId

    number

    מזהה הדוח שבו צריך להשתמש, או 0 אם אין כזה.

  • נתונים

    ArrayBuffer

    נתוני הדוח.

  • callback

    function optional

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

sendFeatureReport()

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

שליחת דוח תכונות למכשיר.

הערה: אל תכללו קידומת של מזהה דוח ב-data. הוא יתווסף אם יהיה צורך.

פרמטרים

  • connectionId

    number

    הערך של connectionId שמוחזר על ידי connect.

  • reportId

    number

    מזהה הדוח שבו צריך להשתמש, או 0 אם אין כזה.

  • נתונים

    ArrayBuffer

    נתוני הדוח.

  • callback

    function optional

    הפרמטר callback נראה כך:

    () => void

החזרות

  • Promise<void>

    ‫Chrome מגרסה 117 ואילך

    הבטחות נתמכות רק ב-Manifest V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callbacks).

אירועים

onDeviceAdded

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

אירוע שנוצר כשמכשיר נוסף למערכת. האירועים משודרים רק לאפליקציות ולתוספים שיש להם הרשאת גישה למכשיר. יכול להיות שההרשאה ניתנה בזמן ההתקנה או כשהמשתמש אישר הרשאה אופציונלית (ראו permissions.request).

פרמטרים

onDeviceRemoved

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

אירוע שנוצר כשמכשיר מוסר מהמערכת. במאמר onDeviceAdded מפורטים האירועים שנשלחים.

פרמטרים

  • callback

    פונקציה

    הפרמטר callback נראה כך:

    (deviceId: number) => void

    • deviceId

      number