コード例 #1
0
    def create():
        from dialog.schema.factories.inputs import AfterSearchResults

        return Output(
            _id=AnythingElseCanHelpWith.__id(),
            prompt=Prompt(
                items=["Is there anything else I can help you with?"]
            ),
            children=[
                GetUserInput(
                    children=[
                        Input(
                            Grammar(
                                watson_items=[
                                    "Go back",
                                    "$ go back",
                                    "$ wait",
                                    "$ not done",
                                    "$ not finished"
                                ]
                            ),
                            children=[
                                Output(
                                    GenericPrompt.ok(),
                                    children=[AfterSearchResults.goto()]
                                )
                            ]
                        ),
                        Input(
                            GenericGrammar.yes(),
                            children=[
                                RequestSuccessAction.set_to_blank(),
                                TerminalExchangeAction.set_to_blank(),
                                TopicAction.set_to_blank(),
                                StylePreferenceAction.set_to_blank(),
                                ColorPreferenceAction.set_to_blank(),
                                RecencyPreferenceAction.set_to_blank()
                            ]
                        ),
                        Input(
                            GenericGrammar.no(),
                            children=[
                                Output(
                                    GenericGrammar.ok(),
                                    children=[Goto(ref="output_did_find_what_looking_for")]
                                )
                            ]
                        ),
                        Goto(ref="input_2456878")
                    ]

                )
            ]
        )
コード例 #2
0
 def create():
     return Input(
         Grammar(
             watson_items=[
                 "Favorites",
                 "$ favorites",
                 "$ favorite movies",
                 "$ favorited",
                 "$ hearted"
             ]
         ),
         children=[
             GreetingAction.reset(),
             SmallTalkAction.set_to_zero(),
             Output(
                 Prompt(
                     items=[
                         "When you get the details for a movie, you can save the movie in your <i>Favorites</i> by clicking on the heart icon above the trailer."]
                 ),
                 children=[
                     GetUserInput(
                         children=[
                             Input(
                                 GenericGrammar.ok(),
                                 children=[HowCanHelpYouOutput.goto()]
                             ),
                             PreliminarySequencesSearch.goto()
                         ]
                     )
                 ]
             )
         ]
     )
コード例 #3
0
ファイル: details.py プロジェクト: rdefeo/dialog
 def create():
     return Input(
         Grammar(
             watson_items=[
                 "Details",
                 "$ details",
                 "$ detail",
                 "$ movie info",
                 "$ movie information"
             ]
         ),
         children=[
             GreetingAction.reset(),
             SmallTalkAction.set_to_zero(),
             Output(
                 Prompt(
                     items=[
                         "After searching for movies, you can click on a particular movie result to see <i>details</i>, such as rating, summary and trailer.", ]
                 ),
                 children=[
                     GetUserInput(
                         children=[
                             Input(
                                 GenericGrammar.ok(),
                                 children=[HowCanHelpYouOutput.goto()]
                             ),
                             PreliminarySequencesSearch.goto()
                         ]
                     )
                 ]
             )
         ]
     )
コード例 #4
0
 def create():
     return Output(
         _id=StartSearch.__id(),
         prompt=Prompt(
             items=["Would you like to find a specific style of shoe?"]
             # "Would you like to find a movie that's now playing or coming soon?"
         ),
         children=[
             GetUserInput(children=[
                 # TODO Not sure how this is useful
                 # (0, "input"): {
                 #     (0, "grammar"): {
                 #         "item": "$ (DATE_TIME_RANGE)={DateTime_Mentioned_ENT}"
                 #     },
                 #     (1, "action"): {
                 #         "@varName": "DateTime_Current",
                 #         "@operator": "SET_TO",
                 #         "#text": "<mct:getTime>America/Tijuana</mct:getTime>"
                 #     },
                 #     (2, "goto"): Goto(ref="input_date_time")
                 # },
                 Input(Grammar(
                     watson_items=["neither", "neither", "$ either", "no"]),
                       children=[
                           Output(prompt=GenericPrompt.ok(),
                                  children=[HowCanHelpYouOutput.goto()])
                       ]),
                 Input(
                     GenericGrammar.yes_okay(wildcard=False),
                     children=[
                         Output(Prompt(items=[
                             "Please tell me the style you would like then.",
                             "Ok great what style would you like?"
                         ]),
                                children=[
                                    StylePreferenceProfileCheckInput.goto()
                                ])
                     ]),
                 Input(Grammar(watson_items=[
                     "My name is", "$ my name is", "$ I am", "$ I'm",
                     "$ called", "$ call me", "$ known as"
                 ]),
                       children=[
                           Output(prompt=Prompt(items=["Sorry."]),
                                  children=[
                                      Goto(ref="input_user_knownas_name")
                                  ])
                       ]),
                 PreliminarySequencesSearch.goto()
             ])
         ])
