async def showBooks_step( self, step_context: WaterfallStepContext) -> DialogTurnResult: iduser = step_context.context.activity.from_property.id genres_user = [] user_with_info = DatabaseManager.find_user_info(iduser) genres_user = user_with_info.categories index = random.randint(0, len(genres_user) - 1) category = genres_user[index] code = cat_and_code[category.name] books = SuggestBooksDialog.call_amazon(code) card = SuggestBooksDialog.create_card(books, category.name) step_context.values["books"] = books dic[iduser] = books await step_context.context.send_activity(card) message_text = "Vuoi aggiungere un libro alla tua wishlist?" prompt_message = MessageFactory.text(message_text, message_text, InputHints.expecting_input) return await step_context.prompt( ConfirmPrompt.__name__, PromptOptions(prompt=prompt_message, retry_prompt=MessageFactory.text( '''Vuoi aggiungere un libro alla tua wishlist? Scrivi yes o no''')))
async def first_step( self, step_context: WaterfallStepContext) -> DialogTurnResult: iduser = step_context.context.activity.from_property.id user = DatabaseManager.find_user_info(iduser) step_context.values["user"] = user dic[iduser] = user.wishlist card, flag = self.create_wishlist_card(user.wishlist) await step_context.context.send_activity(card) if flag: message_text = "Puoi cancellare un libro dalla tua wishlist oppure tornare al menu principale. Cosa desideri fare?" prompt_message = MessageFactory.text(message_text, message_text, InputHints.expecting_input) return await step_context.prompt( TextPrompt.__name__, PromptOptions(prompt=prompt_message)) return await step_context.end_dialog()