Doorbell

Pre-requisite: The user has to be signed in to perform the following operations.

A doorbell is a camera whose deviceType string equals DeviceType.DOORBELL.value ("Doorbell") — device.isDoorbell() is the shortcut. Everything a normal camera does applies; three things are extra.


Ring Events

A press raises an event tagged EventTag.DOORBELL ("DoorbellPress") with eventType EventType.DOORBELL. It arrives in the event feed like any other event, and as a push notification unless doorbellMute is set:

InstaVision.deviceServices.updateNotificationSettings(
  device = device,
  request = Notification(doorbellMute = true),
  onSuccess = { },
  onError = { error -> }
)

Chime

Doorbells that support a chime advertise the ChimeSettings cluster (0xFC22, DeviceCluster.supportsChimeSettings()). Read the current sound with chimeSetting() and the options the camera offers with chimeOptions(); the values match ChimeModesMECHANICAL ("Mechanical"), ELECTRONIC ("Electronic"), DEFAULT ("Default"). Write with updateClusterAttribute using ClusterAttributeTypes.ChimeSettings.id (0xFC22:0x00).

The cluster schema also carries a chime duration attribute, 0xFC22:0x01 (0–10 seconds, step 1, default 3; optional — not every model reports it). It has no ClusterAttributeTypes entry, so address it by its raw id.


Answering the Door

Answering is a two-way call: device.canInitiateCall() says whether the camera can take one. The full sequence — creating the call record, accepting, local video, ending — is on Two-Way Calling.


This site uses Just the Docs, a documentation theme for Jekyll.