Ротации
Разбор формы ротации — период смены и счёт по активному времени, участники, ограничение активных часов (Restrict active hours).
Rotation (ротация) — основа дежурства: она задаёт, кто из участников дежурит и как дежурство переходит от одного к другому. Расписание может содержать несколько ротаций, и тогда они работают параллельно — см. Обзор.
Ротации настраиваются на детальной странице расписания. Кнопка Add Rotation
открывает форму новой ротации, Edit Rotation — правку существующей. Управлять
ими может org_admin, org_owner или team_admin команды.
Правка окон активных часов, поля Rotate every, участников или Start Date у уже существующей ротации пересчитывает её от якоря (Start Date): тот, кто дежурит прямо сейчас, может смениться. Это ожидаемо — очередь заново отсчитывается от точки отсчёта.
Как работает ротация
Участники ротации упорядочены, и дежурство переходит между ними по кругу, по порядку: отдежурил первый — заступает второй, за последним снова идёт первый. Насколько долго длится одна смена и с какого момента идёт отсчёт, задают поля формы.
Смена измеряется в активном времени. Если у ротации задано ограничение активных часов, время вне окна дежурства очередь не двигает: часы и дни, когда дежурства нет, не «сжигают» смену. Скажем, при смене «каждые 3 дня» и окне только по будням один дежурный держит эстафету три рабочих дня подряд, а выходные между ними просто пропускаются — как будто в счёте их нет. Без ограничения активных часов ротация активна круглосуточно, и смена идёт непрерывно по календарю.
В каждый момент активная ротация даёт одного дежурного — текущего в круге. Если на ротации включено ограничение активных часов и сейчас вы вне окна, ротация «молчит»: дежурного из неё в этот момент нет (его может дать другая параллельная ротация или оверрайд).
Форма ротации
Задайте Name
Name — имя ротации (например, «Weekly primary»).
Задайте Start Date и End Date
Start Date — якорь ротации: момент, от которого система отсчитывает
границы смен и определяет, чья сейчас очередь. По умолчанию — полночь текущего дня
в вашем поясе отображения. Час суток у якоря задаёт и час пересменки: хотите, чтобы
дежурство переходило в 09:00, — поставьте в Start Date время 09:00.
End Date (optional) — необязательная дата окончания: оставьте пустым, чтобы ротация действовала бессрочно, или задайте, чтобы она перестала давать дежурного после этого момента.
Настройте Rotation cadence
Блок Rotation cadence отвечает «кто и как часто». Поле Rotate every задаёт
длину смены: число плюс единица — days (дни), weeks (недели) или hours
(часы). Например, Rotate every 2 weeks — каждый участник дежурит две
недели подряд, затем эстафета идёт дальше; 1 days — посуточная смена.
Если включено ограничение активных часов, длина считается в активном времени (см. Как работает ротация) — под полем формы об этом напоминает подсказка.
Добавьте Participants
Секция Participants задаёт круг дежурных. Кнопка Add participant добавляет участника одного из двух видов:
- User — конкретный человек.
- Team — команда; в круг дежурства разворачиваются все её текущие члены. Если состав команды меняется, меняется и круг — без правки ротации.
Порядок участников и есть порядок дежурства по кругу — его можно менять.
Участник ротации обязан быть членом той команды, которой принадлежит расписание. Добавить в ротацию человека не из команды система не даст. Сначала введите его в команду — затем он станет доступен для выбора в Participants. Если участник — Team, это может быть только та же команда, которой принадлежит расписание; другую команду организации добавить нельзя.
При необходимости включите Restrict active hours
По умолчанию ротация активна круглосуточно. Переключатель Restrict active hours ограничивает её определённым временем — «дежурю только в эти часы». Разбор редактора — в разделе Ограничение активных часов ниже.
Для почасовой ротации (Rotate every … hours) ограничение активных часов недоступно — у почасовой смены окно вырождается; переключатель в этом случае неактивен.
Ограничение активных часов (Restrict active hours)
Когда Restrict active hours включён, ротация даёт дежурного только внутри заданного окна. Вне окна она молчит — дежурного из неё нет, как будто на это время её и не было.
Одно окно — это целая смена: оно достаётся тому, кто дежурит в день его начала, и
никогда не делится между дежурными. Ночное окно 22:00–06:00 целиком остаётся за
дежурным того дня, когда оно началось, — на полночь дежурный не меняется.
Редактор активных часов работает в двух режимах.
Простой режим
По умолчанию открыт простой режим — «те же часы в выбранные дни недели»:
- Days — дни недели, когда действует дежурство. Отмечайте флажки вручную или пресетами Weekdays (будни) и All (все семь дней).
- From / To — единое окно по времени для всех выбранных дней. Окно может
переходить через полночь: если From позже To, это ночное окно, например
22:00–06:00.
Этого режима хватает для большинства расписаний: «будни 09:00–18:00», «каждый день ночью 22:00–06:00» и подобного.
Расширенный режим
Ссылка Advanced (custom windows) переключает в расширенный режим — набор окон,
заданных вручную как непрерывные интервалы «от дня-и-времени до дня-и-времени». Каждое
окно описывают поля Start day / From и End day / To — например, одно
сплошное дежурство с понедельника 09:00 до пятницы 18:00. Кнопка Add time
window добавляет ещё окно, ссылка Back to simple editor возвращает в простой
режим.
Окна одной ротации не должны пересекаться между собой; стык, где одно кончается ровно там, где начинается следующее, допустим. Пересечение окон система при сохранении не примет.
Время в окнах вы вводите в своём поясе отображения (организации или пользователя), а система хранит его в UTC. Активный пояс подписан рядом с полями ввода. Это та же модель времени, что и в Time window у Политик.
Ограничение активных часов действует только на ротацию. Оверрайд его игнорирует и покрывает весь свой период целиком — см. Оверрайды.