Bonjour,
Continuant sur ma lancée de découverte du plugin, je veux effectuer des annonces Alexa sur un groupe (multiroom). Le HIC, c’est que ces messages sont désynchronisés la plupart du temps. Pire encore, je me tape des « Rate exceeded: Too many requests ».
Parce-que, lorsque je demande à Alexa API de faire parler ou annoncer Alexa sur un élément multiroom, le plugin effectue une résolution en récupérant les ID du matériel accroché à cet élément, et lance plusieurs requêtes simultanées.
Ainsi, voici le log :
[12/2/2020, 13:53:25][INFO] : {API} ╔═══════[Lancement /Speak avec paramètres -> device:4db2f926f0724dc9ad32a323af8ae16a/text:Ceci est un test de message pour la commande Faire parler Alexa/ssml:undefined/jingle:undefined/volume:/lastvolume:
[12/2/2020, 13:53:25][DEBUG] : {Remote} ║ Sending Request with {"host":"alexa.amazon.fr","path":"/api/behaviors/preview","method":"POST","timeout":10000,"headers":{}} and data={"behaviorId":"PREVIEW","sequenceJson":"{\"@type\":\"com.amazon.alexa.behaviors.model.Sequence\",\"startNode\":{\"@type\":\"com.amazon.alexa.behaviors.model.SerialNode\",\"name\":null,\"nodesToExecute\":[{\"@type\":\"com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode\",\"operationPayload\":{\"deviceType\":\"A32DOYMUN6DTXA\",\"deviceSerialNumber\":\"G090U50990961KFU\",\"locale\":\"fr-FR\",\"customerId\":\"AGM5WMKFQLZUG\",\"textToSpeak\":\"Ceci est un test de message pour la commande Faire parler Alexa\"},\"type\":\"Alexa.Speak\"}]}}","status":"ENABLED"}
[12/2/2020, 13:53:25][DEBUG] : {Remote} ║ Sending Request with {"host":"alexa.amazon.fr","path":"/api/behaviors/preview","method":"POST","timeout":10000,"headers":{}} and data={"behaviorId":"PREVIEW","sequenceJson":"{\"@type\":\"com.amazon.alexa.behaviors.model.Sequence\",\"startNode\":{\"@type\":\"com.amazon.alexa.behaviors.model.SerialNode\",\"name\":null,\"nodesToExecute\":[{\"@type\":\"com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode\",\"operationPayload\":{\"deviceType\":\"A32DOYMUN6DTXA\",\"deviceSerialNumber\":\"G090VC0991131SJH\",\"locale\":\"fr-FR\",\"customerId\":\"AGM5WMKFQLZUG\",\"textToSpeak\":\"Ceci est un test de message pour la commande Faire parler Alexa\"},\"type\":\"Alexa.Speak\"}]}}","status":"ENABLED"}
[12/2/2020, 13:53:25][DEBUG] : {Remote} ║ Sending Request with {"host":"alexa.amazon.fr","path":"/api/behaviors/preview","method":"POST","timeout":10000,"headers":{}} and data={"behaviorId":"PREVIEW","sequenceJson":"{\"@type\":\"com.amazon.alexa.behaviors.model.Sequence\",\"startNode\":{\"@type\":\"com.amazon.alexa.behaviors.model.SerialNode\",\"name\":null,\"nodesToExecute\":[{\"@type\":\"com.amazon.alexa.behaviors.model.OpaquePayloadOperationNode\",\"operationPayload\":{\"deviceType\":\"A32DOYMUN6DTXA\",\"deviceSerialNumber\":\"G090U61091110CFW\",\"locale\":\"fr-FR\",\"customerId\":\"AGM5WMKFQLZUG\",\"textToSpeak\":\"Ceci est un test de message pour la commande Faire parler Alexa\"},\"type\":\"Alexa.Speak\"}]}}","status":"ENABLED"}
Grosso modo, c’est donc impossible d’avoir un lancement synchronisé de l’annonce ou de la parle sur le groupe, chaque écho répond à sa vitesse.
N’y a t’il pas une possibilité via l’API Amazon pour lancer une requête sur un groupe et non sur chaque élément séparément ?