Справочный центр Wialon

update_schedule

Чтобы создать, изменить или удалить расписание, используйте метод route/update_schedule:

Copied!
svc=route/update_schedule
params={
  "itemId": <long>,
  "id": <long>,
  "callMode": <text>,
  "n": <text>,
  "f": <uint>,
  "tz": <uint>,
  "u": <long>,
  "tm": [
    {
      "at": <uint>,
      "ad": <uint>,
      "dt": <uint>,
      "dd": <uint>
    }
  ],
  "sch": {
    "f1": <uint>,
    "f2": <uint>,
    "t1": <uint>,
    "t2": <uint>,
    "m": <uint>,
    "y": <uint>,
    "w": <uint>
  },
  "cfg": {
    "name": <text>,
    "units": [<long>],
    "enabled": <byte>,
    "roundFlags": <uint>,
    "autoName": <byte>,
    "validityPeriod": <uint>
  }
}

Параметры

Запрос должен содержать следующие параметры:

Параметр Описание
itemId ID маршрута.
id ID расписания.
callMode Действие: create, update, delete.

Остальные параметры требуются только при создании и редактировании. Их описание см. на странице get_round_data.

Значения параметров f1, t1, f2, t2 должны быть меньше или равны 0xFFFF.

Ответ

Если запрос выполнен успешно, формат ответа зависит от действия, указанного в параметре callMode.

Ответ на запрос создания или обновления расписания возвращается в следующем формате:

Copied!
[
  <long>,  // ID расписания
  {
    "id": <long>,         // ID расписания.
    "n": <text>,          // Название.
    "f": <uint>,          // Тип расписания (см. ниже).
    "tz": <uint>,         // Часовой пояс.
    "cfg": {              // Пользовательская конфигурация (пример).
      "autoName": <byte>,     // Использовать автоматически сформированное название: 1 — да, 0 — нет.
      "enabled": <byte>,      // Создавать рейсы автоматически: 1 — да, 0 — нет.
      "name": <text>,         // Название рейса.
      "description":<text>,   // Описание.
      "roundFlags": <uint>,   // Флаги рейса.
      "units": [<long>],      // Массив ID объектов.
      "validityPeriod": <uint> // Период действия.
    },
    "tm": [               // Время прохождения контрольных точек.
      {
        "at": <uint>,     // Время прибытия.
        "ad": <uint>,     // Отклонение от времени прибытия.
        "dt": <uint>,     // Время отбытия
        "dd": <uint>      // Отклонение от времени отбытия.
      }
    ],
    "sch": {             // Временные ограничения.
      "f1": <uint>,      // Начало интервала 1.
      "f2": <uint>,      // Начало интервала 2.
      "t1": <uint>,      // Конец интервала 1.
      "t2": <uint>,      // Конец интервала 2.
      "m": <uint>,       // Маска дней месяца.
      "y": <uint>,       // Маска месяцев.
      "w": <uint>        // Маска дней недели.
    }
  }
]

Типы расписаний

Флаг Описание
0x1 Относительно активации.
0x2 Относительно суток.
0x4 Абсолютное.

Ответ на запрос удаления расписания возвращается в следующем формате:

Copied!
[
  <long>,  // ID расписания.
  null
]

Если запрос не выполнен, возвращается код ошибки.

Коды ошибок

Код ошибки Описание
4 Неверные входные параметры (включая неверный callMode, отсутствие обязательных параметров или неверное время расписания).
6 Не удалось найти созданное расписание либо ошибка обновления или удаления расписания.
7 Внутренняя ошибка или отсутствует право доступа Редактирование свойств маршрута на маршрут.

Если вы заметили ошибку в тексте, пожалуйста, выделите её и нажмите Ctrl+Enter.