diff --git a/dialog_model.py b/dialog_model.py index 0d5b6f1..94a8623 100644 --- a/dialog_model.py +++ b/dialog_model.py @@ -150,10 +150,17 @@ class DP(): # zaoferuj cale menu elif self.state['user_action'][-1] == 'ack': - system_action = 'bye' - self.state['terminated'] = True - # potwierdz i zakoncz, podsumuj zamowienie + address = self.state["belief_state"]["address"] + payment_method = self.state["belief_state"]["payment_method"] + dish = self.state["belief_state"]["dish"] + # W przypadku braku szczegolnej informacji o czasie zamówienia zamawiamy natychmiast + if address and payment_method and dish: + system_action = 'bye' + self.state['terminated'] = True + # potwierdz i zakoncz, podsumuj zamowienie + else: + system_action = 'canthelp.missing_slot_value' elif self.state['user_action'][-1] == 'restart': system_action = 'welcomemsg' # zachowaj sie jak na poczatku rozmowy @@ -214,6 +221,11 @@ if __name__ == "__main__": response = model("uniwersytetu poznanskiego 4 61-614 poznan") assert response == "inform" + # jezeli sprobuje dokonac zamowienia bez podania potrzebnych informacji prosimy o nie + #response = model("Dobrze, nie mogę się już doczekać.") + response = model("Super, to zatem wszystko!") + assert response == "canthelp.missing_slot_value" + # jezeli wybierze rodzaj platnosci to zapisz wybor i poinformuj o nim # response = model("karta") # response = model("Poproszę blikiem z góry") @@ -230,7 +242,7 @@ if __name__ == "__main__": response = model("Dobrze, nie mogę się już doczekać.") assert response == "bye" - print("----Testowanie restartu-------") + print("----Konwersacja z restartem-------") model = Model() response = model("Siema, w czym możesz mi pomóc?")