AWS Alexa V2 中的 SSML 支持
SSML support in AWS Alexa V2
我正在努力将 Alexa 技能从 V1 更新到 V2。但由于某种原因,SSML 似乎无法在 V2 版本中运行。这些是我尝试过的几个场景。
直接通过ssml绑定,
const speechText = 'This <break time=\"0.3s\" /> is not working';
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
此外,作为一个对象尝试过,
var speechText = {
type: "SSML",
ssml: 'This <break time=\"0.3s\" /> is not working',
};
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
有没有人知道我可能做错了什么?提前致谢。
尝试
const speechText = `This <break time="0.3s" /> is not working`;
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
当您想向 speechText
:
中提供变量时,此构造也很有用
const lengthInSeconds = 5;
const speechText = `This <break time="${length}s" /> is not working`;
正如我们在评论区建立的原文post。
Response Builder 在发布 v.2.5.1 之前没有转义无效的 SSML 字符:&, <, >, ", '
这个问题有在 Alexa 团队 here 中提出并在版本 2.5.1
中修复
更新库修复了问题
我正在努力将 Alexa 技能从 V1 更新到 V2。但由于某种原因,SSML 似乎无法在 V2 版本中运行。这些是我尝试过的几个场景。
直接通过ssml绑定,
const speechText = 'This <break time=\"0.3s\" /> is not working';
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
此外,作为一个对象尝试过,
var speechText = {
type: "SSML",
ssml: 'This <break time=\"0.3s\" /> is not working',
};
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
有没有人知道我可能做错了什么?提前致谢。
尝试
const speechText = `This <break time="0.3s" /> is not working`;
return handlerInput.responseBuilder
.speak(speechText)
.reprompt(speechText)
.getResponse();
当您想向 speechText
:
const lengthInSeconds = 5;
const speechText = `This <break time="${length}s" /> is not working`;
正如我们在评论区建立的原文post。
Response Builder 在发布 v.2.5.1 之前没有转义无效的 SSML 字符:&, <, >, ", '
这个问题有在 Alexa 团队 here 中提出并在版本 2.5.1
更新库修复了问题