Alexa.DoorbellEventSource Interface

The Alexa.DoorbellEventSource interface describes an endpoint that is capable of raising doorbell events. Alexa plays doorbell announcements on all Echo devices. Alexa uses doorbell events for announcements, mobile notifications, routines, and other use cases. For more information, see Announcing Doorbell Chime APIs.

Discovery

When you respond to a discovery request for a skill that controls a doorbell, you describe endpoints that support the Alexa.DoorbellEventSource interface. Use the standard discovery mechanism described in Alexa.Discovery, as shown in the following example:

Discover.Response example containing Alexa.DoorbellEventSource

{
    "event": {
        "header": {
            "namespace":"Alexa.Discovery",
            "name":"Discover.Response",
            "payloadVersion":"3",
            "messageId":"ff746d98-ab02-4c9e-9d0d-b44711658414"
        },
        "payload":{
            "endpoints":[
                {
                    "manufacturerName": "Sample Manufacturer",
                    "modelName": "Sample Model",
                    "friendlyName": "My Doorbell",
                    "description": "A smart doorbell",
                    "displayCategories": [ "DOORBELL" ],
                    "cookie": {},
                    "capabilities":
                    [
                        {
                            "type": "AlexaInterface",
                            "interface": "Alexa.DoorbellEventSource",
                            "version": "3",
                            "proactivelyReported" : true
                        }
                    ]
                }
            ]
        }
    }
}

Payload details

Field Description Type Required
manufacturerName The name of the manufacturer of the device. string Yes
modelName The model name of the device. String No, but strongly recommended
friendlyName A name for the doorbell device. string Yes
description A description of the device. string Yes
displayCategories The categories for the skill. Use DOORBELL. An array of strings. Yes

Properties and Events

DoorbellPress Event

Send a DoorbellPress event to the Alexa Event Gateway whenever the doorbell is pressed. For more information, see Send Events to the Event Gateway.

DoorbellPress event example

{
    "context": { },
    "event": {
        "header": {
            "messageId": "9eac4fa2-9de0-4e75-ac38-9dde79abb1bd",
            "namespace" : "Alexa.DoorbellEventSource",
            "name": "DoorbellPress",
            "payloadVersion": "3"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "access-token-from-Amazon"
            },
            "endpointId": "appliance-001"
        },
        "payload" : {
            "cause": {
                "type": "PHYSICAL_INTERACTION"
            },
            "timestamp": "2018-06-09T23:23:23.23Z"
        }
    }
}

Payload details

Field Description Type Required
cause Describes why this event occurred. A cause object Yes
timestamp When the activation event occurred. A string containing a time in the ISO 8601 format. Specify the time in UTC. Yes
Interface Description
Alexa.CameraStreamController Describes the messages used retrieve camera streams from camera endpoints.
Alexa.MotionSensor Describes an endpoint that senses physical movement in an area.
Alexa.RTCSessionController Interact with endpoints capable of 1-way or 2-way communication over audio and video.