public static void main(String[] args) { StateMachine<MotekContext> stateMachineOne = GetIvrStateMachine(); // step call started welcome msg played MotekContext contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "call")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // welcome msg played and new UserMenu given contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // help option chosen and help sent contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "1")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // help played and lesson one sent contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // lesson one played and lesson menu played contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // lesson two selected played and lesson two sent contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "2")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // played lesson two and lesson menu provided contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // lesson three selected and lesson three sent contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "2")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // played lesson three played and sent chapter finished contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); // played chapter finished and sent course finished text contextOne = new MotekContext(); contextOne.setRequest(new MotekRequest("9880202527", "")); stateMachineOne.move(contextOne); System.out.println(contextOne.getResponse().getMessage()); }