2017-03-26 1 views
0

Ich erstelle meine erste Alexa-Fähigkeit, die Daten von dynamodb Tabelle abruft. Ich bin naiv in node.js und alexa beide. Ich war erfolgreich in der Lage, eine Probe Space Geek Fähigkeiten zu erstellen, und dann, als ich meine eigenen Fähigkeiten erstellt habe ich das gleiche Paket verwendet (um sicherzustellen, dass die Bibliotheken, Antwortdateien die gleichen bleiben), sondern nur die index.js (was ist meine Lambda-Funktion). Wenn ich diese Funktion auf Lambda-Konsole am testen, bin ich die folgenden Fehler bekommen:"errorMessage": "Ereignis ist nicht definiert" in der Lambda-Funktion

{ 
    "errorMessage": "event is not defined", 
    "errorType": "ReferenceError", 
    "stackTrace": [ 
    "Module._compile (module.js:570:32)", 
    "Object.Module._extensions..js (module.js:579:10)", 
    "Module.load (module.js:487:32)", 
    "tryModuleLoad (module.js:446:12)", 
    "Function.Module._load (module.js:438:3)", 
    "Module.require (module.js:497:17)", 
    "require (internal/module.js:20:19)" 
    ] 
} 

Mit dieser Funktion völlig in Ordnung zu arbeiten, ohne alexa zu verwenden. Jetzt kann ich das Problem nicht beheben. Getestet habe ich diese von alexa Geschicklichkeitsprüfung bekam dann die folgenden Fehler:

Der Remote-Endpunkt kann nicht aufgerufen werden oder Antwort zurückgegeben es war ungültig

Meine Ordnerstruktur ist:

-Node_Modules

-index.js

-template.yaml

Beliebig p ointers sind sehr geschätzt.

+0

Sie 'event' irgendwo in Ihrem Code verweisen? Ohne den Code zu sehen, sieht es so aus. Ich gehe davon aus, dass du in Lambda versuchst, auf das 'Ereignis' zu verweisen, um die Payload von Alexa zu bekommen, aber es hört sich so an, als ob du das nicht richtig machst. – alanwill

+0

können Sie Ihren Code posten? – imTachu

Antwort

0

In Ihrem index.js, sollten Sie eine Funktion mit event in Argument, auch wenn Sie es nicht verwenden:

exports.handler = (event, context, callback) => { [...] };

Verwandte Themen