Alexa.BrightnessControllerインターフェース

Alexa.BrightnessController

Alexa.BrightnessControllerインターフェースには、電球などのエンドポイントの輝度を制御し、レポートするために使用されるメッセージが含まれます。このインターフェースは輝度の調整に対応している機器に対して使用するようにします。スイッチのOn/OFF、出力調整可能なスイッチなどの電力レベルのコントロールなどを実現したい場合、より汎用的なAlexa.PercentageControllerAlexa.PowerLevelControllerを参照してください。

ディレクティブ

このインターフェースの制御とクエリのディレクティブは、次の言語を対象とするスキルでサポートされています。

  • 英語(米国)
  • 英語(英国)
  • 英語(インド)
  • ドイツ語
  • 日本語

詳細については、「スマートホームスキルを複数の言語で開発する」を参照してください。

AdjustBrightness

エンドポイントの輝度を、指定された正の値または負の値に基づいて上または下に調整します。

「Alexa、デバイスの明るさを ##%暗くして」

「Alexa, dim device ##%」

リクエストの例:


{
  "directive": {
    "header": {
      "namespace": "Alexa.BrightnessController",
      "name": "AdjustBrightness",
      "payloadVersion": "3",
      "messageId": "1bd5d003-31b9-476f-ad03-71d471922820",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "Alexa-access-token"
      },
      "endpointId": "appliance-001",
      "cookie": {}
    },
    "payload": {
      "brightnessDelta": 3
    }
  }
}

ペイロードの詳細

フィールド 説明 必須
brightnessDelta 要求された輝度の変化量です。パーセントで与えられます。明るさのパーセンテージを増減させるために使用する正または負の整数値です。たとえば、最初の値が97で、与えられた値が3の場合、最終的な値は100になります。 -100から100までの整数(両端の値を含む)。

SetBrightness

エンドポイントの輝度値を設定します。

デバイス##%に設定して」

「Alexa, set the device to ##%」

リクエストの例:

{
  "directive": {
    "header": {
      "namespace": "Alexa.BrightnessController",
      "name": "SetBrightness",
      "payloadVersion": "3",
      "messageId": "1bd5d003-31b9-476f-ad03-71d471922820",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "some-access-token"
      },
      "endpointId": "appliance-001",
      "cookie": {}
    },
    "payload": {
      "brightness": 42
    }
  }
}

ペイロードの詳細

フィールド 説明 必須
brightness 好みの輝度をパーセントで表した値です。 0から100までの整数(両端の値を含む)。

プロパティとイベント

このインターフェースでは、次のいずれかの応答を使用する必要があります。

  • 同期的。つまり、Lambda関数からAlexaにResponseイベントを送信します。
  • 非同期的。つまり、AlexaイベントゲートウェイにResponseイベントを送信します。非同期応答の際には、ユーザーを識別する認可を受けたトークンを含むscope要素と、応答するディレクティブを識別する correlation トークンが必要になります。

Responseを送信するときには、メッセージのcontextにレポート可能なプロパティの状態を含める必要があります。

レポート可能なプロパティ

プロパティ名 説明
brightness 輝度」をご覧ください。 0~100までの整数(両端の値を含む)で表した、スマート電球などの機器の輝度です。

応答

輝度制御ディレクティブの処理が成功した場合、 Responseイベントにより応答する必要があります。

応答の例

{
  "context": {
    "properties": [ {
      "namespace": "Alexa.BrightnessController",
      "name": "brightness",
      "value": 42,
      "timeOfSample": "2017-02-03T16:20:50.52Z",
      "uncertaintyInMilliseconds": 1000
    } ]
  },
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "Response",
      "payloadVersion": "3",
      "messageId": "5f8a426e-01e4-4cc9-8b79-65f8bd0fd8a4",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg=="
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "Alexa-access-token"
      },
      "endpointId": "appliance-001"
    },
    "payload": {}
  }
}

ErrorResponse

何らかの理由でユーザーのリクエストを完了できない場合は、エラーにより応答する必要があります。詳細については、Error.Responseを参照してください。

追加のサンプルコード

リクエストの例と応答メッセージについては、AlexaスマートホームGitHubリポジトリを参照してください。

BrightnessController

インターフェース 説明
Alexa.PercentageController パーセントを設定します。
Alexa.ColorController 照明エンドポイントの色を設定します。
Alexa.PowerLevelController エンドポイントの電力レベルを制御します。