Сервер опроса

functionality

  • heat - Теплосчетчики
  • electricity - Электросчетчики
  • impulses - Счетчики импульсов
  • water - Водосчетчики
  • fire - Датчики пожара
  • motion - Датчики движения
  • converter - Конвертеры интерфейсов
  • concentrator - Концентратор

cmd

  • get_data_hourly - Получение дневных данных
  • get_data_daily - Получение суточных данных
  • get_data_montly - Получение месячных данных
  • get_data_yearly - Получение годовых данных
  • get_data_now - Получение текущих данных
  • set_power_off - Выключение нагрузки
  • set_power_on - Включение нагрузки

required_fields

  • num485 - опросный номер
  • serial - серийный номер
  • ip - адрес в сети
  • port - порт
  • login - логин
  • password - пароль
  • mac - MAC адрес

GET /init

Получение информации о поддерживаемых устройствах

{
    "models" : [
        {
            "functionality" : ["heat"],
            "ident" : "ELF04",
            "models" : ["Эльф-03","Эльф-04","Эльф-05"],
            "mark" : "Эльф",
            "manufactured" : "-",
            "parameters" : ["PU1","PB1"],
            "cmd" : ["get_data_hourly", "get_data_dayly"],
            "range_data" : "60",
            "required_fields" : ["num485"]
        },
        {
            "functionality" : ["converter"],
            "ident" : "KARAT910",
            "models" : ["Карат-910"],
            "mark" : "Карат",
            "manufactured" : "Карат",
            "required_fields" : ["ip" , "port"]
        }
    ],
    "version" : "1.02.12"
}

POST /set_device

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

Header value
Content-Type application/json
{
    "devices" : [
        {
            "id" : 1,
            "library" : "ELF04",
            "num485" : "35",
            "parent_id" : 2,
            "last_data" : [{"ident":"ENERGY_TARIF_1","date":"2019-10-05 16:55:38"}]
        },
        {
            "id" : 2,
            "library" : "KARAT910",
            "ip" : "192.168.0.105",
            "port" : "25"
        }
    ]
}

Ответ при успешном добавлении:

{
    "result" : "success"
}

Ответ при ошибке:

{
    "devices" : [
        {
            "id" : 1,
            "library" : "ELF04",
            "num485" : "35",
            "parent_id" : 2,
            "error" : "undefined_password"
        }
    ],
    "result" : "failed"
}

Ошибки:

  • undefined_<field> - Не был указан параметр
  • invalid_<field> - Не верное значение параметра