コード例 #5
0
 def create():
     return Input(
         Grammar(watson_items=[
             "Details", "$ details", "$ detail", "$ movie info",
             "$ movie information"
         ]),
         children=[
             GreetingAction.reset(),
             SmallTalkAction.set_to_zero(),
             Output(Prompt(items=[
                 "After searching for movies, you can click on a particular movie result to see <i>details</i>, such as rating, summary and trailer.",
             ]),
                    children=[
                        GetUserInput(children=[
                            Input(GenericGrammar.ok(),
                                  children=[HowCanHelpYouOutput.goto()]),
                            PreliminarySequencesSearch.goto()
                        ])
                    ])
         ])
コード例 #6
0
ファイル: preliminary.py プロジェクト: rdefeo/dialog
    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")
                    ]
                )
            ]
        )
コード例 #7
0
ファイル: concept.py プロジェクト: rdefeo/dialog
 def create():
     return Folder(
         label="Concepts",
         children=[
             StyleConcept.create(),
             ColorConcept.create(),
             CDHFolder.create(),
             Concept(grammar=GenericGrammar.create_hello()),
             Concept(grammar=GenericGrammar.create_yes_goodbye()),
             Concept(grammar=GenericGrammar.create_ok_thanks()),
             Concept(grammar=GenericGrammar.create_yes_full()),
             Concept(grammar=GenericGrammar.no()),
             Concept(grammar=GenericGrammar.create_haha()),
             Concept(grammar=GenericGrammar.create_sorry()),
             Concept(grammar=GenericGrammar.create_you()),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "movie",
                         "movies",
                         "film",
                         "films",
                         "flick",
                         "flicks"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "theater",
                         "theaters",
                         "theatre",
                         "theatres",
                         "cinema",
                         "cinemas"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "showtime",
                         "showtimes",
                         "show time",
                         "show times",
                         "movie time",
                         "movie times"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "dining",
                         "restaurant",
                         "restaurants",
                         "place to eat",
                         "places to eat",
                         "diner",
                         "diners",
                         "cafe",
                         "cafes",
                         "cafeteria",
                         "cafeterias",
                         "Bar",
                         "Bars",
                         "Pub",
                         "Pubs",
                         "Tavern",
                         "Taverns",
                         "Brewery",
                         "Breweries",
                         "somewhere to eat",
                         "eatery",
                         "place to dine",
                         "somewhere nice to eat",
                         "eateries",
                         "places to dine",
                         "bistro",
                         "a bistro",
                         "bistros",
                         "coffee shop",
                         "coffee shops",
                         "coffee place",
                         "coffee places",
                         "eating house",
                         "eating houses",
                         "snack bar",
                         "snack bars",
                         "juice bar",
                         "juice bars",
                         "health food shop",
                         "fast food outlet",
                         "fast food shop",
                         "fast food outlets",
                         "fast food shops",
                         "food court",
                         "food courts",
                         "food mall",
                         "food malls"
                     ]
                 ),
                 _id="concept_place_to_eat"
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "weather",
                         "Rain",
                         "Raining",
                         "Snow",
                         "Snowing",
                         "Sunny",
                         "Cloudy",
                         "Sleet",
                         "Freezing Rain",
                         "Windy",
                         "Tornado",
                         "Hurricane"
                     ]
                 ),
                 _id="concept_weather"
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "traffic",
                         "Traffic conditions",
                         "Driving conditions",
                         "Road conditions",
                         "Streets",
                         "Roads",
                         "Freeways",
                         "Highways",
                         "Driving",
                         "Rush hour",
                         "Bus",
                         "Buses",
                         "Train",
                         "Trains",
                         "Car",
                         "Cars",
                         "Automobile",
                         "Automobiles",
                         "Bicycle",
                         "Bicycles",
                         "Bike",
                         "Bikes",
                         "Motorcycle",
                         "Motorcycles",
                         "Walking",
                         "Driving",
                         "Pedestrian"
                     ]
                 ),
                 _id="concept_2456118"
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "what is",
                         "what's"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "Review",
                         "Reviews",
                         "Critique",
                         "Critiques",
                         "Popularity",
                         "Tomatoes",
                         "stars"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "Ratings",
                         "Rating",
                         "Popularity",
                         "Tomatoes",
                         "stars"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "it",
                         "that",
                         "Popularity",
                         "Tomatoes",
                         "stars"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "family-friendly",
                         "family",
                         "child",
                         "children",
                         "childrens",
                         "children's",
                         "kiddy",
                         "kids",
                         "kid's",
                         "kid",
                         "family friendly",
                         "family safe",
                         "kid friendly",
                         "child friendly",
                         "safe for kids",
                         "kid safe",
                         "suitable for children",
                         "suitable for kids",
                         "suitable for a child",
                         "suitable for a kid",
                         "child appropriate",
                         "appropriate for children",
                         "not adult",
                         "for families",
                         "for a family",
                         "no sex",
                         "no violence",
                         "clean"
                     ]
                 ),
                 _id="concept_family_friendly"
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "near me",
                         "by me",
                         "my area",
                         "close to me",
                         "close by",
                         "nearby",
                         "in the neighborhood",
                         "local",
                         "locally",
                         "fairly close",
                         "close to us",
                         "near to us",
                         "short drive",
                         "short walk",
                         "a short drive",
                         "a short walk",
                         "close",
                         "near",
                         "around the corner",
                         "just around the corner",
                         "short distance",
                         "a short distance",
                         "close at hand",
                         "short distance awat",
                         "a short distance away",
                         "walking distance",
                         "within walking distance",
                         "not a long distance",
                         "not far",
                         "not too far",
                         "not far away",
                         "not too far away",
                         "in my area",
                         "in the city",
                         "my zipcode",
                         "dowtown"
                     ]
                 )
             ),
             Concept(
                 grammar=Grammar(
                     watson_items=[
                         "Adult",
                         "Adults Only",
                         "NC 17",
                         "NC-17",
                         "NC17",
                         "NC 17 rated",
                         "NC-17 rated",
                         "NC-17-rated",
                         "NC 17-rated",
                         "NC17 rated",
                         "NC17-rated",
                         "X",
                         "X-rated",
                         "X rated",
                         "XXX",
                         "XXX-rated",
                         "XXX rated",
                         "Triple X",
                         "Triple X-rated",
                         "Triple X rated",
                         "NC seventeen",
                         "NC-seventeen"
                     ]
                 ),
                 _id="concept_porn"
             )
         ]
     )
