Beispiel #1
0
 def validate_time(
     self,
     value: Text,
     dispatcher: CollectingDispatcher,
     tracker: Tracker,
     domain: Dict[Text, Any],
 ) -> Dict[Text, Any]:
     """Validate time value."""
     timeentity = get_entity_details(tracker, "time")
     parsedinterval = parse_duckling_time_as_interval(timeentity)
     if not parsedinterval:
         dispatcher.utter_message(template="utter_no_transactdate")
         return {"time": None}
     return parsedinterval
Beispiel #2
0
 def validate_time_period(
     self,
     value: Text,
     dispatcher: CollectingDispatcher,
     tracker: Tracker,
     domain: Dict[Text, Any],
 ) -> Dict[Text, Any]:
     """Validate time value."""
     time_entity = get_entity_details(tracker, EntitySlotEnum.TIME)
     parsed_interval = parse_duckling_time_as_interval(time_entity)
     if not parsed_interval:
         dispatcher.utter_message(template=UtteranceEnum.INVALID)
         return {EntitySlotEnum.TIME_PERIOD: None}
     # Returns { EntitySlotEnum.START_TIME, EntitySlotEnum.END_TIME, EntitySlotEnum.GRAIN }
     return parsed_interval