กริ่งประตู (เดิม)

Nest Hello

Nest Doorbell รุ่นเดิมทั้งหมดรองรับใน Smart Device Management (SDM) API อุปกรณ์นี้จะแสดงผลประเภทอุปกรณ์ DOORBELL

sdm.devices.types.DOORBELL

Google Nest Doorbell (เดิม) มีกล้องที่ทํางานเหมือนกับ CAMERA ประเภทอุปกรณ์

ลักษณะเฉพาะ

ข้อมูลอ้างอิง

ลักษณะเฉพาะ คําสั่ง หรือเหตุการณ์ต่อไปนี้เกี่ยวข้องกับอุปกรณ์นี้

ลักษณะเฉพาะคำอธิบายคำสั่งกิจกรรม
รูปภาพจากกล้องลักษณะนี้เป็นของอุปกรณ์ที่รองรับการสร้างรูปภาพจากกิจกรรมสร้างรูปภาพ
รูปภาพจากกล้องลักษณะนี้เป็นของอุปกรณ์ทั้งหมดที่รองรับการถ่ายภาพ
กล้องสตรีมแบบสดลักษณะนี้เป็นของอุปกรณ์ที่รองรับสตรีมมิงแบบสดGenerateRtspStream
ExpandRtspStream
StopRtspStream
CameraMotionลักษณะนี้เป็นของอุปกรณ์ที่รองรับเหตุการณ์การตรวจจับการเคลื่อนไหวการเคลื่อนไหว
เจ้าหน้าที่ถ่ายภาพลักษณะนี้เป็นของอุปกรณ์ที่รองรับการสนับสนุนการตรวจจับบุคคลบุคคล
กล้องเสียงลักษณะนี้เป็นของอุปกรณ์ที่รองรับเหตุการณ์การตรวจจับเสียงเสียง
กริ่งประตู กริ่งประตูลักษณะนี้เป็นของอุปกรณ์ที่รองรับอุปกรณ์ที่รองรับเสียงกริ่งและเหตุการณ์กริ่งประตูที่เกี่ยวข้องชิลี
ข้อมูลลักษณะนี้เป็นของทุกอุปกรณ์สําหรับข้อมูลที่เกี่ยวข้องกับอุปกรณ์

JSON

การขาดแคลนลักษณะเฉพาะในการตอบสนอง GET บ่งบอกว่าปัจจุบันฟีเจอร์หรือฟีเจอร์ไม่พร้อมใช้งานในอุปกรณ์ ดูข้อมูลเพิ่มเติมได้ที่ประเภทอุปกรณ์

{
  "type" : "sdm.devices.types.DOORBELL",
  "traits" : {
    "sdm.devices.traits.CameraEventImage" : {},
    "sdm.devices.traits.CameraImage" : {
      "maxImageResolution" : {
        "width" : 1280,
        "height" : 960
      }
    },
    "sdm.devices.traits.CameraLiveStream" : {
      "maxVideoResolution" : {
        "width" : 640,
        "height" : 480
      },
      "videoCodecs" : ["H264"],
      "audioCodecs" : ["AAC"],
      "supportedProtocols" : ["WEB_RTC"]
    },
    "sdm.devices.traits.CameraMotion" : {},
    "sdm.devices.traits.CameraPerson" : {},
    "sdm.devices.traits.CameraSound" : {},
    "sdm.devices.traits.DoorbellChime" : {},
    "sdm.devices.traits.Info" : {
      "customName" : "My device"
    }
  }
}

จัดการเหตุการณ์ของกริ่งประตูและกล้อง

เหตุการณ์ต่อไปนี้อาจเรียกใช้จากอุปกรณ์ประเภท DOORBELL

ประเภท องค์ประกอบ คำอธิบาย
เหตุการณ์ เหตุการณ์การเคลื่อนไหวของลักษณะกล้อง กล้องตรวจพบการเคลื่อนไหว
เหตุการณ์ เหตุการณ์บุคคลของลักษณะกล้อง กล้องตรวจพบบุคคล
เหตุการณ์ เหตุการณ์เสียงของลักษณะเฉพาะของ CameraSound กล้องตรวจพบเสียง
เหตุการณ์ เหตุการณ์ Chime ของลักษณะเฉพาะของ DoorbellChime กดกริ่งประตูแล้ว
เช่น การกดปุ่มกริ่งประตูที่นี่

เพย์โหลด