コード例 #8
0
ファイル: start_search.py プロジェクト: rdefeo/dialog
 def create():
     return Output(
         _id=StartSearch.__id(),
         prompt=Prompt(
             items=["Would you like to find a specific style of shoe?"]
             # "Would you like to find a movie that's now playing or coming soon?"
         ),
         children=[
             GetUserInput(
                 children=[
                     # TODO Not sure how this is useful
                     # (0, "input"): {
                     #     (0, "grammar"): {
                     #         "item": "$ (DATE_TIME_RANGE)={DateTime_Mentioned_ENT}"
                     #     },
                     #     (1, "action"): {
                     #         "@varName": "DateTime_Current",
                     #         "@operator": "SET_TO",
                     #         "#text": "<mct:getTime>America/Tijuana</mct:getTime>"
                     #     },
                     #     (2, "goto"): Goto(ref="input_date_time")
                     # },
                     Input(
                         Grammar(
                                 watson_items=[
                                     "neither",
                                     "neither",
                                     "$ either",
                                     "no"
                                 ]
                             ),
                         children=[
                             Output(
                                 prompt=GenericPrompt.ok(),
                                 children=[HowCanHelpYouOutput.goto()]
                             )
                         ]
                     ),
                     Input(
                         GenericGrammar.yes_okay(wildcard=False),
                         children=[
                             Output(
                                 Prompt(
                                     items=[
                                         "Please tell me the style you would like then.",
                                         "Ok great what style would you like?"
                                     ]
                                 ),
                                 children=[StylePreferenceProfileCheckInput.goto()]
                             )
                         ]
                     ),
                     Input(
                         Grammar(
                                 watson_items=[
                                     "My name is",
                                     "$ my name is",
                                     "$ I am",
                                     "$ I'm",
                                     "$ called",
                                     "$ call me",
                                     "$ known as"
                                 ]
                             ),
                         children=[
                             Output(
                                 prompt=Prompt(items=["Sorry."]),
                                 children=[
                                     Goto(ref="input_user_knownas_name")
                                 ]
                             )
                         ]
                     ),
                     PreliminarySequencesSearch.goto()
                 ]
             )
         ]
     )
