Smart-Home-Router-Leitfaden
action.devices.types.ROUTER
: Router können neu gestartet und ihre Software aktualisiert werden. Sie haben Modi zur Verwaltung von Dienstqualitätssteuerungen (Quality of Service, QoS) und Elternauflagen und können netzwerkspezifische Vorgänge ausführen, z. B. das Gastnetzwerk aktivieren und netzwerkspezifische Informationen wie die aktuellen Internetdurchsatzraten melden.
Dieser Typ gibt an, dass das Gerät das Routersymbol und einige zugehörige Synonyme und Aliasse erhält.
Gerätefunktionen
In der entsprechenden Dokumentation zu Merkmalen finden Sie Implementierungsdetails wie Attribute und Status, die Ihr Dienst unterstützen sollte, sowie Informationen zum Erstellen von EXECUTE- und QUERY-Antworten.
Erforderliche Merkmale
Diese Merkmale und Befehle sind erforderlich, sofern sie für Ihr Gerät gelten. Wenn Ihr Gerät diese Eigenschaften nicht unterstützt, geben Sie den Fehlercode functionNotSupported
in einer QUERY- oder EXECUTE-Antwort ein. Weitere Informationen finden Sie unter Fehler und Ausnahmen.
Empfohlene Merkmale
Diese Eigenschaften werden empfohlen, sofern sie für Ihr Gerät gelten. Sie können jedoch alle verfügbaren Merkmale kombinieren, um sie bestmöglich an Ihre vorhandenen Produktfunktionen anzupassen.
Qualitätsanforderungen
- Latenz:muss kleiner als oder gleich 300 ms sein.
- Zuverlässigkeit:muss mindestens 97% betragen.
Beispielgerät: Einfacher Router
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten für einen gängigen „Router“ basierend auf den oben genannten Gerätetypen und -merkmalen. Wenn Sie in Ihrer Implementierung Merkmale hinzufügen oder entfernen, ändern Sie Ihre Antworten entsprechend, um diese Änderungen widerzuspiegeln.
Beispiel für eine SYNC-Antwort
{ "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" } } ] } }
Beispiel für eine QUERY-Antwort
{ "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 } } } }
Beispielbefehle für EXECUTE
Neu starten
Weitere Informationen zu den Befehlsparametern finden Sie in der
action.devices.traits.Reboot
-Referenz.
{ "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
Weitere Informationen zu den Befehlsparametern finden Sie in der
action.devices.traits.NetworkControl
-Referenz.
{ "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
Weitere Informationen zu den Befehlsparametern finden Sie in der
action.devices.traits.NetworkControl
-Referenz.
{ "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 } } ] } }