我正在创建一个简单的 Alexa 技能,并希望使用 SSML 正确发音一些非英语单词。虽然在 Amazon Service Simulator 中一切正常,但我无法让它在实际的 Amazon Echo 硬件上运行。
例如,我从 Lambda 服务发送以下响应:
var cardTitle = "Test"
var speechOutput = "Test 1, red stick in French is <phoneme alphabet=\"ipa\" ph=\"bɑˈtɔn ˈɹuʒ\">baton rouge</phoneme>"
callback(session.attributes, buildSpeechletResponse(cardTitle, speechOutput, "", true));
Amazon Service Simulator 将收到的响应显示为:
{
"version": "1.0",
"response": {
"outputSpeech": {
"type": "PlainText",
"text": "Test 1, red stick in French is <phoneme alphabet=\"ipa\" ph=\"bɑˈtɔn ˈɹuʒ\">baton rouge</phoneme>"
},
"reprompt": {
"outputSpeech": {
"type": "PlainText",
"text": ""
}
},
"shouldEndSession": true
},
"sessionAttributes": {}
}
如果我在Service Simulator中单击“ Listen ” ,则响应拼写正确,如测试 1,法语中的红色棒是 baton rouge。
然而,当我在实际的 Echo Dot 硬件上测试相同的技能时,反应是: 测试 1,法语中的红色棒是音素字母等于 ipa ph 等于......
任何想法我做错了什么?