スマートホーム ルーター ガイド
action.devices.types.ROUTER
- ルーターでは、再起動、ソフトウェアの更新、 Quality of Service(QoS)制御と保護者による使用制限を処理するモードの設定、ネットワーク固有の操作(ゲスト ネットワークの有効化、現在のインターネット スループット率などのネットワーク固有の情報の報告など)を行うことができます。
このタイプは、ルーター アイコンと、関連する類義語と別名がデバイスに与えられることを示します。
デバイスの機能
サービスがサポートする必要がある属性や状態、EXECUTE および QUERY レスポンスの作成方法など、実装の詳細については、対応するトレイトのドキュメントをご覧ください。
必要なトレイト
デバイスに適用可能な場合は、これらのトレイトとコマンドが必要です。デバイスがこれらのトレイトをサポートしていない場合は、QUERY または EXECUTE レスポンスに functionNotSupported
のエラーコードを入力します。詳細については、エラーと例外をご覧ください。
推奨されるトレイト
デバイスに応じて、これらのトレイトをおすすめします。 ただし、既存のプロダクトの機能に合わせて、利用可能なすべてのトレイトを自由に組み合わせることができます。
品質要件
- レイテンシ: 300 ミリ秒以下。
- 信頼性: 97% 以上
デバイスの例: シンプルなルーター
このセクションでは、上記のデバイスタイプとトレイトに基づく一般的な「ルーター」を表すインテント ペイロードの例を示します。実装でトレイトを追加または削除した場合は、それに合わせてレスポンスを変更し、変更を反映します。
SYNC レスポンスの例
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.ROUTER", "traits": [ "action.devices.traits.Reboot", "action.devices.traits.NetworkControl" ], "name": { "name": "Simple router" }, "willReportState": true, "attributes": { "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true, "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true, "networkProfiles": [ "kids" ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
QUERY レスポンスの例
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "numConnectedDevices": 4, "networkUsageMB": 100.8 } } } }
EXECUTE コマンドの例
再起動
コマンド パラメータの詳細については、
action.devices.traits.Reboot
リファレンスをご覧ください。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Reboot" } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }
EnableDisableNetworkProfile
コマンド パラメータの詳細については、
action.devices.traits.NetworkControl
リファレンスをご覧ください。
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.EnableDisableNetworkProfile", "params": { "profile": "kids", "enable": false } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" } } } ] } }
TestNetworkSpeed
コマンド パラメータの詳細については、
action.devices.traits.NetworkControl
リファレンスをご覧ください。
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": true, "followUpToken": "123" } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }