Improve Amazon Alexa endpoint validation (#105287)

* Improve Amazon Alexa endpoint validation

* Add source comment

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
This commit is contained in:
Franck Nijhof 2023-12-10 13:38:10 +01:00 committed by GitHub
parent ff85d0c290
commit 6a3c422d2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -36,6 +36,15 @@ CONF_FLASH_BRIEFINGS = "flash_briefings"
CONF_SMART_HOME = "smart_home"
DEFAULT_LOCALE = "en-US"
# Alexa Smart Home API send events gateway endpoints
# https://developer.amazon.com/en-US/docs/alexa/smarthome/send-events.html#endpoints
VALID_ENDPOINTS = [
"https://api.amazonalexa.com/v3/events",
"https://api.eu.amazonalexa.com/v3/events",
"https://api.fe.amazonalexa.com/v3/events",
]
ALEXA_ENTITY_SCHEMA = vol.Schema(
{
vol.Optional(CONF_DESCRIPTION): cv.string,
@ -46,7 +55,7 @@ ALEXA_ENTITY_SCHEMA = vol.Schema(
SMART_HOME_SCHEMA = vol.Schema(
{
vol.Optional(CONF_ENDPOINT): cv.string,
vol.Optional(CONF_ENDPOINT): vol.All(vol.Lower, vol.In(VALID_ENDPOINTS)),
vol.Optional(CONF_CLIENT_ID): cv.string,
vol.Optional(CONF_CLIENT_SECRET): cv.string,
vol.Optional(CONF_LOCALE, default=DEFAULT_LOCALE): vol.In(