คำแนะนำเกี่ยวกับกล้องสมาร์ทโฮม

action.devices.types.CAMERA - กล้องมีความซับซ้อนและฟีเจอร์ต่างๆ จะแตกต่างกันระหว่างผู้ให้บริการแต่ละราย เมื่อเวลาผ่านไป กล้องจะมีลักษณะและแอตทริบิวต์มากมายที่อธิบายความสามารถเฉพาะ ซึ่งหลายอย่างอาจโต้ตอบกับสตรีมวิดีโอ/เสียงด้วยวิธีพิเศษ เช่น การส่งสตรีมไปยังอุปกรณ์อื่น การระบุสิ่งที่อยู่ในสตรีม การเล่นฟีดซ้ำ เป็นต้น

ประเภทนี้บ่งชี้ว่าอุปกรณ์มีไอคอนกล้อง และบางอย่างที่เกี่ยวข้อง คำพ้องความหมายและชื่อแทน

ความสามารถของอุปกรณ์

โปรดดูเอกสารลักษณะเฉพาะที่เกี่ยวข้องสำหรับ รายละเอียดการใช้งาน เช่น แอตทริบิวต์และสถานะที่บริการของคุณควรรองรับ รวมถึงวิธีการ สร้างการตอบกลับ EXECUTE และ QUERY

ลักษณะที่จำเป็น

คุณต้องระบุลักษณะและคำสั่งเหล่านี้ หากเกี่ยวข้องกับ อุปกรณ์ หากอุปกรณ์ของคุณไม่สนับสนุนลักษณะเหล่านี้ ให้ป้อนรหัสข้อผิดพลาดของ functionNotSupported ในการตอบกลับ QUERY หรือ EXECUTE โปรดดู ข้อผิดพลาดและข้อยกเว้นสำหรับข้อมูลเพิ่มเติม

ข้อกำหนดด้านคุณภาพ

  • เวลาในการตอบสนอง: ต้องน้อยกว่าหรือเท่ากับ 2,000 มิลลิวินาที
  • ความเสถียร: ต้องมากกว่าหรือเท่ากับ 97%

อุปกรณ์ตัวอย่าง: กล้องแบบธรรมดา

ส่วนนี้ประกอบด้วยเพย์โหลด Intent ตัวอย่างที่แสดงถึง "กล้อง" ทั่วไป โดยอิงตามประเภทอุปกรณ์และลักษณะด้านบน หากคุณเพิ่มหรือนำลักษณะในการติดตั้งใช้งานออก ให้แก้ไขคำตอบให้สอดคล้องกับการเปลี่ยนแปลงเหล่านั้น

ตัวอย่างการตอบสนองการซิงค์

คำขอ
วันที่
{
  "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 สตรีม