Skip to content

Instantly share code, notes, and snippets.

'use strict';
exports.handler = (event, context, callback) => {
// when intent get fulfilled, inform lex to complete the state
let response = {sessionAttributes: event.sessionAttributes,
dialogAction: {
type: "Close",
fulfillmentState: "Fulfilled",
message: {
contentType: "PlainText",
'use strict';
exports.handler = (event, context, callback) => {
const sessionAttributes = event.sessionAttributes;
const slots = event.currentIntent.slots;
const bookName = slots.bookName;
// predefined list of available books
const validBooks = ['harry potter', 'twilight', 'wings of fire'];
// negative check: if valid slot value is not obtained, inform lex that user is expected
@velotio-tech
velotio-tech / nodejs-async-await.js
Created May 30, 2017 04:49
NodeJS Async-Await Example
async fooBarBaz(arg) {
try {
const fooResponse = await foo(arg+1);
const barResponse = await bar(arg+2);
const bazResponse = await baz(arg+3);
return bazResponse;
} catch (error) {
return Error(error);
}
async function asyncFun() {
try {
const result = await promise;
} catch(error) {
console.log(error);
}
}
function foo(arg, callback) {
if (arg < 0) {
callback('error');
return;
}
callback(null, arg+1);
}
function bar(arg, callback) {
if (arg < 0) {
@velotio-tech
velotio-tech / nodejs-chaining-promises.js
Created May 30, 2017 04:16
NodeJS Chaining Using Promises
var foo = function (arg) {
return new Promise((resolve, reject) => {
resolve(arg+1);
});
}
var bar = function (arg) {
return new Promise((resolve, reject) => {
resolve(arg+2);
});
@velotio-tech
velotio-tech / nodejs-file-read-promise.js
Created May 30, 2017 04:15
NodeJS file read using promises
var fileReadPromise = fs.readFile(filePath);
fileReadPromise.then(console.log, console.error)
fs.readFile(filePath, (err, result) => {
if (err) { console.log(err); }
console.log(data);
});
@velotio-tech
velotio-tech / nodejs-async-hell.js
Last active May 30, 2017 04:12
Node.js Async Hell
foo(arg, (err, val) => {
if (err) {
console.log(err);
} else {
val += 1;
bar(val, (err1, val1) => {
if (err) {
console.log(err1);
} else {
val1 += 2;