// Scripts can be used to give programmatic responses to patterns, or process state machines. state MyGreetings { pattern "[hii goodmorning]" answer hello(); pattern "greetings" template greet(); pattern "start" template greet(); function hello(){ if(conversation.startTimestamp == undefined){ conversation.startTimestamp = Date.timestamp(); conversation.topic = ""; conversation.isAuthenticated = "false"; conversation.ajaxData = {}; clearSession(); }else{ conversation.endTimeStamp = Date.timestamp(); var diff = Date.interval("minutes",Date.printDate(conversation.startTimestamp, "yyyy-MM-dd HH mm ss"),Date.printDate(conversation.endTimeStamp, "yyyy-MM-dd HH mm ss"), "yyyy-MM-dd HH mm ss"); if(diff > 30){ conversation.startTimestamp = undefined; conversation.topic = ""; conversation.isAuthenticated = "false"; conversation.ajaxData = {}; clearSession(); } } function greet() { debug("speaker " + speaker.name); conversation.topic = "greet"; return Template("Welcome {speaker.name}"); } }