alexa-ability-timeout 
Example
import { Ability, events } from 'alexa-ability';
import { handleAbility } from 'alexa-ability-lambda-handler';
import { timeout, TimeoutError } from 'alexa-ability-timeout';
const app = new Ability({
applicationId: 'my-application-id'
});
app.use(timeout(5000));
app.on(e.launch, function(req, next) {
const cancel = slowCancelableOperation(function(output) {
req.say(output).end();
});
req.on('timeout', cancel);
});
app.on(e.end, function(req, next) {
slowOperation(function(output) {
if (req.timedOut) return;
req.say(output).end();
});
});
app.onError(function(err, req, next) {
if (err instanceof TimeoutError) {
req.say('Sorry, that took to long. Please try again.').send();
} else {
req.say('Sorry, something went wrong. Please try again later.').end();
}
});
export const handler = handleAbility(app);
API
timeout(ms) -> middleware
Creates a middleware function that times out the request after
the given ms
have passed.