예제 #1
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        logger.info("In LaunchRequestHandler")
        attr = handler_input.attributes_manager.session_attributes
        attr["state"] = "WELCOME"

        ### Fun stuff for display backgorund###
        if util.supports_display(handler_input):
            background_img = Image(sources=[
                ImageInstance(url=util.get_image(
                    ht=1024, wd=600, label=item["abbreviation"]))
            ])

            response_builder.add_directive(
                RenderTemplateDirective(
                    ListTemplate1(token="Hear-o",
                                  back_button=BackButtonBehavior.HIDDEN,
                                  background_image=background_img,
                                  title="Hear-o",
                                  list_items=item_list)))
        ###################################################################

        handler_input.response_builder.speak(
            util.speak_in_english(data.WELCOME_MESSAGE)).ask(
                util.speak_in_english(data.WELCOME_MESSAGE))
        return handler_input.response_builder.response
예제 #2
0
 def handle(self, handler_input):
     # type: (HandlerInput) -> Response
     logger.info("In ExitIntentHandler")
     handler_input.response_builder.speak(
         util.speak_in_english(
             data.EXIT_SKILL_MESSAGE)).set_should_end_session(True)
     return handler_input.response_builder.response
예제 #3
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        logger.info("In HelpIntentHandler")
        handler_input.attributes_manager.session_attributes = {}
        # Resetting session

        handler_input.response_builder.speak(
            util.speak_in_english(data.HELP_MESSAGE)).ask(data.HELP_MESSAGE)
        return handler_input.response_builder.response
예제 #4
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        attr = handler_input.attributes_manager.session_attributes
        attr["state"] = "TOPIC"
        # topic = handler_input.request_envelope.request.intent.slots['generalanswer'].value
        # question = util.speak_in_english("Great! Shall we revise on " + topic + "?")

        question = util.speak_in_english(data.REVISE_TOPIC_MESSAGE)
        response_builder = handler_input.response_builder
        response_builder.speak(question)
        response_builder.ask(question)

        return response_builder.response
예제 #5
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        logger.info("In RepeatHandler")
        attr = handler_input.attributes_manager.session_attributes
        response_builder = handler_input.response_builder
        if "recent_response" in attr:
            cached_response_str = json.dumps(attr["recent_response"])
            cached_response = DefaultSerializer().deserialize(
                cached_response_str, Response)
            return cached_response
        else:
            response_builder.speak(util.speak_in_english(
                data.FALLBACK_ANSWER)).ask(data.HELP_MESSAGE)

            return response_builder.response
예제 #6
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response
        attr = handler_input.attributes_manager.session_attributes
        last_said = attr.get("last_said")  ## or whatever we want to translate

        translator = Translator()
        translator.translate(last_said, dest="en")

        last_said_translated = util.speak_in_english(translated.text)

        response_builder = handler_input.response_builder
        response_builder.speak(last_said_translated)
        response_builder.ask(last_said_translated)

        return response_builder.response
예제 #7
0
    def handle(self, handler_input):
        # type: (HandlerInput) -> Response

        attr = handler_input.attributes_manager.session_attributes
        attr["state"] = "ANSWERINFRENCH"
        attr["sayinfrench_number"] = 0
        attr["wrong_answer_number"] = 0

        question = data.sayinfrench_QUESTION_LIST[0]

        final_message = util.speak_in_english(
            'Okay, can you say the French equivalent of the following phrases? Remember to use the proper articles. '
            + str(question))

        response_builder = handler_input.response_builder
        response_builder.speak(final_message)
        response_builder.ask(final_message)
        return response_builder.response