Alexa.ConsentManagement.ConsentRequiredReporter Interface
At this time, the
Alexa.ConsentManagement.ConsentRequiredReporter
interface is restricted for use in ja-JP
(Japan) only. To use this feature, contact your Amazon business representative.Implement the Alexa.ConsentManagement.ConsentRequiredReporter
interface in your Alexa skill to require customers to give consent to warnings about controlling devices with Alexa. For example, a warning about fire hazards caused by turning on an electric heater remotely. You specify the list of required consents in the discovery response. When you include this interface, consent must be given before the customer can control any device with Alexa. If you want to require user verification on a particular device and directive, include a VerificationsRequired object in your discovery response instead.
For the list of languages that the Alexa.ConsentManagement.ConsentRequiredReporter
interface supports, see List of Alexa Interfaces and Supported Languages.
Reportable properties
The Alexa.ConsentManagement.ConsentRequiredReporter
interface doesn't have any reportable properties.
Discovery
You describe endpoints that support the Alexa.ConsentManagement.ConsentRequiredReporter
interface by using the standard discovery mechanism described in Alexa.Discovery
.
Alexa.ConsentManagement.ConsentRequiredReporter
interface for smart plugs only.Configuration object
In addition to the usual discovery response fields, for Alexa.ConsentManagement.ConsentRequiredReporter
, include a configuration
object that contains the following fields.
Property | Description | Type | Required |
---|---|---|---|
|
Identifies the required consents. |
Array of objects |
Yes |
|
Identifies the consent enforced by the device manufacturer. At this time, the supports the Product Safety Electrical Appliance and Materials Act consent only. |
String |
Yes |
Discover response example
The following example shows a Discover.Response
message for an Alexa skill that controls a plug and supports the Alexa.PowerController
, Alexa.ConsentManagement.ConsentRequiredReporter
, and Alexa.EndpointHealth
interfaces.
{
"event": {
"header": {
"namespace": "Alexa.Discovery",
"name": "Discover.Response",
"payloadVersion": "3",
"messageId": "a unique identifier, preferably a version 4 UUID"
},
"payload": {
"endpoints": [{
"endpointId": "unique ID of the endpoint of the plug ",
"manufacturerName": "the manufacturer name of the endpoint",
"description": "a description that is shown in the Alexa app",
"friendlyName": "Living Room Heater Plug",
"displayCategories": ["SMARTPLUG"],
"additionalAttributes": {
"manufacturer": "the manufacturer name of the endpoint",
"model": "the model of the device",
"serialNumber": "the serial number of the device",
"firmwareVersion": "the firmware version of the device",
"softwareVersion": "the software version of the device",
"customIdentifier": "your custom identifier for the device"
},
"cookie": {},
"capabilities": [{
"type": "AlexaInterface",
"interface": "Alexa.PowerController",
"version": "3",
"properties": {
"supported": [{
"name": "powerState"
}],
"proactivelyReported": true,
"retrievable": true
}
},
{
"type": "AlexaInterface",
"interface": "Alexa.ConsentManagement.ConsentRequiredReporter",
"version": "1.0",
"configuration": {
"consents": [{
"name": "PSE"
}]
}
},
{
"type": "AlexaInterface",
"interface": "Alexa.EndpointHealth",
"version": "3",
"properties": {
"supported": [{
"name": "connectivity"
}],
"proactivelyReported": true,
"retrievable": true
}
},
{
"type": "AlexaInterface",
"interface": "Alexa",
"version": "3"
}
]
}]
}
}
}
Change reporting
You send an Alexa.ChangeReport
event to report proactively on changes in the state of an endpoint. You identify the properties that you proactively report in your discovery response. For details about change reports, see Understand State and Change Reporting.
Alexa.ConsentManagement.ConsentRequiredReporter
interface doesn't define any proactively reportable properties. However, you send change reports for the other interfaces that you implement in your skill.