【发布时间】:2017-06-06 04:07:59
【问题描述】:
我正在尝试制作一个 Alexa 技能,让 Alexa 说出一些已用 SSML 标记的内容。我试图模仿这个repo 中的例子,但我总是收到一个 lambda 响应
{
...
"response": {
"outputSpeech": {
"type": "SSML",
"ssml": "<speak> [object Object] </speak>"
},
...
}
Alexa 的字面意思是“object object”。
这是我输入到我的 lambda 函数的内容(使用 node.js):
var speechOutput = {
type: "SSML",
ssml: 'This <break time=\"0.3s\" /> is not working',
};
this.emit(':tellWithCard', speechOutput, SKILL_NAME, "ya best not repeat after me.")
像这样设置语音输出也不起作用:
var speechOutput = {
type: "SSML",
ssml: 'This <break time=\"0.3s\" /> is not working',
};
编辑:
index.js
'使用严格';
var Alexa = require('alexa-sdk');
var APP_ID = "MY_ID_HERE";
var SKILL_NAME = "MY_SKILL_NAME";
exports.handler = function(event, context, callback) {
var alexa = Alexa.handler(event, context);
alexa.APP_ID = APP_ID;
alexa.registerHandlers(handlers);
alexa.execute();
};
var handlers = {
'LaunchRequest': function () {
this.emit('Speaketh');
},
'MyIntent': function () {
this.emit('Speaketh');
},
'Speaketh': function () {
var speechOutput = {
type: "SSML",
ssml: 'This <break time=\"0.3s\" /> is not working',
};
this.emit(':tellWithCard', speechOutput, SKILL_NAME, "some text here")
}
};
有人知道我哪里出错了吗?
【问题讨论】:
-
您是否使用任何帮助程序来构建您的响应?
-
不完全确定你的意思,但我想我不是。
-
你是在使用模板还是一些示例 Alexa 技能?
-
哦,是的,我正在关注官方教程,现在似乎已经改变了......我已经更新了我的问题以包含我的源代码。
标签: node.js aws-lambda alexa alexa-skills-kit ssml