स्मार्ट होम कैमरे की गाइड

action.devices.types.CAMERA - कैमरे जटिल होते हैं और वेंडर के बीच सुविधाओं में काफ़ी अंतर होता है. समय के साथ, कैमरों में कई ऐसी विशेषताएं और एट्रिब्यूट जुड़ जाएंगे जो खास क्षमताओं का ब्यौरा देंगे. इनमें से कई सुविधाएं, वीडियो/ऑडियो स्ट्रीम के साथ खास तरीकों से इंटरैक्ट कर सकती हैं. जैसे, किसी दूसरे डिवाइस पर स्ट्रीम भेजना, स्ट्रीम में मौजूद कॉन्टेंट को पहचानना, फ़ीड को फिर से चलाना वगैरह.

यह टाइप बताता है कि डिवाइस को कैमरा आइकॉन मिलता है और इससे जुड़ी कुछ जानकारी समानार्थी शब्द और उपनाम.

डिवाइस की क्षमताएं

इससे जुड़े Trait दस्तावेज़ को देखें लागू करने के बारे में जानकारी, जैसे कि वे एट्रिब्यूट और स्थितियां जिनका आपकी सेवा में इस्तेमाल किया जाना चाहिए. साथ ही, EXECUTE और QUERY रिस्पॉन्स बनाएं.

ज़रूरी विशेषताएं

अगर लागू हो, तो आपके ये लक्षण और निर्देश ज़रूरी हैं डिवाइस. अगर आपके डिवाइस में ये लक्षण काम नहीं करते हैं, तो गड़बड़ी का कोड डालें QUERY या EXECUTE जवाब में functionNotSupported. यहां जाएं: ज़्यादा जानकारी के लिए, गड़बड़ियां और अपवाद.

क्वालिटी के लिए ज़रूरी शर्तें

  • इंतज़ार का समय: 2,000 मि॰से॰ या उससे कम होना चाहिए.
  • भरोसेमंद: 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"
        }
      }
    ]
  }
}

डिवाइस ERRORS

पूरी सूची देखें गड़बड़ियों और अपवाद के तौर पर मार्क किया जा सकता है.
  • resourceUnavailable - स्ट्रीम यूआरएल जनरेट करने में कोई गड़बड़ी हुई.