Alexa.ThermostatController.ErrorResponseインターフェース3


Alexa.ThermostatController.ErrorResponseインターフェース3

Alexaから送信されたAlexa.ThermostatControllerディレクティブを正しく処理できなかった場合、スキルはAlexa.ThermostatController.ErrorResponseイベントで応答します。詳細については、Alexa.ThermostatControllerを参照してください。一般的なエラーの場合は、Alexa.ErrorResponseイベントを使用してください。

ErrorResponseイベント

Alexa.ThermostatController.ErrorResponseのペイロードでは、エラータイプを指定し、エラー情報のメッセージを含めます。Alexa.ThermostatControllerのエラータイプのリストについては、エラータイプの値を参照してください。エラー応答は、同期応答または非同期応答で送信できます。詳細については、Alexa.ErrorResponseを参照してください。

ErrorResponseイベントの形式

クリップボードにコピーされました。

{
"event": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "ErrorResponse",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint":{
      "endpointId": "エンドポイントID"
    },
    "payload": {
      "type": "エラータイプ",
      "message": "エラーメッセージ"
    }
  }
}

ErrorResponseイベントのペイロードのプロパティ

フィールド 説明 必須
type エラーのタイプです。Alexaはこれをユーザーと共有します。 文字列
message エラーのエラーメッセージ。この情報はユーザーには共有されません。 文字列

エラータイプの値

以下の表は、有効なAlexa.ThermostatControllerエラータイプの一覧です。

エラータイプ 説明
REQUESTED_SETPOINTS_TOO_CLOSE 2つの設定値の値が近すぎます。このエラー応答を送信する際は、2つの温度設定値の差として設定可能な最小値を表すminimumTemperatureDeltaというTemperatureオブジェクトを任意で指定します。例については、REQUESTED_SETPOINTS_TOO_CLOSE exampleを参照してください。
THERMOSTAT_IS_OFF サーモスタットがオフで、オンにできません。
UNSUPPORTED_THERMOSTAT_MODE サーモスタットは、指定されたモードをサポートしていません。
DUAL_SETPOINTS_UNSUPPORTED サーモスタットは、現在のモードで2つの設定値をサポートしていません。
TRIPLE_SETPOINTS_UNSUPPORTED サーモスタットは、現在のモードで3つの設定値をサポートしていません。
UNWILLING_TO_SET_SCHEDULE サーモスタットは、指定されたスケジュールを設定できません。
UNWILLING_TO_SET_VALUE サーモスタットは、デバイスや機器に損傷を与える恐れがあるため、この値を設定できません。

Alexa.ThermostatControllerエラータイプのほかに、TEMPERATURE_VALUE_OUT_OF_RANGEなどのAlexaエラータイプも設定できます。詳細については、Alexa.ErrorResponseエラータイプの値を参照してください。

Alexa.ThermostatController.ErrorResponseの例

以下の例は、さまざまなエラータイプのペイロードを示しています。

REQUESTED_SETPOINTS_TOO_CLOSE

以下は、REQUESTED_SETPOINTS_TOO_CLOSEエラータイプのエラー応答の例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "ErrorResponse",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint":{
      "endpointId": "エンドポイントID"
    },
    "payload": {
      "type": "REQUESTED_SETPOINTS_TOO_CLOSE",
      "message": "2つの設定値の値が近すぎます。",
      "minimumTemperatureDelta": {
          "value": 2.0,
          "scale": "CELSIUS"
      }
    }
  }
}

THERMOSTAT_IS_OFF

以下は、THERMOSTAT_IS_OFFエラータイプのエラー応答例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "ErrorResponse",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint":{
      "scope":{
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID"
    },
    "payload": {
      "type": "THERMOSTAT_IS_OFF",
      "message": "現在サーモスタットはオフです。"
    }
  }
}

REQUESTED_SETPOINTS_TOO_CLOSE

以下は、REQUESTED_SETPOINTS_TOO_CLOSEエラータイプのエラー応答の例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa.ThermostatController",
      "name": "ErrorResponse",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "endpointId": "エンドポイントID"
    },
    "payload": {
      "type": "REQUESTED_SETPOINTS_TOO_CLOSE",
      "message": "リクエストされた2つの温度設定の値が近すぎます",
      "minimumTemperatureDelta": {
        "value": 2.0,
        "scale": "CELSIUS"
      }
    }
  }
}

TEMPERATURE_VALUE_OUT_OF_RANGE

以下は、Alexa.ErrorResponseインターフェースのTEMPERATURE_VALUE_OUT_OF_RANGEエラータイプのエラー応答例です。設定可能な最低および最高温度を示すvalidRangeオブジェクトをペイロードに含めます。最小値と最大値は、Temperatureオブジェクトを含みます。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "ErrorResponse",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "endpointId": "エンドポイントID"
    },
    "payload": {
      "type": "TEMPERATURE_VALUE_OUT_OF_RANGE",
      "message": "リクエストされた温度-15は範囲外です。",
      "validRange": {
        "minimumValue": {
          "value": 15.0,
          "scale": "CELSIUS"
        },
        "maximumValue": {
          "value": 30.0,
          "scale": "CELSIUS"
        }
      }
    }
  }
}


このページは役に立ちましたか?

最終更新日: 2024 年 07 月 11 日