API-функции сервиса Core

exist

Функция проверяет существование переменных, имена которых передаются в параметрах.

Параметры: массив строк; имена проверяемых переменных
Ответ: true, если все запрашиваемые переменные существуют
Ошибки: 
- [4001] DRV_ERROR_VAR_NOT_FOUND - одна или несколько переменных не найдены, поле error.data: массив имен отсутствующих переменных

Пример запроса:

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "exist",
    "params": ["var1","var2","var3"]
}

Пример ответа:

{
    "jsonrpc":"2.0",
    "id": 1,
    "result": true
}

list

Функция возвращает массив строк, представляющих имена всех существующих переменных.
Имена переменных располагаются в массиве в порядке, соответствующем их индексам (первая перемнная имеет индекс 0).

Параметры: нет
Ответ: массив строк; имена существующих переменных
Ошибки: нет

Пример запроса:

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "list"
}

Пример ответа:

{
    "jsonrpc":"2.0",
    "id": 1,
    "result": ["var1","var2","var3"]
}

status

Функция возвращает статус запрошенных переменных.

Параметры: опционально, объект; 
-- поле vars: опционально, массив строк; имена запрашиваемых переменных

Ответ: массив массивов; статусы существующих из запрошенных переменных

Содержание массива статуса: [name, time, value, error, payload]

name - строка; имя переменной
time - целое число; метка времени в формате UNIX-timestamp с миллисекундами
value - число double; значение переменной
error - опцинально, целое число; код ошибки, если ошибка не равна 0 или если присутствует payload
payload - опционально, объект; произвольная полезная нагрузка, если присутствует

Ошибки: нет; если ни одна запрошенная переменная не существует, будет возвращен пустой массив

Пример запроса:

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "status",
    "params":{
        "vars":["var1","var2","var3"]
    }
}

Пример ответа:

{
    "jsonrpc":"2.0",
    "id": 1,
    "result": [
        ["var1", 1693912094026, 123.45],
        ["var2", 1693912094027, 456.78, 0, {"speed":100,"mass":200}],
        ["var3", 1693912094021, 789.01, 4005]
    ]
}

set

Функция устанавливает новое значение переменной.
Сервис Core отправляет новое значение соответствующему драйверу и возвращает ответ драйвера.
Если новое значение не установлено, будет возвращена релевантная ошибка.
Функция выполняется синхронно.

Параметры: объект; 
-- поле var: имя (строка) или индекс (число) изменяемой переменной
-- поле value: число double; устанавливаемое значение
-- поле payload: опционально, объект; произвольная полезная нагрузка

Ответ: массив массивов; статусы существующих из запрошенных переменных

Содержание массива статуса: [name, time, value, error, payload]

name - строка; имя переменной
time - целое число; метка времени в формате UNIX-timestamp с миллисекундами
value - число double; значение переменной
error - опцинально, целое число; код ошибки, если ошибка не равна 0 или если присутствует payload
payload - опционально, объект; произвольная полезная нагрузка, если присутствует

Ответ: true, если значение установлено успешно
Ошибки: если новое значение не установлено, будет возвращена соответствующая ошибка

Пример запроса:

{
    "jsonrpc":"2.0",
    "id": 1,
    "method": "set",
    "params":{
        "var":"var1",
        "value":12345.6789
    }
}

Пример ответа:

{
    "jsonrpc":"2.0",
    "id": 1,
    "result": true
}