コード例 #9
0
 def create():
     return GetUserInput(
         _id=StylePreferenceProfileCheckInput.__id(),
         children=[
             Input(
                 Grammar(
                     watson_items=[
                         "What",
                         "$ what",
                         "$ which",
                         "$ tell me"
                     ]
                 ),
                 children=[
                     Input(
                         Grammar(
                             watson_items=[
                                 "styles",
                                 "$ they",
                                 "$ ones",
                                 "$ choices",
                                 "$ options",
                                 "$ styles",
                                 "$ what else"
                             ]
                         ),
                         children=[
                             Output(
                                 Prompt(
                                     items=[
                                         "For example.... Boots, High heels, Sandals, Trainers or Flats <br> <br>"]
                                 ),
                                 children=[StylePreferenceProfileCheckInput.goto()]
                             )
                         ]
                     )
                 ]
             ),
             Input(
                 Grammar(
                     items=[
                         EntityGrammarItem(dynamic_field_assignment="Style_Preference", entity_id="STYLE")
                     ],
                     watson_items=[
                         "Style",
                         "$ (Style)={Style_Preference}"
                     ]
                 ),
                 children=[
                     CurrentIndexAction.set_to_zero(),
                     PageAction.set_to_new(),
                     SearchNowAction.set_to_no(),
                     StylePreferenceAction.set_to_value(),
                     Goto(ref="output_ok_do_search")
                 ]
             ),
             # {
             #     (0, "grammar"): {
             #         "item": [
             #             "NC-17",
             #             "$ NC-17"
             #         ]
             #     },
             #     (1, "output"): {
             #         (0, "prompt"): {
             #             "item": "I'm afraid I cannot look up NC-17-rated movies.",
             #             "@selectionType": "RANDOM"
             #         },
             #         (1, "goto"): StylePreferenceProfileCheckInput.goto()
             #     }
             # },
             Input(
                 Grammar(
                     watson_items=[
                         "No",
                         "$ don't care",
                         "$ don't know",
                         "$ no preference",
                         "$ no",
                         "$ none",
                         "$ all",
                         "$ any",
                         "$ anything",
                         "$ whatever",
                         "$ nothing specific",
                         "$ don't have a preference"
                     ]
                 ),
                 children=[
                     CurrentIndexAction.set_to_zero(),
                     PageAction.set_to_new(),
                     Goto(ref="output_2456875")
                 ]
             ),
             Input(
                 GenericGrammar.yes(),
                 children=[
                     Output(
                         Prompt(items=["What style?", "Please tell me the style you would prefer."]),
                         children=[StylePreferenceProfileCheckInput.goto()]
                     )
                 ]
             ),
             PreliminarySequencesSearch.goto()
         ]
     )
コード例 #10
0
 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
                                                                     ="&lt;i&gt;Say anything to continue.&lt;/i&gt;"
                                                                 ),
                                                                 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()
                     ])
                 ])
         ])
