Все прекрасно знают, что с помощью Календаря мы можем настроить рабочий график офиса и добавить проверку в маршрутизации на рабочий\не рабочий день. Но, бывают ситуации, когда этого не достаточно. Мы хотим настроить разделение на рабочие, не рабочие и праздничные дни. Поскольку календарь умеет возвращать только истина либо ложь в отношение рабочего графика, то раньше для решения данной задачи приходилось создавать 2 календаря - в одном проверяем на праздники, а во втором - на рабочие. С релизом 3.10 нам достаточно 1 календарь :allthethings:
Как это работает? Появился новый параметр extended, который отключен, по умолчанию, для сохранения совместимости со старыми схемами. Проверяем календарь включенным параметром:
{ "calendar": { "name": "my Business Calendar", "extended": true, "setVar": "isWorkDay" } }
Теперь переменная isWorkDay может принимать следующие значения:
- true - сейчас рабочий день
- false - не рабочий день
- holiday - праздничный день
- ahead - календарь еще не стартовал
- expire - календарь уже завершился
Надеюсь, что такое изменение поможет эффективней создавать ваши схемы маршрутизации.