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
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