2017-11-07 3 views
0

この質問は、Google Smart HomeのドキュメントCreate a Smart Home Appのアクション、特にaction.devices.EXECUTEセクションに関するものです。Googleのアクション - Google Home EXECの入力と応答のコマンド/デバイス/実行の関係は何ですか?

「コマンド」オブジェクトのリストとそれに関連するデバイスと実行のリストとの正確な関係、特にこれらがレスポンスにどのように変換されるかについては、多少混乱しています。

ドキュメントに基づいて、私たちは、コマンドが上から下の順番で処理されることを意図していると考えています。コマンドごとに、各実行はコマンド内の各デバイスIDに対して処理されます(上から下へ)。

説明が正しく理解されている場合、入力に最初のコマンドごとに4つのコマンド(成功、保留、オフライン& ERROR)が含まれる可能性があります。それぞれの結果のデバイスIDのリスト適切な。

ただし、回答には実行の言及はありません。これは、デバイスの1回の実行に失敗した場合(複数のうち)、レスポンスで、デバイスの他の実行が成功しているにもかかわらず、ERRORの下にリストされていることを意味しますか?

たとえば、ライトをオンにし、その色を青に設定するコマンドが入力された場合。それをオンにすると成功しますが、何らかのエラーが色の設定を妨げている場合、応答形式はどのように見えますか?

ありがとうございます。

答えて

1

コマンドアレイには、このコマンドで制御されるはずのすべてのデバイスが含まれます。コマンドとパラメータを提供する追加の実行配列があります。

一部のデバイスを正常に制御できなかった場合は、ドキュメントに示されているように、そのデバイスIDに対してエラーが返されるはずです。

特定のデバイスでは、1つのコマンドが成功し、別のコマンドが失敗するというシナリオを考えるのは奇妙なことがあります。その場合、最も理にかなった理由は、おそらくエラーprotocolErrorまたはunknownErrorと考える必要があります。

すべてのコマンドは、同時に処理されるか、または並行して処理されることを意味します。ユーザーが要求したすべての変更を行うことができない場合、コマンドがまったく実行されなかった場合、より一貫性があります。したがって、デバイスの電源をオン/オフすることができますが、色が壊れていると、両方のコマンドが同時に送信されると失敗します。

+0

ありがとうございました。私たちは、個々の操作としての実行を考えていました。より良い単語がないために、単一の「コマンド」ではありません。これは、応答が期待されるものを明確にするのに役立ちました。 –

関連する問題