def create(): # Folder return Folder( label="SYSTEM INITIATED SEQUENCES", children=[ Output( _id=SystemInitiatedSequences.__id(), prompt=Prompt( items=["Is there anything else I can help you with?"]), children=[ PageAction.set_to_new(), Action(var_name="Current_Index", operator="SET_TO", text="0"), ColorPreferenceAction.set_to_blank(), # RecencyPreferenceAction.set_to_blank(), StylePreferenceAction.set_to_blank(), Action(var_name="Search_Now", operator="SET_TO_NO"), Action(var_name="Terminal_Exchange", operator="SET_TO_BLANK"), Action(var_name="Topic", operator="SET_TO_BLANK"), Action(var_name="ZIP_Code_Preference", operator="SET_TO_BLANK"), Action(var_name="Display_Trailer", operator="SET_TO_NO"), Action(var_name="Selected_Movie", operator="SET_TO_BLANK"), Action(var_name="Display_Movie_Details", operator="SET_TO_NO"), Action(var_name="Display_Reviews", operator="SET_TO_NO"), Action(var_name="Popularity_Score", operator="SET_TO", text="0.5"), GetUserInput(children=[ Input(GenericGrammar.yes(), children=[HowCanHelpYouOutput.goto()]), Input( GenericGrammar.no(), children=[ Output( prompt=GenericPrompt.ok(), children=[ Goto( ref= "output_did_find_what_looking_for" ) ]) ]), PreliminarySequencesSearch.goto() ]) ]), Output( _id="output_did_find_what_looking_for", prompt=Prompt(items=[ "Did you find what you were looking for, {User_Name}?" ]), children=[ GetUserInput(children=[ Input( GenericGrammar().yes(), children=[ RequestSuccessAction.set_to_yes(), Output( prompt=Prompt(items=["Great!"]), children=[ Output( _id="output_goodbye", prompt=Prompt(items=[ "Goodbye.<br> <br>" ]), children=[ TerminalExchangeAction. set_to_yes(), GreetingAction.reset(), GetUserInput(children=[ Input( Grammar(watson_items =[ "Goodbye", "$ goodbye" ]), children =[ Output( _id= "output_end_of_conversation", prompt= Prompt( items ="<i>Say anything to continue.</i>" ), children=[ GetUserInput(children=[ Output( _id ="output_welcome_back", prompt =Prompt( items =[ "Welcome back!" ] ), children =[ HowCanHelpYouOutput . goto( ) ] ) ]) ]), ]), HowCanHelpYouOutput. goto() ]) ]) ]) ]), Input( GenericGrammar.no(), children=[ RequestSuccessAction.set_to_no(), Output( prompt=Prompt( items=[ "Oh no. Do you want to try again?" ]), children=[ GetUserInput(children=[ Input( GenericGrammar.no(), children= [ TerminalExchangeAction. set_to_no(), Output( prompt =GenericPrompt.ok( ), children=[ Goto(ref= "output_goodbye" ) ]) ]), Input( GenericGrammar.yes(), children=[ Output(prompt=Prompt( items=[ "Okay. What can I do for you?" ]), children=[ Goto( "getUserInput_how_can_i_help_you" ) ]) ]) ]) ]) ]), PreliminarySequencesSearch.goto() ]) ]), Output( _id="output_too_much_small_talk", prompt=Prompt(items=[ "This is fun, but wouldn't you like to look up some movies?" ]), children=[ GetUserInput(children=[ Input( GenericGrammar.yes(), children=[StylePreferenceProfileCheck.goto()]), Input(GenericGrammar.no(), children=[ SmallTalkAction.set_to_zero(), Output(GenericPrompt.ok_fine()) ]), Input( GenericGrammar.ok(), children=[StylePreferenceProfileCheck.goto()]), PreliminarySequencesSearch.goto() ]) ]) ])
def create(): return Folder( selection_type="RANDOM", label="OPENING SEQUENCES", children=[ Input( GenericGrammar.create_hello(), children=[ GreetingAction.create_increment(), If( elements=[ Condition(name=NAME_TERMINAL_EXCHANGE, operator="EQUAL_TO_YES"), Goto(ref="output_welcome_back") ] ), If( match_type="ANY", elements=[ Condition(name=NAME_GREETING_COUNT, operator="GREATER_THEN", root_text="2"), Condition(name=NAME_SMALL_TALK_COUNT, operator="GREATER_THEN", root_text="2"), Goto(ref="output_end_of_small_talk") ] ), Output( Prompt( items=[ "Hello.", "Hi.", "Hi there." ] ), children=[Output( _id="output_how_are_you", prompt=Prompt( items=[ "How are you today?", "How are you feeling today?", "How is it going?" ] ), children=[GetUserInput( children=[ Input( Grammar( watson_items=[ "Movies", "$ (STYLE)={Style_Preference}", "$ (COLOR)={Color_Preference}", "$ movies" ] ), children=[ Goto(ref="input_main_search_criteria") ] ), Input( FeelingGrammar.create_not_so_good(), children=[ Goto(ref="output_sorry_to_hear_that") ] ), Input( FeelingGrammar.create_not_so_bad(), children=[ Goto(ref="output_good_to_hear") ] ), Input( FeelingGrammar.create_feeling_fine(), children=[ Output( _id="output_good_to_hear", prompt=Prompt( items=[ "Good to hear! <br> <br>"] ), children=[HowCanHelpYouOutput.goto()] ) ] ), Input( FeelingGrammar.create_feeling_great(), children=[ Output( Prompt( items=[ "Fantastic! So glad to hear it. <br> <br>"] ), children=[HowCanHelpYouOutput.goto()] ) ] ), Input( FeelingGrammar.create_feeling_bad(), children=[ Output( _id="output_sorry_to_hear_that", prompt=Prompt( items=[ "I'm sorry to hear that. <br> <br>"] ), children=[HowCanHelpYouOutput.goto()] ) ] ), PreliminarySequencesSearch.goto() ] ) ] )] ) ] ), Input( Grammar( watson_items=[ "How are you", "$ how have you been doing", "$ how is it going", "$ how are you", "$ what's shaking", "$ what's up" ] ), children=[ GreetingAction.create_increment(), If( elements=[ Condition(name=NAME_GREETING_COUNT, operator="GREATER_THEN", root_text="2"), Condition(name=NAME_SMALL_TALK_COUNT, operator="GREATER_THEN", root_text="2"), Output( _id="output_end_of_small_talk", prompt=Prompt( items=[ "You're very polite, but don't you want me to look up movies for you?"] ), children=[GetUserInput( children=[ Input( GenericGrammar.yes(), children=[ StylePreferenceProfileCheck.goto() ] ), Input( GenericGrammar.no(), children=[ GreetingAction.reset(), Output( GenericPrompt.ok_fine() ) ] ), Input( GenericGrammar.ok(), children=[ StylePreferenceProfileCheck.goto() ] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ), Input( Grammar( watson_items=[ "Fine", "$ excellent", "$ outstanding", "$ fabulous", "$ terrific", "$ not good", "$ not so good", "$ not well", "$ not so well", "$ terrible", "$ awful", "$ worst", "$ bored", "$ sad", "$ good", "$ well", "$ fine", "$ thirsty", "$ hungry", "$ tired" ] ), children=[ Output( Prompt(items=["I am doing well, thanks."]), children=[HowCanHelpYouOutput.goto()] ) ] ), Output( Prompt(items=["I am doing well, thanks."]), children=[Goto(ref="output_how_are_you")] ) ] ), Input( Grammar( watson_items=[ "Nice to meet you", "$ nice to meet you", "$ pleasure to meet you", "$ make your acquaintance" ] ), children=[ If( elements=[ Condition(name="Greeting_Count", operator="GREATER_THEN", root_text="2"), Output( Prompt( items=[ "You're very polite, but don't you want me to look up movies for you?"] ), children=[GetUserInput( children=[ Input( GenericGrammar.yes(), children=[ StylePreferenceProfileCheck.goto() ] ), Input( GenericGrammar.no(), children=[ GreetingAction.reset(), Output( GenericPrompt.ok_fine() ) ] ), Input( GenericGrammar.ok(), children=[ StylePreferenceProfileCheck.goto() ] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ), Output( Prompt(items=["Nice to meet you too, {User_Name}!"]), children=[HowCanHelpYouOutput.goto()] ) ] ) ] )
def create(): # Folder return Folder( label="SYSTEM INITIATED SEQUENCES", children=[ Output( _id=SystemInitiatedSequences.__id(), prompt=Prompt( items=["Is there anything else I can help you with?"] ), children=[ PageAction.set_to_new(), Action(var_name="Current_Index", operator="SET_TO", text="0"), ColorPreferenceAction.set_to_blank(), # RecencyPreferenceAction.set_to_blank(), StylePreferenceAction.set_to_blank(), Action(var_name="Search_Now", operator="SET_TO_NO"), Action(var_name="Terminal_Exchange", operator="SET_TO_BLANK"), Action(var_name="Topic", operator="SET_TO_BLANK"), Action(var_name="ZIP_Code_Preference", operator="SET_TO_BLANK"), Action(var_name="Display_Trailer", operator="SET_TO_NO"), Action(var_name="Selected_Movie", operator="SET_TO_BLANK"), Action(var_name="Display_Movie_Details", operator="SET_TO_NO"), Action(var_name="Display_Reviews", operator="SET_TO_NO"), Action(var_name="Popularity_Score", operator="SET_TO", text="0.5"), GetUserInput( children=[ Input( GenericGrammar.yes(), children=[HowCanHelpYouOutput.goto()] ), Input( GenericGrammar.no(), children=[ Output( prompt=GenericPrompt.ok(), children=[Goto(ref="output_did_find_what_looking_for")] ) ] ), PreliminarySequencesSearch.goto() ] ) ] ), Output( _id="output_did_find_what_looking_for", prompt=Prompt( items=["Did you find what you were looking for, {User_Name}?"] ), children=[ GetUserInput( children=[ Input( GenericGrammar().yes(), children=[ RequestSuccessAction.set_to_yes(), Output( prompt=Prompt( items=["Great!"] ), children=[ Output( _id="output_goodbye", prompt=Prompt( items=["Goodbye.<br> <br>"] ), children=[ TerminalExchangeAction.set_to_yes(), GreetingAction.reset(), GetUserInput( children=[ Input( Grammar( watson_items=[ "Goodbye", "$ goodbye" ] ), children=[ Output( _id="output_end_of_conversation", prompt=Prompt( items="<i>Say anything to continue.</i>" ), children=[ GetUserInput( children=[ Output( _id="output_welcome_back", prompt=Prompt( items=[ "Welcome back!"] ), children=[ HowCanHelpYouOutput.goto()] ) ] ) ] ), ] ), HowCanHelpYouOutput.goto() ] ) ] ) ] ) ] ), Input( GenericGrammar.no(), children=[ RequestSuccessAction.set_to_no(), Output( prompt=Prompt( items=["Oh no. Do you want to try again?"] ), children=[ GetUserInput( children=[ Input( GenericGrammar.no(), children=[ TerminalExchangeAction.set_to_no(), Output( prompt=GenericPrompt.ok(), children=[Goto( ref="output_goodbye")] ) ] ), Input( GenericGrammar.yes(), children=[ Output( prompt=Prompt( items=[ "Okay. What can I do for you?"] ), children=[ Goto( "getUserInput_how_can_i_help_you") ] ) ] ) ] ) ] ) ] ), PreliminarySequencesSearch.goto() ] ) ] ), Output( _id="output_too_much_small_talk", prompt=Prompt( items=["This is fun, but wouldn't you like to look up some movies?"] ), children=[ GetUserInput( children=[ Input( GenericGrammar.yes(), children=[ StylePreferenceProfileCheck.goto() ] ), Input( GenericGrammar.no(), children=[ SmallTalkAction.set_to_zero(), Output( GenericPrompt.ok_fine() ) ] ), Input( GenericGrammar.ok(), children=[ StylePreferenceProfileCheck.goto() ] ), PreliminarySequencesSearch.goto() ] ) ] ) ] )
def create(): return Folder( label="PRELIMINARY SEQUENCES", _id=PreliminarySequencesFolder._id(), children=[ GreetingAction.reset(), SmallTalkAction.set_to_zero(), Input( Grammar( watson_items=[ "Do you know", "$ do you know", "$ can you", "$ do you have information", "$ can I", "$ can you tell", "$ what kind of", "$ what else do you know" ] ), children=[ GreetingAction.reset(), SmallTalkAction.set_to_zero(), Input( Grammar( watson_items=[ "out-of-scope movie topics", "$ (OTHER_MOVIE)={Topic}" ] ), children=[ TopicAction.set_to_value(), Input( Grammar( watson_items=[ "what", "$ what" ] ), children=[Goto(ref="output_no_topic_lookup")] ), Output( Prompt(items=["No."]), children=[ Output( _id="output_no_topic_lookup", prompt=Prompt( items=[ "I'm afraid I can't look up movies by {Topic}, only by Genre or MPAA Rating."] ), children=[ GetUserInput( children=[ Input( GenericGrammar.ok(), children=[ HowCanHelpYouOutput.goto() ] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ) ] ), Input( Grammar( watson_items=[ "by out-of-scope movie topics", "$ (BY_OTHER_MOVIE)={Topic}" ] ), children=[ TopicAction.set_to_value(), Input( Grammar( watson_items=[ "what", "$ what" ] ), children=[Goto(ref="output_2503370")] ), Output( Prompt( items=["No."] ), children=[ Output( _id="output_2503370", prompt=Prompt( items=[ "I'm afraid I can't look up {Topic}, only Current and Upcoming movies by Genre or MPAA Rating.", ] ), children=[ GetUserInput( children=[ Input( Grammar(watson_items=["Okay."]), children=[HowCanHelpYouOutput.goto()] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ) ] ), Input( Grammar( watson_items=[ "unsupported genres", "$ (UNSUPPORTED_GENRES)={Topic}" ] ), children=[ TopicAction.set_to_value(), Input( grammar=Grammar( watson_items=[ "what", "$ what" ] ), children=[Goto(ref="output_2510164")] ), Output( Prompt(items=["No."]), children=[ Output( _id="output_2510164", prompt=Prompt( items=[ "I'm afraid {Topic} isn't a movie genre I know. Please try another one."] ), children=[ GetUserInput( children=[ Input( grammar=Grammar( watson_items=["Okay."] ), children=[HowCanHelpYouOutput.goto()] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ) ] ), # { # (0, "grammar"): { # "item": [ # "theaters", # "$ theaters", # "$ fandango" # ] # }, # (1, "input"): { # (0, "grammar"): { # "item": [ # "what", # "$ what" # ] # }, # (1, "goto"): { # "@ref": "output_2503320" # } # }, # (2, "output"): { # (0, "prompt"): { # "item": "No." # }, # (1, "output"): { # "@id": "output_2503320", # (0, "prompt"): { # "item": "I'm afraid I cannot look up theaters myself, but I can give you a link to Fandango.com where you can buy tickets in your ZIP code. ", # "@selectionType": "RANDOM" # }, # (1, "getUserInput"): { # (0, "input"): { # (0, "grammar"): GenericGrammar.ok(), # (1, "goto"): HowCanHelpYouOutput.goto() # }, # (1, "goto"): PreliminarySequencesSearch.goto() # } # } # } # }, Input( Grammar( watson_items=["$ (STYLE)={Style_Preference}"] ), children=[ StylePreferenceAction.set_to_value(), Goto(ref="search_2414740") ] ), Input( Grammar( watson_items=[ "genres", "$ genres" ] ), children=[ Output( Prompt( items=[ "Action, adventure, animated, comedy, crime, documentary, drama, family, fantasy, foreign, historical, horror, music, mystery, romance, science fiction, TV movie, thriller, war movies and western. <br> <br>"] ), children=[ GetUserInput( children=[ Input( GenericGrammar.ok(), children=[HowCanHelpYouOutput.goto()] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ), # { # (0, "grammar"): { # "item": [ # "old movies", # "$ old movies", # "$ classic movies", # "$ oldies", # "$ classics" # ] # }, # (1, "input"): { # (0, "grammar"): { # "item": [ # "what", # "$ what" # ] # }, # (1, "goto"): { # "@ref": "output_2503380" # } # }, # (2, "output"): { # (0, "prompt"): { # "item": "No." # }, # (1, "output"): { # "@id": "output_2503380", # (0, "prompt"): { # "item": "I'm afraid I cannot look up Old Movies, only Current and Upcoming.", # "@selectionType": "RANDOM" # }, # (1, "getUserInput"): { # (0, "input"): { # (0, "grammar"): GenericGrammar.ok(), # (1, "goto"): HowCanHelpYouOutput.goto() # }, # (1, "goto"): PreliminarySequencesSearch.goto() # } # } # } # }, Input( Grammar( watson_items=[ "shoes", "$ shoes" ] ), children=[ TopicAction.set_to_shoes(), Input( Grammar( watson_items=[ "what", "$ what" ] ), children=[ Goto(ref="output_what_jemboo_knows") ] ), Output( prompt=Prompt( items=["Yes."] ), children=[ Output( _id="output_what_jemboo_knows", prompt=Prompt( items=[ "I can look up current and upcoming movies by Genre or MPAA Rating and show you trailers for them. But I'm afraid I cannot search by number of stars or by movie titles or actor and director names at this time.", ] ), children=[ GetUserInput( children=[ Input( GenericGrammar.ok(), children=[HowCanHelpYouOutput.goto()] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ) ] ), # { # (0, "grammar"): { # "item": [ # "trailer", # "$ trailer", # "$ trailers" # ] # }, # (1, "input"): { # (0, "grammar"): { # "item": [ # "what", # "$ what" # ] # }, # (1, "goto"): { # "@ref": "output_2510290" # } # }, # (2, "output"): { # (0, "prompt"): { # "item": "Yes." # }, # (1, "output"): { # "@id": "output_2510290", # (0, "prompt"): { # "item": "After searching for movies, you can click on a particular movie result to watch its <i>trailer</i>, or video preview.", # "@selectionType": "RANDOM" # }, # (1, "getUserInput"): { # (0, "input"): { # (0, "grammar"): GenericGrammar.ok(), # (1, "goto"): HowCanHelpYouOutput.goto() # }, # (1, "goto"): PreliminarySequencesSearch.goto() # } # } # } # }, Input( Grammar( watson_items=[ "out-of-scope topics", "$ (DINING)={Topic}", "$ (WEATHER)={Topic}", "$ (TRAFFIC)={Topic}" ] ), children=[ TopicAction.set_to_value(), OutOfScopeCountAction.increment(), If( elements=[ OutOfScopeCountConditions.is_greater_then("2"), Output( Prompt( items=[ "I'm sorry I don't know about that. Can I look up some shoes for you?"] ), children=[ GetUserInput( children=[ Input( GenericGrammar.yes(), children=[ StylePreferenceProfileCheck.goto() ] ), Input( GenericGrammar.no(), children=[ Action(var_name="Out-of-Scope_Count", operator="SET_TO", text="0"), Output( prompt=GenericPrompt.ok_fine() ) ] ), Input( GenericGrammar.ok(), children=[ StylePreferenceProfileCheck.goto() ] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ), Input( Grammar( watson_items=[ "what", "$ what" ] ), children=[Goto(ref="output_2497989")] ), Output( Prompt(items=["No."]), children=[ Output( _id="output_2497989", prompt=Prompt( items=["I'm afraid I don't know much about {Topic}. Just movies."]), children=[ GetUserInput( children=[ Input( Grammar(watson_items=["Okay."]), children=[HowCanHelpYouOutput.goto()] ), PreliminarySequencesSearch.goto() ] ) ] ) ] ) ] ), Goto(ref="output_what_jemboo_knows") ] ) ] )
def create(): return Folder( selection_type="RANDOM", label="OPENING SEQUENCES", children=[ Input( GenericGrammar.create_hello(), children=[ GreetingAction.create_increment(), If(elements=[ Condition(name=NAME_TERMINAL_EXCHANGE, operator="EQUAL_TO_YES"), Goto(ref="output_welcome_back") ]), If(match_type="ANY", elements=[ Condition(name=NAME_GREETING_COUNT, operator="GREATER_THEN", root_text="2"), Condition(name=NAME_SMALL_TALK_COUNT, operator="GREATER_THEN", root_text="2"), Goto(ref="output_end_of_small_talk") ]), Output( Prompt(items=["Hello.", "Hi.", "Hi there."]), children=[ Output( _id="output_how_are_you", prompt=Prompt(items=[ "How are you today?", "How are you feeling today?", "How is it going?" ]), children=[ GetUserInput(children=[ Input(Grammar(watson_items=[ "Movies", "$ (STYLE)={Style_Preference}", "$ (COLOR)={Color_Preference}", "$ movies" ]), children=[ Goto( ref= "input_main_search_criteria" ) ]), Input( FeelingGrammar. create_not_so_good(), children=[ Goto( ref= "output_sorry_to_hear_that" ) ]), Input( FeelingGrammar. create_not_so_bad(), children=[ Goto(ref= "output_good_to_hear") ]), Input( FeelingGrammar. create_feeling_fine(), children=[ Output( _id= "output_good_to_hear", prompt=Prompt(items=[ "Good to hear! <br> <br>" ]), children=[ HowCanHelpYouOutput .goto() ]) ]), Input( FeelingGrammar. create_feeling_great(), children=[ Output(Prompt(items=[ "Fantastic! So glad to hear it. <br> <br>" ]), children=[ HowCanHelpYouOutput .goto() ]) ]), Input( FeelingGrammar. create_feeling_bad(), children=[ Output( _id= "output_sorry_to_hear_that", prompt=Prompt(items=[ "I'm sorry to hear that. <br> <br>" ]), children=[ HowCanHelpYouOutput .goto() ]) ]), PreliminarySequencesSearch.goto() ]) ]) ]) ]), Input( Grammar(watson_items=[ "How are you", "$ how have you been doing", "$ how is it going", "$ how are you", "$ what's shaking", "$ what's up" ]), children=[ GreetingAction.create_increment(), If(elements=[ Condition(name=NAME_GREETING_COUNT, operator="GREATER_THEN", root_text="2"), Condition(name=NAME_SMALL_TALK_COUNT, operator="GREATER_THEN", root_text="2"), Output( _id="output_end_of_small_talk", prompt=Prompt(items=[ "You're very polite, but don't you want me to look up movies for you?" ]), children=[ GetUserInput(children=[ Input(GenericGrammar.yes(), children=[ StylePreferenceProfileCheck. goto() ]), Input(GenericGrammar.no(), children=[ GreetingAction.reset(), Output( GenericPrompt.ok_fine()) ]), Input(GenericGrammar.ok(), children=[ StylePreferenceProfileCheck. goto() ]), PreliminarySequencesSearch.goto() ]) ]) ]), Input(Grammar(watson_items=[ "Fine", "$ excellent", "$ outstanding", "$ fabulous", "$ terrific", "$ not good", "$ not so good", "$ not well", "$ not so well", "$ terrible", "$ awful", "$ worst", "$ bored", "$ sad", "$ good", "$ well", "$ fine", "$ thirsty", "$ hungry", "$ tired" ]), children=[ Output(Prompt( items=["I am doing well, thanks."]), children=[HowCanHelpYouOutput.goto()]) ]), Output(Prompt(items=["I am doing well, thanks."]), children=[Goto(ref="output_how_are_you")]) ]), Input( Grammar(watson_items=[ "Nice to meet you", "$ nice to meet you", "$ pleasure to meet you", "$ make your acquaintance" ]), children=[ If(elements=[ Condition(name="Greeting_Count", operator="GREATER_THEN", root_text="2"), Output(Prompt(items=[ "You're very polite, but don't you want me to look up movies for you?" ]), children=[ GetUserInput(children=[ Input( GenericGrammar.yes(), children=[ StylePreferenceProfileCheck. goto() ]), Input(GenericGrammar.no(), children=[ GreetingAction.reset(), Output(GenericPrompt. ok_fine()) ]), Input( GenericGrammar.ok(), children=[ StylePreferenceProfileCheck. goto() ]), PreliminarySequencesSearch.goto() ]) ]) ]), Output(Prompt( items=["Nice to meet you too, {User_Name}!"]), children=[HowCanHelpYouOutput.goto()]) ]) ])