CameraEventImage स्कीमा

Nest Cam (लेगसी) Nest Hub Max Nest Doorbell (लेगसी) 

sdm.devices.traits.CameraEventImage

यह ट्रेट, इवेंट से इमेज जनरेट करने की सुविधा वाले हर डिवाइस में होती है.

फ़ील्ड

इस ट्रेट के लिए कोई फ़ील्ड उपलब्ध नहीं है.

निर्देश

GenerateImage

कैमरे से ली गई इमेज डाउनलोड करने के लिए यूआरएल देता है.

इस निर्देश की मदद से, ये इवेंट ट्रिगर किए जा सकते हैं:

टाइप एलिमेंट ब्यौरा
इवेंट CameraMotion ट्रेट का Motion इवेंट कैमरे ने हलचल का पता लगाया है.
इवेंट CameraPerson ट्रेट का Person इवेंट कैमरे को किसी व्यक्ति की मौजूदगी का पता चला है.
इवेंट CameraSound ट्रेट का Sound इवेंट कैमरे ने आवाज़ का पता लगाया है.
इवेंट DoorbellChime trait का Chime इवेंट दरवाज़े की घंटी बजाई गई है.
कमांड के अनुरोध में, इस सुविधा के साथ काम करने वाले किसी इवेंट के eventId का इस्तेमाल करें. इससे आपको उस इवेंट से जुड़ी कैमरे की इमेज डाउनलोड करने का यूआरएल मिलेगा.

GenerateImage का अनुरोध और जवाब

अनुरोध

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
  "params" : {
    "eventId" : "VrLDJcsFEKVsVTjbNtNBle65KR..."
  }
}

जवाब

{
  "results" : {
    "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
    "token" : "g.0.eventToken"
  }
}

GenerateImage अनुरोध के फ़ील्ड

फ़ील्ड ब्यौरा डेटा टाइप
eventId उस इवेंट का आईडी जिसके लिए, कैमरे से ली गई इमेज का अनुरोध करना है. string
उदाहरण: "VrLDJcsFEKVsVTjbNtNBle65KR..."

GenerateImage के रिस्पॉन्स फ़ील्ड

फ़ील्ड ब्यौरा डेटा टाइप
url कैमरे की इमेज डाउनलोड करने के लिए यूआरएल. string
उदाहरण: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token इमेज डाउनलोड करते समय, एचटीटीपी ऑथराइज़ेशन हेडर में इस्तेमाल किया जाने वाला टोकन. string
उदाहरण: "g.0.eventToken"

कैमरे से ली गई इमेज डाउनलोड करना

कैमरे की इमेज डाउनलोड करने के लिए, GenerateImage कमांड रिस्पॉन्स से url पर GET कॉल करें. इसके लिए, एचटीटीपी ऑथराइज़ेशन हेडर में 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 का इस्तेमाल करें.

एपीआई के गड़बड़ी कोड की पूरी सूची के लिए, एपीआई के गड़बड़ी कोड का रेफ़रंस देखें.