دليل الكاميرا المنزلية الذكية

action.devices.types.CAMERA - الكاميرات معقّدة وتختلف ميزاتها بشكل كبير بين المورّدين. بمرور الوقت، اكتسبت الكاميرات العديد من السمات والسمات التي تصف إمكانات معيّنة، وقد يتفاعل العديد منها مع بث الفيديو/الصوت بطرق خاصة، مثل إرسال بث إلى جهاز آخر أو التعرّف على البث أو إعادة تشغيل الخلاصات وما إلى ذلك.

يشير هذا النوع إلى أنّ الجهاز يعرض رمز الكاميرا وبعض المرادفات والأسماء المستعارة ذات الصلة.

إمكانات الجهاز

يمكنك الرجوع إلى وثائق السمات المقابلة لتفاصيل التنفيذ، مثل السمات والحالات التي يجب أن تدعمها خدمتك، وكيفية إنشاء استجابات EXECUTE وQUERY.

السمات المطلوبة

هذه السمات والأوامر مطلوبة، إذا كانت منطبقة على جهازك. إذا كان جهازك لا يتيح استخدام هذه السمات، أدخِل رمز الخطأ functionNotSupported في الاستجابة QUERY أو EXECUTE. يمكنك الاطّلاع على الأخطاء والاستثناءات لمعرفة مزيد من المعلومات.

متطلبات الجودة

  • وقت الاستجابة: يجب أن يكون أقل من 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 - أي إخفاق متعلق بإنشاء عنوان URL للبث.