1
var Response = require('alexa-response'); 

//first intent 
LaunchRequest:function(){ 
//Type 1 gives an error saying the "response is not valid" when tested in the  developers console. 
//the Response here is an npm library 
Response.directives(
AudioPlayer.play({ url: 'https://s3.amazonaws.com/sounds226/boom.mp3' }), 
AudioPlayer.enqueue({ url: 'https://s3.amazonaws.com/sounds226/boom.mp3' }         ) .build(); 

//Type 2 : gives an error when tested on echosim.io saying that the response is not valid 
speechOutput = this.t('WELCOME_MESSAGE'); this.response.audioPlayerPlay("REPLACE_ALL",audioData[1].url).speak(speechOutput); 
this.emit(':responseReady'); 

//Type 3: tried to insert the audio tag within the speech response, error again 
speechOutput = { 
speech: "<speak>" +message+ "<audio src = 'https://s3.amazonaws.com/sounds226/boom.mp3'/></speak>", 
    type : 'SSML' 
}; 
response.ask(speechOutput); 
} 

Я пытаюсь вставить аудио, прежде чем alexa говорит в моем умении. Звук находится в пределах 90 секунд. Является ли это способом, по которому я неправильно понимаю звуковой тег или неправильно использую директивы? Заранее спасибо. Любая помощь приветствуетсяAlexa- audio issue

+0

о ssml - пожалуйста, проверьте более строго, например, на вкладке теста slikk в developer.amazon.com (не в aws лямбда-тест!) – nvvetal

+0

Вы включили направление аудиоплеера в настройках навыков амазонки –

+0

Да, но требования были выполнены не нужны аудио-директивы. Я пытался выяснить, как добавить ** аудио-образец **, который должен быть воспроизведен до того, как Alexa заговорила, что не похоже на ** аудио директивы **. Я достиг этого с помощью 'speechOutput = this.t ('WELCOME_MESSAGE') + '

ответ

0

Вот интро с примерами:

https://developer.amazon.com/blogs/post/Tx1DSINBM8LUNHY/new-alexa-skills-kit-ask-feature-audio-streaming-in-alexa-skills

и есть четкая информация:

При ответе на LaunchRequest или IntentRequest, ваш ответ может включать в себя обе директивы аудиоплеера и стандарт свойства ответа, такие как outputSpeech, card и reprompt. Например, если вы предоставляете outputSpeech в том же ответе, что и директива Play, Alexa говорит предоставленный текст перед началом потока аудио.

Doc - https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/custom-audioplayer-interface-reference

Подробнее о запуске игры

https://developer.amazon.com/public/solutions/alexa/alexa-skills-kit/docs/custom-audioplayer-interface-reference#play

+0

У меня проблема с добавлением звукового тега, но позже я смог сделать это, выполнив следующее: speechOutput = this.t ('WELCOME_MESSAGE') + '

0

При использовании <audio> тег в SSML ответ, убедитесь, что файл MP3 соответствует частоте дискретизации (16000) и битрейт (48kbps), требуемый Alexa.

More details here.

+0

@ MultiplyByZer0 Большое спасибо за обмен. – Maher

0

Audio должны быть закодированы в определенном формате (Project Rate 16000 и качества до 48 кбит) для Alexa, чтобы воспроизвести его. Пожалуйста, конвертировать аудио с помощью следующей команды,

FFmpeg -i -ac 2 -codec: а libmp3lame -b: а 48k -ar 16000

Вы можете скачать 'FFmpeg' от https://www.ffmpeg.org/

Если вы используя компакт-диск Windows в папку bin ffmeg перед запуском над командой.