Akıllı ev kamerası rehberi
action.devices.types.CAMERA
: Kameralar karmaşıktır ve özellikler, satıcılar arasında önemli ölçüde farklılık gösterir. Zaman içinde kameralar, belirli özellikleri açıklayan pek çok özellik ve özellik edinecektir. Bu özelliklerin çoğu, video/ses akışıyla özel şekillerde etkileşimde bulunabilir (ör. başka bir cihaza akış gönderme, yayındaki içeriği tanımlama, feed'leri tekrar oynatma vb.).
Bu tür, cihazın Kamera simgesi, ilgili bazı eş anlamlılar ve takma adlar aldığını belirtir.
Cihaz özellikleri
Hizmetinizin desteklemesi gereken özellikler ve durumlar ile EXECUTE ve QUERY yanıtlarının nasıl oluşturulacağı gibi uygulama ayrıntıları için ilgili özellik belgelerine bakın.
Gerekli özellikler
Bu özellikler ve komutlar, cihazınız için geçerliyse zorunludur. Cihazınız bu özellikleri desteklemiyorsa bir QUERY veya EXECUTE yanıtına functionNotSupported
hata kodunu girin. Daha fazla bilgi için Hatalar ve istisnalar bölümüne bakın.
Kalite gereksinimleri
- Gecikme: 2.000 ms'den az veya bu değere eşit olmalıdır.
- Güvenilirlik: %97'den fazla veya bu değere eşit olmalıdır.
Örnek cihaz: Basit kamera
Bu bölümde, yukarıdaki cihaz türüne ve özelliklere göre ortak bir "Kamera"yı temsil eden örnek amaç yükleri yer alır. Uygulamanıza özellik ekler veya uygulamanızdaki özellikleri kaldırırsanız yanıtlarınızı bu değişiklikleri yansıtacak şekilde değiştirin.
Örnek SENKRONİZASYON yanıtı
{ "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" } } ] } }
Örnek QUERY yanıtı
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true } } } }
Örnek EXECUTE komutları
GetCameraStream
Komut parametreleri hakkında daha fazla bilgi için
action.devices.traits.CameraStream
referansına bakın.
{ "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" } } ] } }
Cihaz ERRORS
Hataların ve istisnaların tam listesine bakın.resourceUnavailable
: Akış URL'sinin oluşturulmasıyla ilgili herhangi bir hata.