Panduan Remote Media Smart Home
action.devices.types.REMOTECONTROL
- Remote media digunakan untuk mengontrol perangkat media. Contoh jenis perangkat ini termasuk hub, remote universal, dan pengontrol media.
Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Media Remote dan beberapa hal terkait sinonim dan alias.
Kemampuan perangkat
Lihat dokumentasi sifat yang sesuai untuk detail penerapan, seperti atribut dan status yang harus didukung layanan Anda, serta cara membangun respons EXECUTE dan QUERY.
Ciri yang diperlukan
Sifat dan perintah ini diperlukan, jika berlaku untuk
perangkat seluler. Jika perangkat Anda tidak mendukung ciri ini, masukkan kode kesalahan
functionNotSupported
dalam respons QUERY atau EXECUTE. Lihat
Error dan pengecualian untuk info selengkapnya.
Sifat | Perintah |
---|---|
action.devices.traits.AppSelector |
|
action.devices.traits.InputSelector |
|
action.devices.traits.MediaState |
|
action.devices.traits.OnOff |
|
action.devices.traits.TransportControl |
|
action.devices.traits.Volume |
|
Fitur yang direkomendasikan
Fitur ini direkomendasikan, jika berlaku untuk perangkat Anda. Namun, Anda bebas memadupadankan semua sifat yang tersedia agar cocok dengan yang ada fungsionalitas produk.
action.devices.traits.Channel
action.devices.traits.Modes
- Mode TV (seperti Bioskop atau Olahraga)
action.devices.traits.Toggles
Persyaratan kualitas
- Latensi: harus kurang dari atau sama dengan 3.000 md.
- Keandalan: harus lebih dari atau sama dengan 97%.
Perangkat contoh: Remote media sederhana
Bagian ini berisi contoh payload intent yang mewakili "Media Remote" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus ciri khas dalam implementasi Anda, ubah tanggapan Anda untuk mencerminkan perubahan tersebut.
Contoh respons SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.REMOTECONTROL", "traits": [ "action.devices.traits.Channel", "action.devices.traits.AppSelector", "action.devices.traits.InputSelector", "action.devices.traits.MediaState", "action.devices.traits.OnOff", "action.devices.traits.TransportControl", "action.devices.traits.Volume" ], "name": { "name": "Simple media remote" }, "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" } ], "availableInputs": [ { "key": "hdmi_1", "names": [ { "name_synonym": [ "HDMI 1", "DVD Player" ], "lang": "en" } ] }, { "key": "hdmi_2", "names": [ { "name_synonym": [ "HDMI 2", "TV" ], "lang": "en" } ] } ], "orderedInputs": false, "volumeMaxLevel": 11, "volumeCanMuteAndUnmute": true, "volumeDefaultPercentage": 6, "levelStepSize": 2, "commandOnlyVolume": false, "supportActivityState": true, "supportPlaybackState": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Contoh respons 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", "currentInput": "hdmi_1", "currentVolume": 10, "isMuted": false, "activityState": "ACTIVE", "playbackState": "PAUSED" } } } }
Contoh perintah EXECUTE
appInstall
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.AppSelector
alamat IP internal.
{ "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
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.AppSelector
alamat IP internal.
{ "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
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.AppSelector
alamat IP internal.
{ "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" } } ] } }
SetInput
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.InputSelector
alamat IP internal.
{ "requestId": "6894439706274654528", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetInput", "params": { "newInput": "hdmi_2" } } ] } ] } } ] }
{ "requestId": "6894439706274654528", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentInput": "hdmi_2" } } ] } }
PreviousInput
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.InputSelector
alamat IP internal.
{ "requestId": "6894439706274654532", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.PreviousInput" } ] } ] } } ] }
{ "requestId": "6894439706274654532", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentInput": "hdmi_2" } } ] } }
NextInput
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.InputSelector
alamat IP internal.
{ "requestId": "6894439706274654530", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.NextInput" } ] } ] } } ] }
{ "requestId": "6894439706274654530", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentInput": "hdmi_2" } } ] } }
OnOff
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.OnOff
alamat IP internal.
{ "requestId": "6894439706274654534", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654534", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
mediaClosedCaptioningOff
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654536", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaClosedCaptioningOff" } ] } ] } } ] }
{ "requestId": "6894439706274654536", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaClosedCaptioningOn
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654538", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaClosedCaptioningOn", "params": { "closedCaptioningLanguage": "en" } } ] } ] } } ] }
{ "requestId": "6894439706274654538", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaNext
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654540", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaNext" } ] } ] } } ] }
{ "requestId": "6894439706274654540", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "FAST_FORWARDING" } } ] } }
mediaPause
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654542", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaPause" } ] } ] } } ] }
{ "requestId": "6894439706274654542", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PAUSED" } } ] } }
mediaPrevious
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654544", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaPrevious" } ] } ] } } ] }
{ "requestId": "6894439706274654544", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "REWINDING" } } ] } }
mediaResume
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654546", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaResume" } ] } ] } } ] }
{ "requestId": "6894439706274654546", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "PLAYING" } } ] } }
mediaStop
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.TransportControl
alamat IP internal.
{ "requestId": "6894439706274654548", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mediaStop" } ] } ] } } ] }
{ "requestId": "6894439706274654548", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "playbackState": "STOPPED" } } ] } }
bisukan
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.Volume
alamat IP internal.
{ "requestId": "6894439706274654552", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.mute", "params": { "mute": true } } ] } ] } } ] }
{ "requestId": "6894439706274654552", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentVolume": 10, "isMuted": true } } ] } }
setVolume
Untuk detail tambahan
tentang parameter perintah,
lihat
action.devices.traits.Volume
alamat IP internal.
{ "requestId": "6894439706274654550", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.setVolume", "params": { "volumeLevel": 11 } } ] } ] } } ] }
{ "requestId": "6894439706274654550", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentVolume": 11, "isMuted": false } } ] } }