コード例 #11
0
 def create():
     return GetUserInput(
             _id=ColorPreferenceProfileCheckInput.__id(),
             children=[
                 Input(
                         Grammar(
                                 watson_items=[
                                     "What",
                                     "$ what",
                                     "$ which",
                                     "$ tell me"
                                 ]
                         ),
                         children=[
                             Input(
                                     Grammar(
                                             watson_items=[
                                                 "colors",
                                                 "$ they",
                                                 "$ ones",
                                                 "$ choices",
                                                 "$ options",
                                                 "$ ratings",
                                                 "$ certifications",
                                                 "$ what else"
                                             ]
                                     ),
                                     children=[
                                         Output(
                                                 Prompt(
                                                         items=["Black, White, Red, Brown or Green <br> <br>"]
                                                 ),
                                                 children=[ColorPreferenceProfileCheckInput.goto()]
                                         )
                                     ]
                             )
                         ]
                 ),
                 Input(
                         Grammar(
                                 watson_items=[
                                     "Color",
                                     "$ (COLOR)={Color_Preference}"
                                 ]
                         ),
                         children=[
                             CurrentIndexAction.set_to_zero(),
                             PageAction.set_to_new(),
                             SearchNowAction.set_to_no(),
                             ColorPreferenceAction.set_to_value(),
                             Goto(ref="output_ok_do_search")
                         ]
                 ),
                 # TODO NOT SUPPORTED PATH
                 # {
                 #     (0, "grammar"): {
                 #         "item": [
                 #             "NC-17",
                 #             "$ NC-17"
                 #         ]
                 #     },
                 #     (1, "output"): {
                 #         (0, "prompt"): {
                 #             "item": "I'm afraid I cannot look up NC-17-rated movies.",
                 #             "@selectionType": "RANDOM"
                 #         },
                 #         (1, "goto"): {
                 #             "@ref": "getUserInput_2443780a"
                 #         }
                 #     }
                 # },
                 Input(
                         Grammar(
                                 watson_items=[
                                     "No",
                                     "$ don't care",
                                     "$ don't know",
                                     "$ no preference",
                                     "$ no",
                                     "$ none",
                                     "$ all",
                                     "$ any",
                                     "$ anything",
                                     "$ whatever",
                                     "$ nothing specific",
                                     "$ don't have a preference"
                                 ]
                         ),
                         children=[
                             CurrentIndexAction.set_to_zero(),
                             PageAction.set_to_new(),
                             Goto(ref="output_2456875")
                         ]
                 ),
                 Input(
                         GenericGrammar.yes_okay(wildcard=False),
                         children=[
                             Output(
                                     Prompt(items=["Which one?"]),
                                     children=[ColorPreferenceProfileCheckInput.goto()]
                             )
                         ]
                 ),
                 PreliminarySequencesSearch.goto()
             ]
     )
コード例 #12
0
ファイル: opening.py プロジェクト: rdefeo/dialog
 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()]
                             )
                         ]
                 )
             ]
     )
コード例 #13
0
 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()])
                 ])
         ])
コード例 #14
0
 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")
                 ])
         ])
