स्मार्ट होम कैमरे के बारे में जानकारी
action.devices.types.CAMERA
- कैमरे जटिल होते हैं और वेंडर के हिसाब से उनकी सुविधाएं काफ़ी अलग-अलग हो सकती हैं. समय के साथ, कैमरों में कई खास सुविधाओं के बारे में बताने वाले कई एट्रिब्यूट और खास बातें जुड़ जाएंगी. इनमें से कई एट्रिब्यूट, वीडियो/ऑडियो स्ट्रीम के साथ खास तरीके से इंटरैक्ट कर सकते हैं. जैसे, किसी दूसरे डिवाइस पर स्ट्रीम भेजना, स्ट्रीम में मौजूद चीज़ों की पहचान करना, फ़ीड फिर से चलाना वगैरह.
इस टाइप से पता चलता है कि डिवाइस को कैमरा आइकॉन और उससे मिलते-जुलते कुछ शब्द और उपनाम मिलते हैं.
डिवाइस की सुविधाएं
लागू करने से जुड़ी जानकारी के लिए, उस ट्रेट का दस्तावेज़ देखें. जैसे, एट्रिब्यूट और स्थितियां जिनके साथ आपकी सेवा काम करनी चाहिए. साथ ही, EXECUTE और QUERY रिस्पॉन्स बनाने का तरीका.
ज़रूरी विशेषताएं
अगर आपके डिवाइस पर ये सुविधाएं काम करती हैं, तो इन विशेषताओं और निर्देशों की ज़रूरत होती है. अगर आपके डिवाइस पर ये ट्रैट काम नहीं करते, तो QUERY या EXECUTE रिस्पॉन्स में functionNotSupported
का गड़बड़ी कोड डालें. ज़्यादा जानकारी के लिए, गड़बड़ियां और अपवाद देखें.
क्वालिटी के लिए ज़रूरी शर्तें
- इंतज़ार का समय: यह 2000 मि॰से॰ से कम या इसके बराबर होना चाहिए.
- भरोसेमंदता: यह 97% से ज़्यादा या उसके बराबर होनी चाहिए.
डिवाइस का उदाहरण: सामान्य कैमरा
इस सेक्शन में, डिवाइस के टाइप और ऊपर बताए गए ट्रैट के आधार पर, सामान्य "कैमरा" के उदाहरण वाले इंटेंट पेलोड दिए गए हैं. अगर आपने लागू करने के दौरान कोई विशेषता जोड़ी या हटाई है, तो उन बदलावों को दिखाने के लिए, अपने जवाबों में बदलाव करें.
सिंक के रिस्पॉन्स का सैंपल
{ "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" } } ] } }
QUERY फ़ंक्शन के रिस्पॉन्स का सैंपल
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true } } } }
EXECUTE कमांड के सैंपल
GetCameraStream
कमांड पैरामीटर के बारे में ज़्यादा जानकारी के लिए,
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" } } ] } }
डिवाइस से जुड़ी गड़बड़ियां
गड़बड़ियों और अपवादों की पूरी सूची देखें.resourceUnavailable
- स्ट्रीम यूआरएल जनरेट करने से जुड़ी कोई भी गड़बड़ी.