{
  "eventId" : "68ce50b5-e0b8-45e0-9a37-34fb7efc2896",
"timestamp" : "2019-01-01T00:00:01Z",
"resourceUpdate" : { "name" : "enterprises/project-id/devices/device-id", "events" : { "sdm.devices.events.DoorbellChime.Chime" : { "eventSessionId" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF...", "eventId" : "iZmSbIlr7EagJX_-4w8vLH1moK..." } } } "userId" : "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
"resourceGroup" : [ "enterprises/project-id/devices/device-id" ] }
เพย์โหลดของเหตุการณ์นี้มี eventId ที่ใช้กับคําสั่ง GenerateImage ได้ คําสั่งนี้จะแสดง URL การดาวน์โหลดสําหรับรูปภาพของกล้องที่เกี่ยวข้องกับเหตุการณ์

ส่งคำขอ

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

คำตอบ

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

ดาวน์โหลดรูปภาพจากกล้อง

เรียก GET จาก url จากการตอบสนองของคําสั่ง GenerateImage โดยใช้ token ในส่วนหัวการให้สิทธิ์ HTTP ที่มีการให้สิทธิ์พื้นฐานเพื่อดาวน์โหลดรูปภาพกล้อง

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

ข้อจํากัดอื่นๆ ของ URL การดาวน์โหลดจะมีผลดังนี้

  • หากระบุพารามิเตอร์ทั้งสองใน URL ระบบจะใช้ width และละเว้น height
  • หากไม่ได้ระบุพารามิเตอร์ใน URL ระบบจะเลือกค่าเริ่มต้น 480 สําหรับ width

ดูข้อมูลเกี่ยวกับพร็อพเพอร์ตี้ของรูปภาพใน รูปภาพจากกล้อง

เข้าถึงสตรีมแบบสด

คุณเข้าถึงสตรีมแบบสดจากกล้องได้ อุปกรณ์นี้รองรับรูปแบบสตรีมต่อไปนี้

  • ขวาไปซ้าย

โปรดดูรายชื่อกล้องและรูปแบบสตรีมทั้งหมดที่รองรับที่หัวข้ออุปกรณ์ที่รองรับ

หากต้องการเข้าถึงสตรีมแบบสด ให้ใช้คําสั่ง "CreateFormatStream" ของลักษณะ CameraLiveStream ที่เหมาะสม

ขวาไปซ้าย

สําหรับสตรีม RTSP คําสั่ง GenerateRtspStream ของคําสั่งเทรด CameraLiveStream จะแสดง URL ของสตรีมและ streamToken ที่เกี่ยวข้อง

ส่งคำขอ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.GenerateRtspStream",
  "params" : {}
}

คำตอบ

{
  "results" : {
    "streamUrls" : {
      "rtspUrl" : "rtsps://someurl.com/CjY5Y3VKaTZwR3o4Y19YbTVfMF...?auth=g.0.streamingToken"
    },
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF...",
    "streamToken" : "g.0.streamingToken",
    "expiresAt" : "2018-01-04T18:30:00.000Z"
  }
}

จากนั้นใช้ URL ของสตรีมเพื่อเข้าถึงสตรีมแบบสดของกล้อง

rtsps://someurl.com/CjY5Y3VKaTZwR3o4Y19YbTVfMF...?auth=g.0.streamingToken

URL สตรีมแบบสดของ RTSP แชร์ระหว่างไคลเอ็นต์ไม่ได้ URL ของสตรีมจะใช้ได้โดยลูกค้าทีละคนเท่านั้น หากลูกค้าหลายคนต้องการสตรีมจากกล้องเดียวกันพร้อมกัน คุณจะต้องส่งคําสั่ง RTSP สําหรับแต่ละไคลเอ็นต์ และไคลเอ็นต์แต่ละรายต้องใช้ URL ของสตรีมของตัวเอง

ขยายสตรีมแบบสด

เซสชันสตรีมแบบสดของกล้องจะใช้ได้เป็นเวลา 5 นาทีเท่านั้น หากต้องการยืดระยะเวลาสตรีมแบบสด ให้ใช้คําสั่งFormatขยายเวลาที่เหมาะสมสําหรับ CameraLiveStream ในรูปแบบของสตรีมที่สร้างขึ้น

ขวาไปซ้าย

หากต้องการขยายสตรีม RTSP ให้ใช้คําสั่ง ExpandRtspStream ของคําสั่งเทรด CameraLiveStream เพื่อรับค่า streamExtensionToken และ streamToken ใหม่

ส่งคำขอ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.ExtendRtspStream",
  "params" : {
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF..."
  }
}

คำตอบ

{
  "results" : {
    "streamExtensionToken" : "dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
    "streamToken" : "g.0.newStreamingToken",
    "expiresAt" : "2018-01-04T18:30:00.000Z"
  }
}

อัปเดต URL ของสตรีมด้วยค่าใหม่เหล่านี้เพื่อดูสตรีมแบบสดต่อ

rtsps://someurl.com/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?auth=g.0.newStreamingToken

หยุดสตรีมแบบสด

เมื่อใดก็ตามที่คุณไม่ได้ใช้สตรีมแบบสดของกล้องอีกต่อไป คุณควรหยุดสตรีมและทําให้สตรีมใช้งานไม่ได้ ในการดําเนินการดังกล่าว ให้ใช้คําสั่ง StopFormatStream ที่เหมาะสมของรูปแบบCameraLiveStream สําหรับรูปแบบสตรีมที่คุณสร้าง

ขวาไปซ้าย

หากต้องการหยุดสตรีม RTSP ให้ใช้โทเค็นนั้นเพื่อทําให้คําสั่ง StopRtspStream เป็นโมฆะของคําสั่ง TraitStream ของ CameraLiveStream

ส่งคำขอ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.StopRtspStream",
  "params" : {
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF..."
  }
}

คำตอบ

{}

ข้อผิดพลาด

รหัสข้อผิดพลาดต่อไปนี้อาจส่งคืนมาที่เกี่ยวข้องกับอุปกรณ์นี้

ข้อความแสดงข้อผิดพลาด RPC การแก้ปัญหา
รูปภาพของกล้องไม่พร้อมให้ดาวน์โหลดอีกต่อไป DEADLINE_EXCEEDED รูปภาพกิจกรรมจะหมดอายุใน 30 วินาทีหลังจากที่เผยแพร่กิจกรรมแล้ว โปรดดาวน์โหลดรูปภาพก่อนที่จะหมดอายุ
รหัสเหตุการณ์ไม่ได้เป็นของกล้อง FAILED_PRECONDITION ใช้ eventID ที่ถูกต้องซึ่งเหตุการณ์จากกล้องแสดงผล

ดูข้อมูลอ้างอิงรหัสข้อผิดพลาด API เพื่อดูรายการรหัสข้อผิดพลาด API ทั้งหมด