コード例 #15
0
ファイル: main_search_criteria.py プロジェクト: rdefeo/dialog
 def create():
     return Input(
         _id="input_main_search_criteria",
         grammar=Grammar(
             watson_items=[
                 "Movies",
                 "$ (COLOR)={Color_Preference}",
                 "$ (STYLE)={Style_Preference}",
                 # "$ movies"
             ]
         ),
         children=[
             GreetingAction.reset(),
             SmallTalkAction.set_to_zero(),
             CurrentIndexAction.set_to_zero(),
             PageAction.set_to_new(),
             TopicAction.set_to_shoes(),
             ColorPreferenceAction.set_to_value(),
             StylePreferenceAction.set_to_value(),
             # DateTimeInput.create(),
             # CertificationPreferenceInput.create(),
             # FamilyFriendlyInput.create(),
             ColorPreferenceInput.create(StylePreferenceInput.goto()),
             StylePreferenceInput.create(Goto(ref="out_of_scope_topics")),
             # ZipcodeInput.create(),
             Input(
                 _id="out_of_scope_topics",
                 grammar=Grammar(
                     watson_items=[
                         "out-of-scope movie topics",
                         "$ (OTHER_MOVIE)={Topic}"
                     ]
                 ),
                 children=[
                     TopicAction.set_to_value(),
                     Goto(ref="output_no_topic_lookup")
                 ]
             ),
             StylePreferenceProfileCheck.create(),
             # GenrePreferenceProfileCheck.create(),
             ColorPreferenceProfileCheck.create(),
             Output(
                 _id="output_ok_do_search",
                 prompt=GenericPrompt.ok(),
                 children=[
                     Output(
                         _id="output_search_now",
                         prompt=Prompt(
                             items=["Search_Now"]
                         ),
                         children=[
                             Action(var_name="Last_Results", operator="SET_TO_NO"),
                             Action(var_name="First_Results", operator="SET_TO_NO"),
                             Action(var_name="Search_Now", operator="SET_TO_YES"),
                             Action(var_name="First_Time", operator="SET_TO_NO"),
                             Input(
                                 Grammar(
                                     watson_items=["UPDATE NUM_MOVIES"]
                                 ),
                                 children=[
                                     If(
                                         elements=[
                                             ResultsCountConditions.equals_zero(),
                                             Output(
                                                 Prompt(
                                                     items=[
                                                         "I'm afraid I found {%s} matching {Color_Preference} {Style_Preference}. Try changing your criteria." % NAME_RESULTS_COUNT]
                                                 ),
                                                 children=[
                                                     GetUserInput(
                                                         children=[
                                                             Input(
                                                                 GenericGrammar.ok(),
                                                                 children=[
                                                                     ColorPreferenceAction.set_to_blank(),
                                                                     StylePreferenceAction.set_to_blank(),
                                                                     StylePreferenceProfileCheck.goto(),
                                                                     RemoveColorInput.goto()
                                                                 ]
                                                             ),
                                                             RemoveColorInput.goto()
                                                         ]
                                                     )
                                                 ]
                                             )
                                         ]
                                     ),
                                     If(
                                         elements=[
                                             StyleConditions.is_blank(),
                                             ColorConditions.has_value(),
                                             Output(
                                                 Prompt(
                                                     items=[
                                                         "Good choice, {User_Name}! I found {%s} results for {Recency_Preference} {Color_Preference}-rated movies." % NAME_RESULTS_COUNT]
                                                 ),
                                                 children=[AfterSearchResults.goto()]
                                             )
                                         ]
                                     ),
                                     If(
                                         elements=[
                                             ColorConditions.is_blank(),
                                             StyleConditions.has_value(),
                                             Output(
                                                 Prompt(
                                                     items=[
                                                         "Good choice, {User_Name}! I found {%s} results for {Color_Preference} {Style_Preference} movies." % NAME_RESULTS_COUNT]
                                                 ),
                                                 children=[AfterSearchResults.goto()]
                                             )
                                         ]
                                     ),
                                     If(
                                         elements=[
                                             ColorConditions.is_blank(),
                                             StyleConditions.is_blank(),
                                             Output(
                                                 Prompt(
                                                     items=[
                                                         "I found {%s} results for ALL {Recency_Preference} movies." % NAME_RESULTS_COUNT]
                                                 ),
                                                 children=[AfterSearchResults.goto()]
                                             )
                                         ]
                                     ),
                                     Output(
                                         Prompt(
                                             items=[
                                                 "Good choices, {User_Name}! I found {%s} results for {Color_Preference} {Style_Preference} movies." % NAME_RESULTS_COUNT]
                                         ),
                                         children=[AfterSearchResults.create()]
                                     )
                                 ]
                             )
                         ]
                     )
                 ]
             )
         ]
     )
