This is a simple application for booking a flight.
<talkml first="start"> <dialog name="start"> <say>Welcome to the TalkML travel desk.</say> <act next="destination"/> </dialog> <dialog name="destination"> <say>Which city to you want to fly to?</say> <listen response="destination"> "San Francisco"|"New York"|"Seattle"|"Los Angeles"|"Boston" </listen> <error next="retry"> Sorry, I did not understand. You can choose between: San Francisco, New York, Seattle, Los Angeles or Boston. </error> <act next="when"/> </dialog> <dialog name="when"> <say> Which day do you want to travel to <var name="destination"/>? </say> <listen grammar="date"/> <error next="retry"> Sorry, I did not understand. You can refer to a day such as <em>next Friday</em> or give the date such as <em>May 13</em> </error> <act next="origin"/> </dialog> <dialog name="origin"> <say>Which airport are you leaving from?</say> <listen response="origin"> "Bristol"|"Heathrow"|"Gatwick"|"Stansted" </listen> <error next="retry"> Sorry, I did not understand. You can choose to fly from: Bristol, Heathrow, Gatwick or Stansted </error> <act on="origin=Gatwick" next="offer"/> <act next="airline"/> </dialog> <dialog name="offer"> <say on="errors=0"> This week Virgin is offering free rental cars when you fly first class from Gatwick. Would you like to take advantage of this? </say> <listen grammar="confirm"/> <error next="retry"> Sorry, I did not understand. Do you want to take advantage of Virgin's offer, yes or no? </error> <act on="result=true" set="airline='Virgin'" next="finish"/> <!-- otherwise ask for airline --> <act next="airline"/> </dialog> <dialog name="airline"> <say>Which airline do you prefer?</say> <listen response="airline"> "United"|"British Airways"|"Virgin" </listen> <error next="retry"> Sorry, I did not understand. You can choose to fly with: United, British Airways or Virgin </error> <act next="finish"/> </dialog> <dialog name="finish"> <say> You have chosen to fly <var name="airline"/> to <var name="destination"/> leaving on <var name="date"/> from <var name="origin"/>. Thanks for using the TalkML travel service. </say> </dialog> </talkml>