Panduan Kamera Smart Home
action.devices.types.CAMERA
- Kamera bersifat kompleks dan fiturnya akan sangat bervariasi antar-vendor. Seiring waktu, kamera akan memperoleh banyak karakteristik dan atribut yang menjelaskan kemampuan tertentu, banyak di antaranya dapat berinteraksi dengan streaming video/audio dengan cara khusus, seperti mengirim streaming ke perangkat lain, mengidentifikasi apa yang ada di streaming, memutar ulang feed, dll.
Jenis ini menunjukkan bahwa perangkat mendapatkan ikon Kamera dan beberapa sinonim dan alias terkait.
Kemampuan perangkat
Lihat dokumentasi karakteristik yang sesuai untuk mengetahui detail penerapan, seperti atribut dan status yang harus didukung layanan Anda, serta cara mem-build respons EXECUTE dan QUERY.
Sifat yang diperlukan
Ciri dan perintah ini diperlukan, jika berlaku untuk
perangkat Anda. Jika perangkat Anda tidak mendukung karakteristik ini, masukkan kode error
functionNotSupported
dalam respons QUERY atau EXECUTE. Lihat
Error dan pengecualian untuk mengetahui info selengkapnya.
Persyaratan kualitas
- Latensi: harus kurang dari atau sama dengan 2.000 md.
- Keandalan: harus lebih besar dari atau sama dengan 97%.
Contoh perangkat: Kamera sederhana
Bagian ini berisi contoh payload intent yang mewakili "Kamera" umum berdasarkan jenis dan karakteristik perangkat di atas. Jika Anda menambahkan atau menghapus karakteristik dalam penerapan, ubah respons Anda agar sesuai dengan perubahan tersebut.
Contoh respons SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.CAMERA", "traits": [ "action.devices.traits.CameraStream" ], "name": { "name": "Simple camera" }, "willReportState": true, "attributes": { "cameraStreamSupportedProtocols": [ "hls", "progressive_mp4" ], "cameraStreamNeedAuthToken": true, "cameraStreamNeedDrmEncryption": false }, "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 } } } }
Contoh perintah EXECUTE
GetCameraStream
Untuk detail tambahan tentang parameter perintah,
lihat referensi
action.devices.traits.CameraStream
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.GetCameraStream", "params": { "StreamToChromecast": true, "SupportedStreamProtocols": [ "progressive_mp4" ] } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "cameraStreamAccessUrl": "https://fluffysheep.com/baaaaa.mp4", "cameraStreamReceiverAppId": "1g2f89213hg", "cameraStreamAuthToken": "12657342190192783", "cameraStreamProtocol": "progressive_mp4" } } ] } }
ERROR Perangkat
Lihat daftar lengkap error dan pengecualian.resourceUnavailable
- Kegagalan apa pun yang terkait dengan pembuatan URL streaming.