load_interval
Чтобы загрузить сообщения за определенный интервал в загрузчик сообщений, используйте метод messages/load_interval.
Конечная точка
svc=messages/load_interval¶ms={
"itemId": <long>,
"timeFrom": <uint>,
"timeTo": <uint>,
"flags": <uint>,
"flagsMask": <uint>,
"loadCount": <uint>,
"calcSensors": <uint>,
"measure": <uint>,
"sensorId": <long>,
"filter": "<text>"
}
Метод относится к ресурсоемким запросам, поэтому на него распространяется ограничение на количество одновременно обрабатываемых ресурсоемких запросов в одной сессии. При превышении ограничения возвращается ошибка 1003 с причиной
LIMIT api_concurrent. Список ресурсоемких запросов см. в разделе Ограничения.Пример использования этого запроса приведен на странице Примеры запросов сообщений.
Параметры
Обязательные параметры отмечены звездочкой (*).
| Параметр | Описание |
|---|---|
itemId* |
ID объекта или ресурса (зависит от типа сообщений, которые нужно получить). |
timeFrom* |
Начало интервала. |
timeTo* |
Конец интервала. Если timeFrom больше timeTo, сообщения не возвращаются, а count равен 0. |
flags* |
Флаги для загрузки сообщений. См. описание ниже. |
flagsMask* |
Маска. См. описание ниже. |
loadCount* |
Количество сообщений, которые необходимо вернуть, начиная с начала интервала (то есть сначала возвращаются самые старые сообщения). 0xffffffff — все найденные. Если указан 0, массив messages пуст. |
calcSensors |
Расчет значений датчиков. Если параметр задан любым значением, кроме 0, каждое сообщение в возвращаемом результате содержит объект sensors со значениями датчиков объекта. Ключи этого объекта — ID датчиков. В Wialon Local этот параметр доступен начиная с версии 2604. |
measure |
Система измерения для значений датчиков: 0: метрическая (СИ), 1: американская, 2: имперская, 3: метрическая с галлонами. Используется только вместе с calcSensors. Если параметр не указан, используется значение, заданное для текущей сессии (два младших бита параметра flags метода render/set_locale). В Wialon Local этот параметр доступен начиная с версии 2604. |
sensorId |
ID датчика. Используется только вместе с calcSensors. Если указан, объект sensors содержит значение только этого датчика. Если параметр не указан или равен 0, рассчитываются значения всех датчиков. В Wialon Local этот параметр доступен начиная с версии 2604. |
filter |
Фильтр параметров pos и p сообщений: список масок через запятую, например pos.x,p.pre*. Возвращаются только подходящие параметры. Подробнее см. messages/get_messages. |
Примеры использования масок и флагов сообщений
| Маска | Флаг | Результат |
|---|---|---|
0xFF00 |
0x0000 | Все сообщения с данными. |
0xFF10 |
0x0010 | Сообщения с данными, в которых содержится бит тревожного сообщения (0x10). |
0xFFF0 |
0x0010 | Сообщения с данными, в которых содержится бит тревожного сообщения (0x10), но не содержится информации о коде водителя (0x20). |
0xFFF2 |
0x0022 | Сообщения с данными, в которых содержится информация о коде водителя (0x20) и о входящих данных (0x02), но нет бита тревожного сообщения (0x10). |
0xFF01 |
0x0601 | События, которые являются нарушениями. |
0xFF00 |
0x4000 | Сообщения о сработавших уведомлениях. |
0xFF00 |
0x5000 | Задачи. Подробнее см. в разделе Задача. |
Ответ
Если запрос выполнен успешно, возвращается следующий ответ:
{
"count": <uint>, /* количество сообщений, найденных за интервал; не зависит от loadCount */
"messages": [ /* массив сообщений */
{
...
}
]
}
Форматы сообщений, маски и флаги описаны на странице Сообщения.
При неудачном выполнении возвращается код ошибки.
Коды ошибок
| Код ошибки | Описание |
|---|---|
| 4 | Неверные входные параметры: не указан обязательный параметр или у него неверный тип (например, отрицательный timeFrom). |
| 6 | Внутренняя ошибка: не удалось получить сообщения за интервал или данные сессии, необходимые для их форматирования. |
| 7 | Элемент не существует или не хранит сообщения, либо у пользователя нет права Запрос сообщений и отчетов на него. |
| 1003 | Заголовок запроса Accept-Encoding не содержит gzip. |
| 1004 | Достигнут лимит загруженных сообщений (LIMIT msgs_count). См. Коды ошибок. В Wialon Local эта ошибка возвращается начиная с версии 2604. |