【发布时间】:2016-11-28 11:37:34
【问题描述】:
我现在正在尝试解决我的 Alexa Skill 的问题。我观看并阅读了很多教程并尝试搜索它,但我总是从 Node.js 收到一条神秘的错误消息...... 我只是尝试发送一个http请求,所以没什么复杂的。
我的代码如下所示:
var https = require('https')
exports.handler = (event, context) => {
try {
if (event.session.new) {
console.log("NEW SESSION")
}
switch (event.request.type) {
case "LaunchRequest":
console.log(`LAUNCH REQUEST`)
context.succeed(
generateResponse(
buildSpeechletResponse("Willkommen bei Taasker", true),
{}
)
)
break;
case "IntentRequest":
console.log(`INTENT REQUEST`)
switch(event.request.intent.name) {
case "taskernightlighton":
var endpoint = ""
var body = ""
http.request("https://autoremotejoaomgcd.appspot.com/sendmessage?key=xxxxxxxxxxxxx&message=nightlighton")
context.succeed(
generateResponse(
buildSpeechletResponse(`Licht wird von Taasker eingeschaltet`, true),
{}
)
)
break;
case "taskernightlightoff":
http.request("https://autoremotejoaomgcd.appspot.com/sendmessage?key=xxxxxxxxxx&message=nightlightoff")
context.succeed(
generateResponse(
buildSpeechletResponse(`Licht wird von Taasker ausgeschaltet`, true),
{}
)
)
break;
default:
throw "Invalid intent"
}
break;
case "SessionEndedRequest":
console.log(`SESSION ENDED REQUEST`)
break;
default:
context.fail(`INVALID REQUEST TYPE: ${event.request.type}`)
}
} catch(error) { context.fail(`Exception: ${error}`) }
}
// Helpers
buildSpeechletResponse = (outputText, shouldEndSession) => {
return {
outputSpeech: {
type: "PlainText",
text: outputText
},
shouldEndSession: shouldEndSession
}
}
generateResponse = (speechletResponse, sessionAttributes) => {
return {
version: "1.0",
sessionAttributes: sessionAttributes,
response: speechletResponse
}
}
而且我总是收到以下错误:
{
"errorMessage": "Exception: TypeError: Cannot read property 'new' of undefined"
}
谁能给我一个提示,我的 javascript 语法有什么问题?我找不到解释这个 http 请求的来源?请帮忙...
【问题讨论】: