TASM - The Alexa State Machine
About TASM
TASM was built to provide a small, intuative and robust tool that allows one to manage state/flow of a conversation with an Amazon Alexa Skill.
Get Started
Installation
$ npm install @hermesinnovationlab/tasm
Usage
var tasm = require('@hermesinnovationlab/tasm');
var validStates = [
{
"state": "DetailsIntent",
"previous": "WelcomeIntent"
}
];
var stateMachine = new tasm.StateMachine(validStates);
var currentState = {
"state": "DetailsIntent",
"previous": "WelcomeIntent"
};
stateMachine.validateState(currentState)
.then(validState)
.catch(invalidState);
function validState() {
//State is valid
}
function invalidState(err) {
//State is not valid - detail in err object
}