Информация о датчиках и аппаратных ресурсах модуля (всех или конкретных) за указанный временной интервал (например, за конкретный день).
Интервал времени задается параметрами FROM и TO. Выбор типа аппаратного ресурса / датчика (все или конкретный, например, реле)
определяется опциональным параметром SNS. Номер датчика определяется опциональным параметром SID.
https://kecloud.ru/api.php?key=KEY&act=data[&psw=PASS]
[&from=FROM][&to=TO][&sns=SNS][&sid=SID]
Параметры запроса:
from |
- |
Необязательный параметр. Метка времени (UTC) начиная с которой необходимо найти / выдать данные о
датчиках модуля.
Метка времени может быть представлена в виде UNIX метки времени в секундах или в формате YYYYMMDDhhmmss
(где YYYY - год, MM - месяц [1-12], DD - день месяца [1-31], hh - час [0-23], mm - минута [0-59], ss - секунда [0-59]).
Например, можно использовать как запись from=1677340807 так и from=20230225160007
(в обоих случаях, Облако начнет поиск показаний датчиков в хранилище начиная с 25-го февраля 2023, 16:00:07 UTC)
Если оба параметра FROM и TO (см. ниже) не заданы в запросе - будут выданы данные полученные
во время последнего сеанса связи модуля с Облаком (самые "свежие" данные).
|
|
|
|
to |
- |
необязательный параметр. Метка времени (UTC) на которой нужно закончить
поиск / выдачу показаний датчиков модуля. Формат аналогичен таковому параметра FROM. Если параметр TO не указан - используется текущее время сервера (UTC).
Если оба параметра TO и FROM (см. выше) не заданы в запросе - будут выданы данные полученные
во время последнего сеанса связи модуля с Облаком (самые "свежие" данные).
|
|
|
|
sns |
- |
опциональный параметр. Имя аппаратного ресурса / датчика модуля. Если параметр SNS не указан -
по умолчанию выдаются все показания / все датчики модуля. Например, SNS=rele приведет к выдаче данных только по состоянию реле модуля.
Возможные варианты см. Значения SNS ниже
|
|
|
|
sid |
- |
опциональный параметр. Номер датчика / аппаратного ресурса модуля. Например, если SNS=rele а SID=2 то в ответе
будет предоставлено состояние только 2-го реле модуля (RELE_2). В случае если SNS=owi_temp (показания датчиков температуры DS18B20) в
качестве значения SID можно указать ID датчика.
Если параметр SID не указан - по умолчанию выдаются данные по всем датчикам класса SNS. |
JSON ответ:
{
"response": {
"error": "ERR_CODE",
"type": "ACTION",
"from": "TIME_FROM",
"to": "TIME_TO",
"sns": "SNS",
"sid": "SID",
"utc": "1",
"time": "RESPONSE_TIME"
},
"data": [
{"t": "time1", "dd": "value1"},
{"t": "time2", "dd": "value2"},
....
{"t": "timeN", "dd": "valueN"}
]
}
Поля объекта response:
error |
- |
статус выполнения API запроса. 0 - запрос выполнен успешно. В противном случае - запрос не выполнен,
код ошибки равен ERR_CODE. См. Коды ошибок API |
type |
- |
тип действия (API команда). Копия соответствующего поля из запроса. |
from |
- |
UNIX метка времени (UTC) начиная с которой осуществляется поиск данных на сервере Облака.
Копия соответствующего поля FROM из запроса. Если параметр FROM и TO в запросе отсутствовали - выводится значение "0". |
to |
- |
UNIX метка времени (UTC) заканчивая на которой осуществляется поиск данных на сервере Облака.
Копия соответствующего поля TO из запроса. Если параметр TO в запросе отсутствовал (а FROM присутствовал) - выводится текущее время сервера Облака на момент запроса.
Если параметр TO и FROM в запросе отсутствовали - выводится значение "0". |
sns |
- |
Копия соответствующего поля из запроса. Если параметр SNS в запросе отсутствовал, выводится значение "all" (значение по умолчанию). |
sid |
- |
Копия соответствующего поля из запроса. Если параметр SID в запросе отсутствовал, выводится значение "-1". |
utc |
- |
"1" - Метки времени в объекте data ответа представлены в UTC |
time |
- |
UNIX метка времени
в секундах (UTC) на момент выполнения API запроса сервером Ke-Облака |
Поля объекта data:
t |
- |
UNIX метка времени (UTC) сервера которой соответствуют данные value.
Другими словами, ранее модуль совершил сеанс связи с Облаком в момент времени t и передал в Облако данные value.
Эти данные были сохранены в хранилище Облака и теперь возвращаются в составе ответа на API запрос как
подходящие по критерию входных параметров (TO, FROM, SNS, SID). |
dd |
- |
значение искомого параметра определяемого параметрами SNS и SID.
Может быть JSON объектом, строкой (зависит от модели модуля, значений SNS и SID). |
Значения параметра SNS:
Параметр SNS |
Для каких моделей Laurent применим * |
Описание |
all |
2, 112, 128, 5, 5G |
Значение по умолчанию (если параметр SNS явно не указан). Выдаются данные по всем датчикам и аппаратным ресурсам модуля. |
sys_time |
2, 112, 128, 5, 5G |
системное время модуля в секундах (время с момента старта модуля) |
rtc |
5, 5G |
дата и время RTC (часы реального времени) |
rele |
2, 112, 128, 5, 5G |
сводная строка состояния реле (0 - включено, 1- включено). Первый символ в строке - RELE_1, 2-ой символ - RELE_2 И т.д. |
in |
2, 5, 5G |
сводная строка состояния оптоизолированных входных линий IN (0 - нет сигнала на входе, 1- есть сигнал).
Первый символ в строке - линия IN_1, 2-ой символ - IN_2 И т.д. |
io_in |
5, 5G |
сводная строка состояния двунаправленных линий общего назначения IO настроенных "на вход"
(0 - нет сигнала на входе, 1- есть сигнал). |
io_out |
5, 5G |
сводная строка состояния двунаправленных линий общего назначения IO настроенных "на выход"
(0 - на выходе линии нет сигнала, 1 - есть сигнал). |
out |
2, 5, 5G |
сводная строка состония силовых выходных линий OUT |
adc |
2, 5, 5G |
массив показаний каналов АЦП (цифровой код 0-1023 / напряжение в Вольтах) |
owi_temp |
2, 5, 5G |
массив показаний датчиков 1-Wire DS18B20 (номер шины 1-Wire / ID датчика DS18B20 / температура Сo) |
pwm |
2, 5, 5G |
массив уровней каналов ШИМ |
dht_hum |
5, 5G |
показания влажности цифрового датчика типа DHT-11/DHT-22 |
dht_tmp |
5, 5G |
показания температуры цифрового датчика типа DHT-11/DHT-22 |
impl_in |
2, 5, 5G |
массив значений счетчиков импульсов совмещенных с входными оптоизолированными линиями IN |
impl_io |
5, 5G |
массив значений счетчиков импульсов совмещенных с линиями общего назначения IO настроенными на "вход" |
flm_in |
5, 5G |
массив значений измерителя физических величин совмещенных со входными оптоизолированными линиями IN |
flm_io |
5, 5G |
массив значений измерителя физических величин совмещенных с линиями общего назначения IO настроенными на "вход" |
acs |
5, 5G |
массив показаний датчиков тока |
ma420 |
5, 5G |
массив показаний датчиков "токовая петля" 4-20 мА |
uvars |
5, 5G |
массив значений пользовательских переменных |
* - указывает на то какие модели модулей Laurent KernelChip поддерживают тот или иное значение параметра SNS.
"2" - означает Laurent-2,
"128" - Laurent-128,
"5" - Laurent-5 и т.д.
Пример запроса 1:
Предположим, что ключ модуля равен vePRX4K1foD2kwd3m2GOBCLv03byddFM, API разрешен, API пароль доступа не установлен.
Необходимо получить информацию о состоянии реле модуля с 2023-02-10 00:00:00 по 2023-02-10 00:10:00 UTC.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210000000&to=20230210001000&sns=rele
Если API пароль задан и он, например, равен mypassword:
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210000000&to=20230210001000&sns=rele&psw=mypassword
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "1675987200",
"to": "1675987260",
"sns": "rele",
"sid": "0",
"utc": "1",
"time": "1678435006"
},
"data": [{
"t": "1675987238",
"dd": "1100"
}, {
"t": "1675987200",
"dd": "0000"
}, {
"t": "1675987203",
"dd": "0000"
}, {
"t": "1675987206",
"dd": "0000"
}, {
"t": "1675987209",
"dd": "0000"
}, {
"t": "1675987212",
"dd": "0000"
}, {
"t": "1675987215",
"dd": "0000"
}, {
"t": "1675987218",
"dd": "1111"
}]
}
В данном примере, ответ содержит 10 элементов в объекте slots.
На момент времени 1675987238 (UNIX метка времени) состояния реле модуля были: RELE_1 - ON, RELE_2 - ON, RELE_3 и RELE_4 - OFF.
На метку времени 1675987218 все реле были включены.
Пример запроса 2:
В продолжении запроса #1 (см. выше), выведем данные только по RELE_3. Для этого в запрос добавим параметр SID.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210000000&to=20230210001000&sns=rele&sid=3
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "1675987200",
"to": "1675987260",
"sns": "rele",
"sid": "3",
"utc": "1",
"time": "1678435142"
},
"data": [{
"t": "1675987238",
"dd": "0"
}, {
"t": "1675987200",
"dd": "0"
}, {
"t": "1675987203",
"dd": "0"
}, {
"t": "1675987206",
"dd": "0"
}, {
"t": "1675987209",
"dd": "0"
}, {
"t": "1675987212",
"dd": "0"
}, {
"t": "1675987215",
"dd": "0"
}, {
"t": "1675987218",
"dd": "1"
}]
}
Пример запроса 3:
Необходимо получить информацию о состоянии датчиков температуры DS18B20 модуля с 2023-02-10 14:29:00 по 2023-02-10 14:30:00 UTC.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210142900&to=20230210143000&sns=owi_temp
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "1676039340",
"to": "1676039400",
"sns": "owi_temp",
"sid": "0",
"utc": "1",
"time": "1678435430"
},
"data": [{
"t": "1676039374",
"dd": [
["A", "28543BBC050000AE", "50.63"],
["A", "28FF641E815C037A", "36.13"],
["A", "28FF641E814E64E1", "32.63"],
["A", "28FF641E817E2257", "30.81"]
]
}]
}
За указанный интервал времени, в хранилище сервера Ke-Облака была найден один набор данных переданных модулем в
момент времени 1676039374 UTC по шкале времени сервера (UNIX метка времени). В наборе присутствуют 4 датчика температуры DS18B20 на шине "A"
с ID = 28543BBC050000AE, 28FF641E815C037A, 28FF641E814E64E1 и 28FF641E817E2257.
Показания составляют соответственно: 50.63, 36.13, 32.63 и 30.81 Co.
Пример запроса 4:
Необходимо получить информацию о состоянии датчика температуры DS18B20 ID=28FF641E815C037A модуля с 2023-02-10 14:29:00 по 2023-02-10 14:30:00 UTC.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210142900&to=20230210143000&sns=owi_temp&sid=28FF641E815C037A
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "1676039340",
"to": "1676039400",
"sns": "owi_temp",
"sid": "28FF641E815C037A",
"utc": "1",
"time": "1678435518"
},
"data": [{
"t": "1676039374",
"dd": "36.13"
}]
}
Пример запроса 5:
Необходимо получить информацию о состоянии всех датчиков и аппаратных ресурсов модуля с 2023-02-10 00:00:00 по 2023-02-10 00:10:00 UTC. В этом случае, параметр SNS можно опустить.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
&from=20230210000000&to=2023021001000
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "1675987200",
"to": "1675987800",
"sns": "all",
"sid": "0",
"utc": "1",
"time": "1678435744"
},
"data": [{
"t": "1675987200",
"dd": {
"sys_time": "1249911",
"rtc": {
"year": "2000",
"mon": "0",
"day": "0",
"wday": "0",
"hour": "91",
"min": "11",
"sec": "51"
},
"rele": "0000",
"in": "000000",
"io_in": "xxxxxxxx",
"io_out": "00000000",
"out": "00000",
"adc": [
["0", "0.00"],
["829", "2.03"],
["964", "2.36"],
["1023", "2.50"],
["1023", "2.50"]
],
"owi_temp": [],
"pwm": ["0", "0", "0", "0"],
"dht": [
["1wb", "0", "0", "0.0", "0.0"]
],
"impl_in": ["0", "0", "0", "0", "0", "0"],
"impl_io": ["0", "0", "0", "0", "0", "0", "0", "0"],
"flm_in": [
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"]
],
"flm_io": [
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"]
],
"acs": ["0.00", "0.00", "0.00", "0.00"],
"ma420": [
["", ""],
["", ""],
["", ""],
["", ""]
],
"uvars": [
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00",
"0.00"]
}
}]
}
Пример запроса 6:
Необходимо получить самую "свежую" информацию о состоянии всех датчиков и аппаратных ресурсов модуля (т.е. полученную при последнем сеансе связи модуля с Облаком).
В этом случае, необходимо пропустить оба параметра TO и FROM.
https://kecloud.ru/api.php?key=vePRX4K1foD2kwd3m2GOBCLv03byddFM&act=data
JSON ответ:
{
"response": {
"error": "0",
"type": "data",
"from": "0",
"to": "0",
"sns": "all",
"sid": "0",
"utc": "1",
"time": "1678435878"
},
"data": [{
"t": "0",
"dd": {
"sys_time": "139140",
"rtc": {
"year": "2023",
"mon": "3",
"day": "1",
"wday": "3",
"hour": "12",
"min": "38",
"sec": "16"
},
"rele": "0000",
"in": "000000",
"io_in": "xx111111",
"io_out": "00xxxxxx",
"out": "00000",
"adc": [
["0", "0.00"],
["365", "0.89"],
["1023", "2.50"],
["1023", "2.50"],
["999", "2.44"]
],
"owi_temp": [
["A", "28543BBC050000AE", "43.44"],
["A", "28FF641E815C037A", "31.37"],
["A", "28FF641E817E2257", "24.06"],
["A", "28FF641E814944AC", "27.75"],
["A", "28FF641E816946D1", "20.56"],
["A", "28FF641E8159C670", "21.50"],
["A", "28FF641E8165411F", "28.06"],
["A", "28FF641E8155D542", "21.87"],
["A", "28FF641E816DAAA0", "22.12"],
["A", "28FF641E815BBC67", "25.06"],
["A", "28FF5DCE011703D6", "43.13"],
["B", "28FF641E8178C934", "25.25"],
["B", "28FF641E814913F4", "30.31"],
["B", "28FF641E8177D173", "22.37"],
["B", "28FF641E817F4B6A", "29.56"]
],
"pwm": ["0", "33", "47", "0"],
"dht": [
["1wb", "0", "0", "0.0", "0.0"]
],
"impl_in": ["0", "0", "0", "0", "0", "0"],
"impl_io": ["0", "0", "0", "0", "0", "0", "0", "0"],
"flm_in": [
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"]
],
"flm_io": [
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"],
["0.00", "0.00"]
],
"acs": ["8.88", "13.93", "15.18", "0.00"],
"ma420": [
["", ""],
["", ""],
["", ""],
["", ""]
],
"uvars": [
"41.00",
"43.00",
"0.00",
"0.00",
"0.00",
"0.00",
"-31.19",
"44.00",
"40.00",
"42.00"]
}
}]
}
|