CameraEventImage स्कीमा
Nest Cam (लेगसी)
sdm.devices.traits.CameraEventImage
यह ट्रेट, इवेंट से इमेज जनरेट करने की सुविधा वाले हर डिवाइस में होती है.
फ़ील्ड
इस ट्रेट के लिए कोई फ़ील्ड उपलब्ध नहीं है.
निर्देश
GenerateImage
कैमरे से ली गई इमेज को डाउनलोड करने के लिए यूआरएल उपलब्ध कराता है.
इस निर्देश का इस्तेमाल, इन इवेंट के लिए किया जा सकता है:
| टाइप | एलिमेंट | ब्यौरा |
|---|---|---|
| इवेंट | CameraMotion ट्रेट का Motion इवेंट | कैमरे ने हलचल का पता लगाया है. |
| इवेंट | CameraPerson trait का Person इवेंट | कैमरे ने किसी व्यक्ति का पता लगाया है. |
| इवेंट | CameraSound ट्रेट का Sound इवेंट | कैमरे ने आवाज़ का पता लगाया है. |
| इवेंट | DoorbellChime ट्रेट का Chime इवेंट | दरवाज़े की घंटी बजाई गई है. |
eventId का इस्तेमाल करें. इससे आपको उस इवेंट से जुड़ी कैमरे की इमेज का डाउनलोड यूआरएल मिलेगा.
GenerateImage का अनुरोध और जवाब
अनुरोध
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
"params" : {
"eventId" : "HHtcFIhuvVkASGKokgtK5rJhrQ..."
}
}
जवाब
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
GenerateImage अनुरोध के फ़ील्ड
| फ़ील्ड | ब्यौरा | डेटा टाइप |
|---|---|---|
eventId |
उस इवेंट का आईडी जिसके लिए, कैमरे से ली गई इमेज का अनुरोध करना है. | stringउदाहरण: "HHtcFIhuvVkASGKokgtK5rJhrQ..." |
GenerateImage रिस्पॉन्स फ़ील्ड
| फ़ील्ड | ब्यौरा | डेटा टाइप |
|---|---|---|
url |
कैमरे की इमेज डाउनलोड करने के लिए यूआरएल. | stringउदाहरण: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..." |
token |
इमेज डाउनलोड करते समय, एचटीटीपी ऑथराइज़ेशन हेडर में इस्तेमाल किया जाने वाला टोकन. | stringउदाहरण: "g.0.eventToken" |
कैमरे से ली गई इमेज डाउनलोड करना
कैमरे की इमेज डाउनलोड करने के लिए, url को GET कॉल करें. इसके लिए, GenerateImage कमांड के रिस्पॉन्स का इस्तेमाल करें. साथ ही, एचटीटीपी ऑथराइज़ेशन हेडर में token का इस्तेमाल करें. इसके लिए, बेसिक ऑथराइज़ेशन का इस्तेमाल करें:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...डाउनलोड की गई इमेज के रिज़ॉल्यूशन को पसंद के मुताबिक बनाने के लिए, width या height क्वेरी पैरामीटर का इस्तेमाल करें. इनमें से सिर्फ़ एक पैरामीटर की वैल्यू डालनी होगी. कैमरे के आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) के हिसाब से, दूसरा पैरामीटर अपने-आप स्केल हो जाता है.
उदाहरण के लिए, अगर कैमरे का आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) 4:3 है, तो 480 x 360 के रिज़ॉल्यूशन वाली कैमरे की इमेज डाउनलोड करने के लिए, चौड़ाई या ऊंचाई में से कोई एक बताएं:
चौड़ाई
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480ऊंचाई
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360डाउनलोड यूआरएल पर ये पाबंदियां भी लागू होती हैं:
- अगर यूआरएल में दोनों पैरामीटर दिए गए हैं, तो
widthका इस्तेमाल किया जाता है औरheightको अनदेखा कर दिया जाता है. - अगर यूआरएल में कोई भी पैरामीटर नहीं दिया गया है, तो
widthके लिए 480 की डिफ़ॉल्ट वैल्यू चुनी जाती है.
इमेज की प्रॉपर्टी के बारे में जानकारी पाने के लिए, CameraImage ट्रेट देखें.
गड़बड़ियां
इस विशेषता के लिए, गड़बड़ी के ये कोड दिख सकते हैं:
| गड़बड़ी का मैसेज | RPC | समस्या का हल |
|---|---|---|
| कैमरे से ली गई इमेज अब डाउनलोड करने के लिए उपलब्ध नहीं है. | DEADLINE_EXCEEDED |
इवेंट पब्लिश होने के 30 सेकंड बाद, इवेंट की इमेज दिखनी बंद हो जाती हैं. इमेज की समयसीमा खत्म होने से पहले उसे डाउनलोड कर लें. |
| इवेंट आईडी, कैमरे से जुड़ा नहीं है. | FAILED_PRECONDITION |
कैमरा इवेंट से मिले सही eventID का इस्तेमाल करें. |
एपीआई के गड़बड़ी कोड की पूरी सूची के लिए, एपीआई के गड़बड़ी कोड का रेफ़रंस देखें.