コンポーネントの設定との対話 - AWS IoT Greengrass

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

コンポーネントの設定との対話

コンポーネント設定 IPC サービスでは、以下のことを実行できます。

  • コンポーネント構成パラメータを取得および設定します。

  • コンポーネント構成の更新をサブスクライブします。

  • nucleus が適用される前に、構成部品のコンフィギュレーションの更新を検証します。

GetConfiguration

コアデバイス上のコンポーネントの設定値を取得します。設定値を取得するキーパスを指定します。

Request

このオペレーションのリクエストには以下のパラメータがあります。

componentName

(オプション) コンポーネントの名前。

デフォルトは、要求を行うコンポーネントの名前です。

keyPath

設定値へのキーパス。各エントリが構成オブジェクトの単一レベルのキーであるリストを指定します。たとえば、次のように指定します。["mqtt", "port"]値を取得するにはport次の設定で。

{ "mqtt": { "port": 443 } }

Response

このオペレーションのレスポンスには以下の情報が含まれています。

componentName

コンポーネントの名前。

value

オブジェクトとして要求された設定。

UpdateConfiguration

コアデバイス上のコンポーネントの設定値を更新します。

Request

このオペレーションのリクエストには以下のパラメータがあります。

keyPath

(オプション)更新するコンテナノード(オブジェクト)へのキーパス。各エントリが構成オブジェクトの単一レベルのキーであるリストを指定します。たとえば、キーパス["mqtt"]とマージ値{ "port": 443 }値を設定しますport次の設定で。

{ "mqtt": { "port": 443 } }

キーパスは、設定内のコンテナノード(オブジェクト)を指定する必要があります。ノードがコンポーネントの設定に存在しない場合、この操作によってノードが作成され、その値がvalueToMerge

デフォルトの設定オブジェクトのルートです。

timestamp

ミリ秒単位の現在の UNIX エポック時刻 (エポック時刻)。この操作では、このタイムスタンプを使用して、キーへの同時更新を解決します。コンポーネント構成のキーのタイムスタンプがリクエストのタイムスタンプよりも大きい場合、リクエストは失敗します。

valueToMerge

で指定した場所でマージする設定オブジェクトkeyPath。詳細については、「コンポーネント設定の更新」を参照してください。

Response

この操作は、応答に情報を提供しません。

SubscribeToConfigurationUpdate

コンポーネントの設定の更新時に通知を受け取るには、サブスクライブします。キーをサブスクライブすると、そのキーの子が更新されると通知を受け取ります。

この操作は、イベントメッセージのストリームをサブスクライブするサブスクリプション操作です。この操作を使用するには、イベントメッセージ、エラー、およびストリームのクロージャを処理する関数を持つストリーム応答ハンドラを定義します。詳細については、「IPC イベントストリームをサブスクライブする」を参照してください。

イベントメッセージのタイプ: ConfigurationUpdateEvents

Request

このオペレーションのリクエストには以下のパラメータがあります。

componentName

(オプション) コンポーネントの名前。

デフォルトは、要求を行うコンポーネントの名前です。

keyPath

サブスクライブする設定値へのキーパス。各エントリが構成オブジェクトの単一レベルのキーであるリストを指定します。たとえば、次のように指定します。["mqtt", "port"]値を取得するにはport次の設定で。

{ "mqtt": { "port": 443 } }

Response

このオペレーションのレスポンスには以下の情報が含まれています。

messages

通知メッセージのストリーム。このオブジェクトConfigurationUpdateEventsには、以下の情報が含まれています。

configurationUpdateEvent

構成更新イベント。このオブジェクトConfigurationUpdateEventには、以下の情報が含まれています。

componentName

コンポーネントの名前。

keyPath

更新した設定値へのキーパス。

SubscribeToValidateConfigurationUpdates

サブスクライブして、このコンポーネントの設定が更新される前に通知を受信します。これにより、コンポーネントは独自の設定に対する更新を検証できます。の使用SendConfigurationValidityReport操作を使用して、構成が有効かどうかを核に伝えます。

重要

ローカル展開では、更新がコンポーネントに通知されません。

この操作は、イベントメッセージのストリームをサブスクライブするサブスクリプション操作です。この操作を使用するには、イベントメッセージ、エラー、およびストリームのクロージャを処理する関数を持つストリーム応答ハンドラを定義します。詳細については、「IPC イベントストリームをサブスクライブする」を参照してください。

イベントメッセージのタイプ: ValidateConfigurationUpdateEvents

Request

この操作のリクエストにはパラメータがありません。

Response

このオペレーションのレスポンスには以下の情報が含まれています。

messages

通知メッセージのストリーム。このオブジェクトValidateConfigurationUpdateEventsには、以下の情報が含まれています。

validateConfigurationUpdateEvent

構成更新イベント。このオブジェクトValidateConfigurationUpdateEventには、以下の情報が含まれています。

deploymentId

の IDAWS IoT Greengrassデプロイメントで、コンポーネントを更新します。

configuration

新しい設定を含むオブジェクト。

SendConfigurationValidityReport

このコンポーネントの設定更新が有効かどうかをnucleus に伝えます。新しい設定が有効でないことをnucleusに伝えた場合、デプロイメントは失敗します。の使用SubscribeToValidateConfigurationUpdatesオペレーションを使用して、構成更新の検証をサブスクライブします。

コンポーネントがコンフィギュレーション更新の検証通知に応答しない場合、nucleus は、デプロイメントの設定検証ポリシーで指定した時間を待機します。そのタイムアウト後、核は展開を進めます。デフォルトのコンポーネント検証タイムアウトは 20 秒です。詳細については、「」を参照してください。デプロイの作成構成検証ポリシーを呼び出すときに提供できるオブジェクトCreateDeploymentオペレーション.

Request

このオペレーションのリクエストには以下のパラメータがあります。

configurationValidityReport

設定更新が有効かどうかを核に伝えるレポート。このオブジェクトConfigurationValidityReportには、以下の情報が含まれています。

status

有効ステータス。この列挙値ConfigurationValidityStatusには、以下の値があります。

  • ACCEPTED— 構成が有効で、核はこの構成要素に適用できます。

  • REJECTED— 構成が有効ではなく、デプロイメントが失敗します。

deploymentId

の IDAWS IoT Greengrass構成更新を要求したデプロイメントです。

message

(任意)設定が有効でない理由を報告するメッセージ。

Response

この操作は、応答に情報を提供しません。