calc_sensors
Чтобы получить значения датчиков, используйте метод unit/calc_sensors.
svc=unit/calc_sensors¶ms={"source":<text>,
"indexFrom":<uint>,
"indexTo":<uint>,
"unitId":<long>,
"sensorId":<long>,
"width":<uint>}
Параметры
| Параметр | Описание |
|---|---|
source |
Источник сообщений (имя слоя). Если параметр пуст, по умолчанию используется загрузчик сообщений. |
indexFrom |
Индекс первого сообщения. |
indexTo |
Индекс последнего сообщения. |
unitId |
ID объекта. |
sensorId |
ID датчика. Если указано 0, возвращаются значения всех датчиков. |
width |
Количество возвращаемых элементов. Необязательный параметр. Параметр используется, когда нужно получить фиксированное количество агрегированных (то есть предварительно обработанных) значений датчика. Это особенно удобно для построения и масштабирования графиков с предварительно обработанными данными. Обработка выполняется следующим образом:
|
Параметр
unitIdобязателен, даже еслиsourceпуст. По нему сервер проверяет права доступа к объекту и получает датчики объекта. Еслиsourceпуст, сообщения берутся из загрузчика сообщений, поэтому укажите ID объекта, сообщения которого загружены.
Ответ
Если запрос без параметра width выполнен успешно, возвращается ответ в следующем формате:
[ /* массив данных сообщений */
{ /* значения датчиков из одного сообщения */
<text>:<double|text>, /* ID датчика: значение датчика */
...
}
]
Если значение датчика не удается рассчитать для сообщения (например, сообщение не содержит параметр, используемый датчиком), для этого датчика возвращается -348201.3876.
Если указан параметр width, возвращается ответ в следующем формате. Каждый датчик возвращается в отдельном массиве:
[
[
{
"name": <text>, /* ID датчика */
"data": [
{
"left": [<unix_time1>, <value1>], /* Первое зарегистрированное значение датчика в подынтервале и его время */
"right": [<unix_time2>, <value2>], /* Последнее зарегистрированное значение датчика в подынтервале и его время */
"bottom": [<unix_time3>, <value3>], /* Минимальное значение датчика в подынтервале и его время */
"top": [<unix_time4>, <value4>] /* Максимальное значение датчика в подынтервале и его время */
},
...
]
}
],
...
]
Если запрос не выполнен, возвращается код ошибки.
Коды ошибок
| Код ошибки | Описание |
|---|---|
| 4 | Одна из следующих ошибок:
|
| 7 | Объект не существует, или у пользователя нет права доступа Просмотр элемента и его основных свойств на него. |