It's possible to track the conversation events using your own endpoint(s) or JS functions.
Using the custom initialization options, add such api method:
{ onLoad:function(data){}, // bot loaded onStart:function(results){}, // bot started onQuestion:function(results, question){}, // bot step asked, called after it displays the actual question onAnswer:function(results, question, answer){}, // bot step answered onRedo:function(results, question, answer){}, // bot step redo started onAnswerRedo:function(results, question, answer){}, // bot step redo answered onLeave:function(results){}, // bot window closed onFinish:function(results){}, // bot chat completed onExit:function(results){}, // bot chat exited onReturn:function(results){} // bot chat have returned from leave }