package Ġcom . just ai . ja ic f . hook Ċ Ċ import Ġcom . just ai . ja ic f . api . Bot Request Ċ import Ġcom . just ai . ja ic f . context . Activator Context Ċ import Ġcom . just ai . ja ic f . context . Bot Context Ċ import Ġcom . just ai . ja ic f . model . state . State Ċ import Ġcom . just ai . ja ic f . reactions . Re actions Ċ Ċ /** Ċ Ġ* ĠA Ġbase Ġinterface Ġfor Ġevery Ġbot Ġhook . Ċ Ġ* ĠBot Ġhook Ġrepresents Ġa Ġparticular Ġphase Ġof Ġthe Ġuser 's Ġrequest Ġprocessing . Ċ Ġ* ĠYou Ġcan Ġhandle Ġthe Ġhook Ġby Ġregistering Ġa Ġlistener Ġvia Ġhandle Ġmethod . ĠFor Ġexample : Ċ Ġ* Ċ Ġ* Ġ``` Ċ Ġ* Ġobject ĠHello World Scenario : ĠScenario () Ġ{ Ċ Ġ* ĠĠ Ġinit Ġ{ Ċ Ġ* ĠĠĠĠ Ġhandle < Bot Request Hook > Ġ{ Ċ Ġ* ĠĠĠĠĠĠ Ġprintln (" HelloWorld Scenario Ġ- Ġon Ġrequest ") Ċ Ġ* ĠĠĠĠ Ġ} Ċ Ġ* ĠĠ Ġ} Ċ Ġ* Ġ} Ċ Ġ* Ġ``` Ċ Ġ* Ċ Ġ* ĠIt 's Ġuseful Ġif Ġyou Ġneed Ġto Ġlog , Ġappend Ġsome Ġdata Ġor Ġtransparent ly Ġchange Ġthe Ġbehaviour Ġof Ġthe Ġdialogue Ġin Ġsome Ġcases . Ċ Ġ*/ Ċ interface ĠBot Hook Ċ Ċ interface ĠBot Process Hook : ĠBot Hook Ġ{ ĊĠĠĠ Ġval Ġcontext : ĠBot Context ĊĠĠĠ Ġval Ġrequest : ĠBot Request ĊĠĠĠ Ġval Ġre actions : ĠRe actions ĊĠĠĠ Ġval Ġactiv ator : ĠActiv ator Context Ċ } Ċ Ċ interface ĠBot Action Hook : ĠBot Process Hook Ġ{ ĊĠĠĠ Ġval Ġstate : ĠState Ċ } Ċ Ċ data Ġclass ĠBot Request Hook ( ĊĠĠĠ Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġval Ġre actions : ĠRe actions Ċ ): ĠBot Hook Ċ Ċ data Ġclass ĠBefore Process Hook ( ĊĠĠĠ Ġoverride Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġoverride Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġoverride Ġval Ġre actions : ĠRe actions , ĊĠĠĠ Ġoverride Ġval Ġactiv ator : ĠActiv ator Context Ċ ): ĠBot Process Hook Ċ Ċ data Ġclass ĠAfter Process Hook ( ĊĠĠĠ Ġoverride Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġoverride Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġoverride Ġval Ġre actions : ĠRe actions , ĊĠĠĠ Ġoverride Ġval Ġactiv ator : ĠActiv ator Context Ċ ): ĠBot Process Hook Ċ Ċ data Ġclass ĠBefore Action Hook ( ĊĠĠĠ Ġoverride Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġoverride Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġoverride Ġval Ġre actions : ĠRe actions , ĊĠĠĠ Ġoverride Ġval Ġactiv ator : ĠActiv ator Context , ĊĠĠĠ Ġoverride Ġval Ġstate : ĠState Ċ ): ĠBot Action Hook Ċ Ċ data Ġclass ĠAfter Action Hook ( ĊĠĠĠ Ġoverride Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġoverride Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġoverride Ġval Ġre actions : ĠRe actions , ĊĠĠĠ Ġoverride Ġval Ġactiv ator : ĠActiv ator Context , ĊĠĠĠ Ġoverride Ġval Ġstate : ĠState Ċ ): ĠBot Action Hook Ċ Ċ data Ġclass ĠAction Error Hook ( ĊĠĠĠ Ġoverride Ġval Ġcontext : ĠBot Context , ĊĠĠĠ Ġoverride Ġval Ġrequest : ĠBot Request , ĊĠĠĠ Ġoverride Ġval Ġre actions : ĠRe actions , ĊĠĠĠ Ġoverride Ġval Ġactiv ator : ĠActiv ator Context , ĊĠĠĠ Ġoverride Ġval Ġstate : ĠState , ĊĠĠĠ Ġval Ġexception : ĠException Ċ ): ĠBot Action Hook