Какое выражение я могу использовать в Watson Assistant для открытия часов в определенные даты? - PullRequest
1 голос
/ 23 сентября 2019

У меня бот Watson, я пытаюсь запрограммировать резервирование таблиц.Я хотел бы знать выражение, которое я мог бы использовать для реализации своего времени открытия.

Например, ресторан имеет следующие часы:

с понедельника по пятницу с 11:30 до 22:30, последнийбронирование может 9:30 вечера.Суббота-воскресенье с 17:00 до 22:30

1006 * Я не хочу, чтобы Ватсон бронировал билеты в другое время.Как код я реализую это в слотах?

Ответы [ 2 ]

1 голос
/ 25 сентября 2019

Вы можете использовать методы языка выражения для оценки ввода.

Например, условие для проверки правильности резервирования на будний день может быть:

@sys-date.reformatDateTime('u')<6 AND @sys-time.before('21:30:01') AND @sys-time.after('11:29:59')

Я бы не советовал делать проверку в слотах.Проще было бы сделать проверку после заполнения слота.Если это не действительное бронирование, вы можете предложить клиенту просто повторить попытку.

0 голосов
/ 23 сентября 2019

Не думаю, что в Watson Assistant есть способ сделать это напрямую.Вы можете выполнить условную оценку (проверьте, является ли число большим или меньшим другого числа), но ваши потребности немного сложнее (с учетом времени и даже дат).

Я бы предложил обработатьВаш процесс подтверждения бронирования внешне с помощью функции webhook.Соберите дату и время бронирования, а затем отправьте их на свой веб-крючок в качестве параметров.Затем веб-крючок может ответить с подтверждением, что резервирование в порядке, или он может отклонить его (и указать причину).Когда ваш диалоговый узел, который вызывает webhook, получает ответ, если он видит отклонение на основе часов работы, он может проинформировать пользователя о том, что ему нужно выбрать время, когда ресторан открыт, напомнить им о часах, а затем вернуться назад.на узел, который собирает информацию о бронировании.

...