

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SendConnectorEvent API を使用してデバイスイベントを送信する
<a name="send-connector-events"></a>

## デバイス開始イベントの概要
<a name="device-initiated-events-overview"></a>

`SendConnectorEvent` API は `AWS.SendCommand`および `AWS.DiscoverDevices`オペレーションに非同期で応答するために使用されますが、デバイス開始イベントをマネージド統合に通知するためにも使用されます。デバイス開始イベントは、ユーザーが開始したコマンドなしでデバイスによって生成されたイベントとして定義できます。これらのデバイスイベントには、デバイスの状態の変更、モーション検出、バッテリーレベルなどが含まれますが、これらに限定されません。これらのイベントは、 `SendConnectorEvent` API と オペレーション **DEVICE\$1EVENT** を使用してマネージド統合に送信できます。

次のセクションでは、これらのイベントのワークフローをさらに説明する例として、ホームにインストールされたスマートカメラを使用します。

![\[デバイスイベントワークフロー\]](http://docs.aws.amazon.com/ja_jp/iot-mi/latest/devguide/images/device-events-workflow.png)


**デバイスイベントワークフロー**

1. カメラは、リソースサーバーに送信されるイベントを生成するモーションを検出します。

1. リソースサーバーはイベントを処理し、C2C コネクタに送信します。

1. コネクタは、このイベントを AWS IoT Device Management `DEVICE_EVENT`インターフェイスのマネージド統合に変換します。

1. C2C コネクタは、オペレーションが「DEVICE\$1EVENT」に設定された `SendConnectorEvent` API を使用して、このデバイスイベントをマネージド統合に送信します。

1. マネージド統合は、関連する顧客を識別し、このイベントを顧客に中継します。

1. 顧客はこのイベントを受け取り、ユーザー識別子を介してユーザーに表示されます。

`SendConnectorEvent` API オペレーションの詳細については、AWS IoT Device Management API リファレンスガイド`SendConnectorEvent`の マネージド統合の「」を参照してください。

## デバイス開始イベントの要件
<a name="device-events-requirements"></a>

以下は、デバイス主導イベントの要件です。
+ C2C コネクタリソースは、リソースサーバーから非同期デバイスイベントを受信できる必要があります
+ C2C コネクタリソースは、C2C コネクタの登録 AWS アカウント に使用される の AWS 認証情報を使用して、SigV4 経由で AWS IoT Device Management サービス API の マネージド統合を呼び出すことができる必要があります。

次の例は、SendConnectorEvent API を介してデバイス発信イベントを送信するコネクタを示しています。

```
AWS-API: /SendConnectorEvent
URI: POST /connector-event/{Your-Connector-Id}

{
   "UserId": "Your-End-User-ID",
   "Operation": "DEVICE_EVENT",
   "OperationVersion": "1.0",
   "StatusCode": 200,
   "Message": None,
   "ConnectorDeviceId": "Your_Device_Id",
   "MatterEndpoint": {
        "id": "1",    
        "clusters": [{
            "id": "0x0202",
            "attributes": [
                {
                    "0x0000": "3"
                }
            ]
        }]
    }]
}
```

次の例から、次のようになります。
+ これは、ID が 1 のデバイスエンドポイントから取得されます。
+ このイベントに関連するデバイス機能は、ファンコントロールの問題クラスターに関連するクラスター ID が **0x0202** です。
+ 変更された属性の ID は **0x000** で、クラスター内のファンモード列挙型に関連しています。High の値に関連する値 **3** ****に更新されました。
+  `connectorId` は作成時にクラウドサービスによって返されるパラメータであるため、コネクタは GetCloudConnector を使用してクエリを実行し、 でフィルタリングする必要があります`lambdaARN`。Lambda 自体`ARN`は `Lambda.get_function_url_config` API を使用してクエリされます。これにより、Lambda で `CloudConnectorId`に動的にアクセスでき、以前のように静的に設定されることはありません。