2017-04-03 4 views
1

私はAlexaスキルセットが新しく、私はデバイスをalexaによって発見する必要があります。私はAlexa SMART HOME SKILL APIのデバイス発見機能に戸惑っています。 Alexaがカスタムスキルを発見できるように、あなたが作成したデバイス(ラズベリーパイを使用)を接続する方法に関する詳細情報が必要です。Alexaカスタムスキルデバイスディスカバリー

サンプルコードまたは適切なガイドラインが必要です。

私はペイロードがデバイスクラウドから返されるべきであることを理解しています(製品メーカーがこれを所有しています)。どのデバイスが顧客であり、そのデバイスが正しい顧客であることをどのように保証しますか?

例ペイロードは

"discoveredAppliances": [{ 
    "applianceId": "sample-1", 
    "manufacturerName": "Sample Manufacturer", 
    "modelName": "Sample Thermostat", 
    "version": "1", 
    "friendlyName": "Sample Thermostat", 
    "friendlyDescription": "Thermostat by Sample Manufacturer", 
    "isReachable": true, 
    "actions": [ 
     "setTargetTemperature", 
     "incrementTargetTemperature", 
     "decrementTargetTemperature" 
    ], 
    "additionalApplianceDetails": { 
    "extraDetail1": "This is a thermostat that is reachable" 
    } 
}] 

はあなたが詳細にdiscoveredAppliancesのJSONオブジェクトを説明することができます。..以下のでしょうか?デバイスクラウドで顧客のためにこれらの詳細を生成する背後にあるロジック?

答えて

0

ペイロード内のすべての情報は、あなたのデバイスについてAlexaに伝えるためのものであり、あなたが望むものであれば何でも構いません。本当に重要なフィールドは次のとおりです。

  • applianceId:スペースが含まれていなければならず、各制御メッセージと一緒にあなたのスキルに渡されます。特定のデバイスを特定するようにしてください。

  • friendlyName:このデバイスを識別するためにユーザーが言う必要がある正確な単語を含みます。例えば、「ガレージライト」。

    • friendlyDescription:このデバイスに関するAlexaアプリに表示されるテキストです。

    • actions:処理可能なコントロールイベントをリストします。ここに挙げた例にはサーモスタットタイプのコントロールが含まれています。ライトでは、調光のためにturnOn、turnOff、setPercentageをサポートすることがあります。あなたのデバイスは完全にあなた次第です検出し、識別方法

この説明が役立つことを願っています。デバイスを制御するカスタムスキルを作成することもできます。カスタムスキルを作成する例はもっとたくさんあります。私はより多くのカスタムスキル情報とコードを投稿しましたGithub

+0

あなたはコードを説明したり共有したりできますか?どのようにしてalexaを使ってデバイスを発見できますか? AlexaはWi-Fiを使用せず、デバイスを検出するための直接信号を送信しません。代わりに、インターネット(メーカーのサーバ)を呼び出してから、アレクサの周辺で利用可能なデバイスについての回答を得ます。あなたはサンプルコードを持っていますか、これに関する正確なロジックを持っていますか?私はブロックダイアグラムを見ることができますが、詳細は深く必要です。 –

+0

公開されているAlexaスマートホームスキルの例をいくつか見てみましょう。例えば、kvarma:https://github.com/krvarma/particle-alexa -smart-home-skill。 lambda.jsコードをhandleDiscoveryメソッドで調べます。そこに彼は台所の寝室のライトを定義しています。 –

+0

'Custom Skill'についての例は、' Discovery'フローを実行しますか? – AechoLiu