CameraEventImage स्कीमा

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

sdm.devices.traits.CameraEventImage

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

फ़ील्ड

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

निर्देश

GenerateImage

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

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

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

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

अनुरोध

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

जवाब

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

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

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

GenerateImage के जवाब के फ़ील्ड

फ़ील्ड ब्यौरा डेटा टाइप
url कैमरे से ली गई इमेज डाउनलोड करने का यूआरएल. string
Example: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token इमेज डाउनलोड करते समय, एचटीटीपी ऑथराइज़ेशन हेडर में इस्तेमाल किया जाने वाला टोकन. string
Example: "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 को अनदेखा कर दिया जाता है.
  • अगर यूआरएल में कोई भी पैरामीटर नहीं दिया गया है, तो डिफ़ॉल्ट वैल्यू 480 चुनी जाती है width.

इमेज की प्रॉपर्टी के बारे में जानने के लिए, CameraImage trait देखें.

गड़बड़ियां

इस ट्रेट के लिए, ये गड़बड़ी कोड दिखाए जा सकते हैं:

गड़बड़ी का मैसेज RPC समस्या का हल
कैमरे से ली गई इमेज अब डाउनलोड के लिए उपलब्ध नहीं है. DEADLINE_EXCEEDED इवेंट पब्लिश होने के 30 सेकंड बाद, इवेंट की इमेज की समयसीमा खत्म हो जाती है. समयसीमा खत्म होने से पहले, इमेज डाउनलोड करना न भूलें.
इवेंट आईडी, कैमरे से जुड़ा नहीं है. FAILED_PRECONDITION कैमरे के इवेंट से मिले सही eventID का इस्तेमाल करें.

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