コード例 #16
0
 def create():
     return Folder(
         label="Concepts",
         children=[
             StyleConcept.create(),
             ColorConcept.create(),
             CDHFolder.create(),
             Concept(grammar=GenericGrammar.create_hello()),
             Concept(grammar=GenericGrammar.create_yes_goodbye()),
             Concept(grammar=GenericGrammar.create_ok_thanks()),
             Concept(grammar=GenericGrammar.create_yes_full()),
             Concept(grammar=GenericGrammar.no()),
             Concept(grammar=GenericGrammar.create_haha()),
             Concept(grammar=GenericGrammar.create_sorry()),
             Concept(grammar=GenericGrammar.create_you()),
             Concept(grammar=Grammar(watson_items=[
                 "movie", "movies", "film", "films", "flick", "flicks"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "theater", "theaters", "theatre", "theatres", "cinema",
                 "cinemas"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "showtime", "showtimes", "show time", "show times",
                 "movie time", "movie times"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "dining", "restaurant", "restaurants", "place to eat",
                 "places to eat", "diner", "diners", "cafe", "cafes",
                 "cafeteria", "cafeterias", "Bar", "Bars", "Pub", "Pubs",
                 "Tavern", "Taverns", "Brewery", "Breweries",
                 "somewhere to eat", "eatery", "place to dine",
                 "somewhere nice to eat", "eateries", "places to dine",
                 "bistro", "a bistro", "bistros", "coffee shop",
                 "coffee shops", "coffee place", "coffee places",
                 "eating house", "eating houses", "snack bar", "snack bars",
                 "juice bar", "juice bars", "health food shop",
                 "fast food outlet", "fast food shop", "fast food outlets",
                 "fast food shops", "food court", "food courts",
                 "food mall", "food malls"
             ]),
                     _id="concept_place_to_eat"),
             Concept(grammar=Grammar(watson_items=[
                 "weather", "Rain", "Raining", "Snow", "Snowing", "Sunny",
                 "Cloudy", "Sleet", "Freezing Rain", "Windy", "Tornado",
                 "Hurricane"
             ]),
                     _id="concept_weather"),
             Concept(grammar=Grammar(watson_items=[
                 "traffic", "Traffic conditions", "Driving conditions",
                 "Road conditions", "Streets", "Roads", "Freeways",
                 "Highways", "Driving", "Rush hour", "Bus", "Buses",
                 "Train", "Trains", "Car", "Cars", "Automobile",
                 "Automobiles", "Bicycle", "Bicycles", "Bike", "Bikes",
                 "Motorcycle", "Motorcycles", "Walking", "Driving",
                 "Pedestrian"
             ]),
                     _id="concept_2456118"),
             Concept(grammar=Grammar(watson_items=["what is", "what's"])),
             Concept(grammar=Grammar(watson_items=[
                 "Review", "Reviews", "Critique", "Critiques", "Popularity",
                 "Tomatoes", "stars"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "Ratings", "Rating", "Popularity", "Tomatoes", "stars"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "it", "that", "Popularity", "Tomatoes", "stars"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "family-friendly", "family", "child", "children",
                 "childrens", "children's", "kiddy", "kids", "kid's", "kid",
                 "family friendly", "family safe", "kid friendly",
                 "child friendly", "safe for kids", "kid safe",
                 "suitable for children", "suitable for kids",
                 "suitable for a child", "suitable for a kid",
                 "child appropriate", "appropriate for children",
                 "not adult", "for families", "for a family", "no sex",
                 "no violence", "clean"
             ]),
                     _id="concept_family_friendly"),
             Concept(grammar=Grammar(watson_items=[
                 "near me", "by me", "my area", "close to me", "close by",
                 "nearby", "in the neighborhood", "local", "locally",
                 "fairly close", "close to us", "near to us", "short drive",
                 "short walk", "a short drive", "a short walk", "close",
                 "near", "around the corner", "just around the corner",
                 "short distance", "a short distance", "close at hand",
                 "short distance awat", "a short distance away",
                 "walking distance", "within walking distance",
                 "not a long distance", "not far", "not too far",
                 "not far away", "not too far away", "in my area",
                 "in the city", "my zipcode", "dowtown"
             ])),
             Concept(grammar=Grammar(watson_items=[
                 "Adult", "Adults Only", "NC 17", "NC-17", "NC17",
                 "NC 17 rated", "NC-17 rated", "NC-17-rated", "NC 17-rated",
                 "NC17 rated", "NC17-rated", "X", "X-rated", "X rated",
                 "XXX", "XXX-rated", "XXX rated", "Triple X",
                 "Triple X-rated", "Triple X rated", "NC seventeen",
                 "NC-seventeen"
             ]),
                     _id="concept_porn")
         ])
コード例 #17
0
ファイル: system_initiated.py プロジェクト: rdefeo/dialog
    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="&lt;i&gt;Say anything to continue.&lt;/i&gt;"
                                                                            ),
                                                                            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()
                            ]
                        )
                    ]
                )
            ]
        )