Guide du boîtier décodeur pour la maison connectée
action.devices.types.SETTOP
: les interactions avec les distributeurs de programmes vidéo multicanaux (MVPD) et les boîtiers décodeurs peuvent inclure la gestion de la lecture multimédia.
Ce type indique que l'appareil reçoit l'icône de boîtier décodeur, ainsi que certains synonymes et alias associés.
Fonctionnalités de l'appareil
Consultez la documentation de la caractéristique correspondante pour en savoir plus sur l'implémentation, comme les attributs et les états que votre service doit prendre en charge, et comment créer des réponses EXECUTE et QUERY.
Caractéristiques requises
Ces traits et commandes sont obligatoires, le cas échéant pour votre appareil. Si votre appareil n'est pas compatible avec ces caractéristiques, saisissez le code d'erreur functionNotSupported
dans une réponse QUERY ou EXECUTE. Pour en savoir plus, consultez la section Erreurs et exceptions.
Trait | Commandes |
---|---|
action.devices.traits.AppSelector |
|
action.devices.traits.InputSelector |
|
action.devices.traits.MediaState |
|
action.devices.traits.OnOff |
|
action.devices.traits.TransportControl |
|
action.devices.traits.Volume |
|
Caractéristiques recommandées
Ces caractéristiques sont recommandées, si elles s'appliquent à votre appareil. Toutefois, vous êtes libre de combiner tous les traits disponibles pour correspondre au mieux aux fonctionnalités de votre produit existant.
Exigences de qualité
- Latence:doit être inférieure ou égale à 3 000 ms.
- Fiabilité:doit être supérieure ou égale à 97%.
Exemple d'appareil: un simple boîtier décodeur
Cette section contient des exemples de charges utiles d'intent représentant un "décodeur" courant en fonction du type d'appareil et des caractéristiques ci-dessus. Si vous ajoutez ou supprimez des traits dans votre implémentation, modifiez vos réponses en conséquence pour refléter ces changements.
Exemple de réponse SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.SETTOP", "traits": [ "action.devices.traits.OnOff", "action.devices.traits.AppSelector", "action.devices.traits.MediaState", "action.devices.traits.Channel", "action.devices.traits.TransportControl" ], "name": { "name": "Simple set-top box" }, "willReportState": true, "attributes": { "transportControlSupportedCommands": [ "NEXT", "PREVIOUS", "PAUSE", "STOP", "RESUME", "CAPTION_CONTROL" ], "availableApplications": [ { "key": "youtube", "names": [ { "name_synonym": [ "Youtube", "Youtube_en" ], "lang": "en" } ] } ], "availableChannels": [ { "key": "ktvu2", "names": [ "Fox", "KTVU" ], "number": "2" }, { "key": "abc1", "names": [ "ABC", "ABC East" ], "number": "702.4-11" } ], "supportActivityState": true, "supportPlaybackState": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Exemple de réponse QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "on": true, "currentApplication": "youtube", "activityState": "ACTIVE", "playbackState": "PAUSED" } } } }
Exemples de commandes EXECUTE
OnOff
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.OnOff
.
{ "requestId": "6894439706274654528", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654528", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
appInstall
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.AppSelector
.
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.appInstall", "params": { "newApplication": "youtube" } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentApplication": "youtube" } } ] } }
appSearch
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.AppSelector
.
{ "requestId": "6894439706274654524", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.appSearch", "params": { "newApplication": "youtube" } } ] } ] } } ] }
{ "requestId": "6894439706274654524", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentApplication": "youtube" } } ] } }
appSelect
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.AppSelector
.
{ "requestId": "6894439706274654526", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.appSelect", "params": { "newApplication": "youtube" } } ] } ] } } ] }
{ "requestId": "6894439706274654526", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentApplication": "youtube" } } ] } }
selectChannel
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.Channel
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.selectChannel", "params": { "channelCode": "ktvu2" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }
relativeChannel
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.Channel
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.relativeChannel", "params": { "relativeChannelChange": 1 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }
returnChannel
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.Channel
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.returnChannel" } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }
mediaClosedCaptioningOff
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654530", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaClosedCaptioningOff" } ] } ] } } ] }
{ "requestId": "6894439706274654530", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaClosedCaptioningOn
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654532", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaClosedCaptioningOn", "params": { "closedCaptioningLanguage": "en" } } ] } ] } } ] }
{ "requestId": "6894439706274654532", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaNext
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654534", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaNext" } ] } ] } } ] }
{ "requestId": "6894439706274654534", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "FAST_FORWARDING" } } ] } }
mediaPause
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654536", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaPause" } ] } ] } } ] }
{ "requestId": "6894439706274654536", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PAUSED" } } ] } }
mediaPrevious
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654538", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaPrevious" } ] } ] } } ] }
{ "requestId": "6894439706274654538", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "REWINDING" } } ] } }
mediaResume
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654540", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaResume" } ] } ] } } ] }
{ "requestId": "6894439706274654540", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaStop
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.TransportControl
.
{ "requestId": "6894439706274654542", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaStop" } ] } ] } } ] }
{ "requestId": "6894439706274654542", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "STOPPED" } } ] } }