---
metadata:
  - name: generator
    content: Diplodoc Platform v5.39.1
alternate:
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/en/v2-1/ref/reference/traffic.provider.Archive.md
  - https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/llms.txt

# traffic.provider.Archive

Расширяет [ITrafficProvider](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ITrafficProvider.md).

Провайдер архива пробок. Позволяет показывать состояние пробок, типичное для данного региона в конкретный день недели и конкретное время суток.

[Конструктор](#constructor-summary) | [Поля ](#properties-summary) | [События ](#events-summary) | [Методы ](#methods-summary)

## Конструктор {#constructor-summary}

```javascript
traffic.provider.Archive([options[, state]])
```

Создает экземпляр провайдера архива пробок.

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание**  ||
|| [`options`](#param-options) | — | Тип: Object

Опции провайдера. Опции для слоев провайдера задаются через опции глобальной коллекции слоев [Map.layers](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Map.md#layers).
- Опции для картиночного слоя [Layer](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Layer.md) задаются с префиксом 'trafficImage';
- Опции для картиночного слоя [hotspot.Layer](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/hotspot.Layer.md) задаются с префиксом 'trafficJam'; ||
|| [`options.showCurrentTimeFirst`](#param-options.showCurrentTimeFirst) | true | Тип: Boolean

При первом показе архивных данных выставить время, близкое к текущему. ||
|| [`state`](#param-state) | — | Тип: Object

Состояние провайдера. ||
|| [`state.timestamp`](#param-state.timestamp) | — | Тип: Number

Время, для которого показываются пробки "обычно". Это время, прошедшее с 00:00 понедельника до требуемого времени в секундах. Должно быть кратно 60 * 15 = 900, так как данные на сервере доступны для моментов времени с разницей в 15 минут. Время задается для нулевого часового пояса (UTC+0). ||
|#


**Пример:**

```javascript
// Создадим провайдер пробок "обычно" и зададим ему timestamp для 17:47 среды
// в нулевом часовом поясе. // Обратите внимание, что местное время будет зависеть
// от расположения центра карты.
// К примеру, 17:47 в нулевом часовом поясе будет соответствовать 21:47 в Москве.

// Вычислим значение параметра timestamp для требуемого времени.
var timestamp = 2 * 24 * 60 * 60 + // дважды по 24 часа — это время за понедельник и вторник.
        17 * 60 * 60 + // 17 часов прошло с 00:00 среды.
        45 * 60, // поскольку время должно быть кратно 15 минутам, берем не 47 минут, а 45.
    archiveProvider = new ymaps.traffic.provider.Archive({
        // Запретим при первом открытии выставлять время, близкое к текущему.
        showCurrentTimeFirst: false
    }, {
         // Зададим начальное время самостоятельно.
        timestamp: timestamp
    });
archiveProvider.setMap(map);

 // Запретим показ всплывающих подсказок для слоя пробок.
myMap.layers.options.set({
     // Название опции сформировано из опции слоя активных областей
   // 'openHintOnHover' путем добавления префикса 'trafficJam'.
    trafficJamOpenHintOnHover: false
});

// ...
// Удаляем провайдера с карты.
archiveProvider.setMap(null);
```

## Поля {#properties-summary}

#|
|| **Имя** | **Тип** | **Описание** ||
||  [events](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events) | [IEventManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventManager.md) | Менеджер событий.

Унаследовано от [IEventEmitter](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IEventEmitter.md#events). ||
|| [options](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options) | [IOptionManager](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/IOptionManager.md) | Менеджер опций.

Унаследовано от [ICustomizable](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#options). ||
|| [state](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#state) | [data.Manager](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/data.Manager.md) | Состояние провайдера. Имена полей, доступных через метод data.Manager.get:
- isInited - признак, готов ли провайдер предоставлять данные;
- timeZone - смещение по времени для текущего временного пояса относительно UTC+0. Измеряется в секундах.;
- dst - признак перехода на зимнее/летнее время. При dst='dst' время летнее;
- timestamp - текущее время во временной зоне UTC+0 в секундах;
- localtime - локальное время, которое возвращает в ответе сервер;
- level - уровень загруженности дорог в баллах - от 0 до 10. ||
|#

## События {#events-summary}

#|
|| **Имя** | **Описание** ||
|| [optionschange](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange) | Изменение в опциях объекта.

Унаследовано от [ICustomizable](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ICustomizable.md#event-optionschange). ||
|#

## Методы {#methods-summary}

#|
|| **Имя** | **Возвращает** | **Описание** ||
|| [getMap](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ITrafficProvider.md#getMap)() | [Map](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/Map.md)\|null | Возвращает ссылку на карту.

Унаследован от [ITrafficProvider](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ITrafficProvider.md#getMap). ||
|| [getTime](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#getTime)() | Object\|null | Возвращает день недели, часы и минуты состояния провайдера с учетом часового пояса и перехода на зимнее/летнее время. То есть то время, которое пользователь видит в элементе управления пробками. ||
|| [setMap](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ITrafficProvider.md#setMap)([Reference](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/ITrafficProvider.md#setMap-param-Reference)) | | ||
|| [setTime](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#setTime)([time](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#setTime-param-time)[, [callback](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#setTime-param-callback)]) | | Позволяет задавать время для архивного провайдера в минутах, часах и днях недели. Выставляет локальное время только после того, как провайдер инициализирует поля timeZone и dst.
- timeZone - поле, которое показывает, в каком часовом поясе на данный момент находится центр карты. При перемещении центра карты из одного часового пояса в другой локальное время может изменяться.
- dst - признак перехода на летнее/зимнее время. При dst='dst' время летнее.
Постоянной составляющей времени для провайдера пробок "обычно" служит поле timestamp, которое отражает текущее время в нулевом часовом поясе (UTC+0). При переходе из одного часового пояса в другой timestamp не изменяется. Значения полей "timestamp", "dst" и "timeZone" можно получить через поле [traffic.provider.Archive.state](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#state). ||
|#

## Описание полей {#field_detail}

### state {#state}

```javascript
{data.Manager} state
```

Состояние провайдера. Имена полей, доступных через метод data.Manager.get:
- isInited - признак, готов ли провайдер предоставлять данные;
- timeZone - смещение по времени для текущего временного пояса относительно UTC+0. Измеряется в секундах.;
- dst - признак перехода на зимнее/летнее время. При dst='dst' время летнее;
- timestamp - текущее время во временной зоне UTC+0 в секундах;
- localtime - локальное время, которое возвращает в ответе сервер;
- level - уровень загруженности дорог в баллах - от 0 до 10.

**Пример:**

```javascript
var archiveProvider = new ymaps.traffic.provider.Archive();
archiveProvider.setMap(myMap);
archiveProvider.state.events.add('change', function () {
    if (archiveProvider.state.get('isInited')) {
        alert('Provider is ready to provide data.');    }});
```

## Описание методов {#method_detail}

### getTime {#getTime}

```javascript
{Object|null} getTime()
```

Возвращает день недели, часы и минуты состояния провайдера с учетом часового пояса и перехода на зимнее/летнее время. То есть то время, которое пользователь видит в элементе управления пробками.

**Возвращает** объект с полями:
- dayOfWeek — сокращенное название дня недели ('mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun');
- hours — часы;
- minutes - минуты.
Если центр карты находится в точке, для которой не удается опеределить часовой пояс, функция возвращает null - если мы не знаем, в каком часовом поясе находимся, мы не можем узнать местное время.

### setTime {#setTime}

```javascript
{} setTime(time[, callback])
```

Позволяет задавать время для архивного провайдера в минутах, часах и днях недели. Выставляет локальное время только после того, как провайдер инициализирует поля timeZone и dst.
- timeZone - поле, которое показывает, в каком часовом поясе на данный момент находится центр карты. При перемещении центра карты из одного часового пояса в другой локальное время может изменяться.
- dst - признак перехода на летнее/зимнее время. При dst='dst' время летнее.
Постоянной составляющей времени для провайдера пробок "обычно" служит поле timestamp, которое отражает текущее время в нулевом часовом поясе (UTC+0). При переходе из одного часового пояса в другой timestamp не изменяется. Значения полей "timestamp", "dst" и "timeZone" можно получить через поле [traffic.provider.Archive.state](https://yandex.com.tr/dev/jsapi-v2-1/doc/ru/v2-1/ref/reference/traffic.provider.Archive.md#state).

**Параметры:**

#|
|| **Параметр** | **Значение по умолчанию** | **Описание**  ||
|| [`time`](#setTime-param-time)[*](*star) | — | Тип: Object

Объект с задаваемыми параметрами. ||
|| [`time.dayOfWeek`](#setTime-param-time.dayOfWeek) | — | Тип: String

Сокращенное название дня недели: 'mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'. ||
|| [`time.hours`](#setTime-param-time.hours) | — | Тип: Number

Часы. ||
|| [`time.minutes`](#setTime-param-time.minutes) | — | Тип: Number

Минуты. ||
|| [`callback`](#setTime-param-callback) | — | Тип: Function

Функция, которая вызывается после того, как было выставлено время. Принимает на вход хэш с выставленными данными. ||
|#

\* Обязательный параметр/опция.

**Пример:**

```javascript
// Создадим элемент управления, который сразу показывает на карте
// провайдер пробок "обычно".
var trafficControl = new ymaps.control.TrafficControl({
        shown: true,
        providerKey: 'traffic#archive'
    });
map.controls.add(trafficControl);
// Как только провайдер получит данные о текущей временной зоне,
// будет выставлено локальное время.
trafficControl.getProvider('traffic#archive').setTime({
    dayOfWeek: 'fri',
    hours: 9,
    minutes: 15
}, function (time) {
    alert('Локальное время ' + time.hours + ':' + time.minutes + ' set!');});
```

<!-- XLIFF_FARM_NTYwYzY2_CACHING -->

[*star]: Обязательный параметр.