スマートホームの Fill トレイトのスキーマ
action.devices.traits.Fill
- このトレイトは、バスタブなど、充填可能なデバイスに適用されます。
デバイスの属性
この特性を持つデバイスは、SYNC
オペレーションの一部として次の属性を報告する可能性があります。SYNC
インテントの処理の詳細については、インテント フルフィルメントをご覧ください。
属性 | タイプ | 説明 |
---|---|---|
availableFillLevels |
オブジェクト |
デバイスのさまざまな充填レベルを示します。 |
levels |
配列 |
必須。 レベル名と言語固有の同義語のリスト。 |
[item, ...] |
オブジェクト |
レベル名とその言語固有の類義語。 |
level_name |
文字列 |
必須。 レベルの内部名。これは、ユーザー フレンドリーな名前とは限らず、すべての言語に共通です。 |
level_values |
配列 |
必須。 サポートされている各言語のレベルの同義語。 |
[item, ...] |
オブジェクト |
特定の言語のレベルの同義語。 |
level_synonym |
配列 |
必須。 このレベルの類義語です。このリストの最初の文字列は、その言語のレベルの正規名として使用されます。 |
[item, ...] |
文字列 |
同義名。 |
lang |
文字列 |
必須。 言語コード(ISO 639-1)。サポートされている言語をご覧ください。 |
ordered |
ブール値 |
必須。 true の場合、デバイスは |
supportsFillPercent |
ブール値 |
(デフォルト: true の場合、レベルをパーセンテージに調整するコマンドを受け入れます。 |
例
個別のフィルレベルをサポートしていない、基本的なフィルまたはドレイン機能を備えたデバイス。
{}
個別のフィルレベルをサポートするデバイス。
{ "availableFillLevels": { "levels": [ { "level_name": "half_level", "level_values": [ { "level_synonym": [ "Half", "Half way", "One half" ], "lang": "en" } ] }, { "level_name": "full_level", "level_values": [ { "level_synonym": [ "Full", "All the way", "Complete" ], "lang": "en" } ] } ], "ordered": true } }
デバイスのステータス
この特性を持つエンティティは、QUERY
オペレーションの一部として次の状態をレポートできます。QUERY
インテントの処理の詳細については、インテント フルフィルメントをご覧ください。
状態 | タイプ | 説明 |
---|---|---|
isFilled |
ブール値 |
必須。 デバイスがいずれかのレベルまで満たされている場合、true。デバイスが完全にドレインされている場合は false。 |
currentFillLevel |
文字列 |
|
currentFillPercent |
Number |
|
例
「バスタブにお湯は入ってる?」
{ "isFilled": true }
バスタブはいっぱいですか?(レベルに基づく)
{ "isFilled": true, "currentFillLevel": "half_level" }
デバイスのコマンド
この特性を持つデバイスは、EXECUTE
オペレーションの一部として次のコマンドに応答できます。EXECUTE
インテントの処理の詳細については、インテント フルフィルメントをご覧ください。
action.devices.commands.Fill
デバイスを充填または排水します。
パラメータ
パラメータ | タイプ | 説明 |
---|---|---|
fill |
ブール値 |
必須。 True で入力、false でドレイン。 |
fillLevel |
文字列 |
設定する |
fillPercent |
Number |
リクエストされたレベルの割合を示します。 |
例
浴槽に湯を入れます。
{ "command": "action.devices.commands.Fill", "params": { "fill": true } }
浴槽を排水します。
{ "command": "action.devices.commands.Fill", "params": { "fill": false } }
「バスタブに半分までお湯を入れて。」
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_level" } }
バスタブの充填レベルを 1 つ上げます(ordered
属性は true
である必要があります)。
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "full_level" } }