Akıllı Ev Kamerası Kılavuzu
action.devices.types.CAMERA
: Kameralar karmaşıktır ve özellikler tedarikçi firmalar arasında önemli ölçüde değişiklik gösterir. Kameralar zaman içinde belirli özellikleri tanımlayan birçok özellik ve özellik edinir. Bunların çoğu, video/ses akışıyla özel şekillerde etkileşim kurabilir (ör. başka bir cihaza akış gönderme, akıştaki içeriği tanımlama, feed'leri yeniden oynatma vb.).
Bu tür, cihazın Kamera simgesini ve bazı ilgili eş anlamlı kelimeleri ve takma adları aldığını gösterir.
Cihaz özellikleri
Hizmetinizin desteklemesi gereken özellikler ve durumlar gibi uygulama ayrıntıları ve EXECUTE ile QUERY yanıtlarının nasıl oluşturulacağı hakkında bilgi edinmek için ilgili özellik dokümanlarına bakın.
Zorunlu özellikler
Cihazınız için geçerliyse bu özellikler ve komutlar gereklidir. 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: 2000 ms'den az veya eşit olmalıdır.
- Güvenilirlik: %97'den büyük veya buna eşit olmalıdır.
Örnek cihaz: Basit kamera
Bu bölümde, yukarıdaki cihaz türüne ve özelliklere göre yaygın bir "Kamera"yı temsil eden örnek intent yüklemeleri bulunmaktadır. Uygulamanızda özellik ekler veya kaldırırsanız bu değişiklikleri yansıtacak şekilde yanıtlarınızı değiştirin.
Örnek SYNC 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 HATALARI
Hataların ve istisnaların tam listesini inceleyin.resourceUnavailable
: Akış URL'sinin oluşturulmasıyla ilgili tüm hatalar.