このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

HIDDevice.sendFeatureReport()

利用可能性は限定的

この機能はベースラインではありません。最も広く使用されているブラウザーの一部で動作しません。

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

HIDDevice インターフェイスの sendFeatureReport() メソッドは、HID デバイスに Feature レポートを送信します。Feature レポートは、HID デバイスとアプリケーションが標準化されていない HID データを交換するための方法です。

各レポート形式用にデバイスがサポートしている reportId は、HIDDevice.collections から取得できます。

構文

js
sendFeatureReport(reportId, data)

引数

reportId

8 ビットのレポート ID です。HID デバイスがレポート ID を使わない場合、0 を送信します。

data

ArrayBuffer, TypedArray, DataView のいずれかで表されるバイト列です。

返値

レポートの送信完了後 undefined で解決する Promise を返します。

例外

NotAllowedError DOMException

何らかの理由でレポートの送信に失敗したとき投げられます。

例

この例では、sendFeatureReport() によりデバイスを点滅させます。記事 Connecting to uncommon HID devices で他の例や動くデモを見ることができます。

js
const reportId = 1;
for (let i = 0; i < 10; i++) {
  // 消灯させます
  await device.sendFeatureReport(reportId, Uint32Array.from([0, 0]));
  await waitFor(100);
  // 点灯させます
  await device.sendFeatureReport(reportId, Uint32Array.from([512, 0]));
  await waitFor(100);
}

仕様書

仕様書
WebHID
# dom-hiddevice-sendfeaturereport

ブラウザーの互換性