IBM Watson Assistant: условие для проверки, если дата ввода больше или меньше, чем 18 лет

#ibm-cloud #ibm-watson #watson-assistant

#ibm-cloud #ibm-watson #watson-помощник

Вопрос:

Вот что происходит:

Пользователю предлагается ввести дату своего рождения, обозначенную переменной [ $ date_bird ], которая будет извлечена из диалогового окна с помощью [ input.text ] .

Мне нужно убедиться, что введенной пользователем дате не больше или меньше 18 лет.

Комментарии:

1. Привет, @Alfred Koen, добро пожаловать в SO. Можете ли вы предоставить код, который вы пытались достичь этого, чтобы мы могли вам помочь?

Ответ №1:

Взгляните на выражения, поддерживаемые IBM Watson Assistant для вычисления даты и времени.

Возьмите дату рождения, добавьте 18 лет и проверьте, до или после сейчас.

Вы можете использовать выражения в условии на узле. Тем не менее, я бы, вероятно, оценил условие отдельно и установил новую контекстную переменную, которая указывает true / false на «старше 18».

В следующем примере я использовал это выражение для определения возраста:

 @sys-date.plusYears(18)<= today()
  

Мое намерение теста отвечает достаточно старым или слишком молодым, в зависимости от даты рождения.
введите описание изображения здесь

Комментарии:

1. Спасибо за ответ. Я прочитал руководство, на которое вы ссылаетесь. Тем не менее, помощника просят проверить 18-летний фактор в качестве условия для продолжения работы, и только после обнаружения меньшего возраста по отношению к вышеупомянутому, он должен уведомить пользователя. Я не могу создать условие также из-за входной переменной, которую я настроил. Спасибо за вашу помощь

2. Вы можете применить эти упомянутые функции в условии.

3. Я не понимаю. @ sys-дата Функция условия MinusYears (18) возвращает только дату 18-летней давности. Когда я использую это как условие, оно не работает.

4. Я не понял синтаксис, как описано на странице, куда вы меня направили. Большое спасибо !

5. Большое спасибо, я не понял грамматику синтаксиса