Controller logs service

API сервиса логов

#1 TOKEN (группа запросов)

Сервис не выдает токены, а только проверяет выданные токены syqiq.tech.

#2 LOGS (группа запросов)

Описание группы запросов syqiq.tech/api/logs
Запрос выдает логи:
Если диапазон дат запрашивается больше минуты, то на каждую секунду выдается только среднее значение за секунду, по всем параметрам.

!ВАЖНО что id фрейма имеет конертное значение (какой-то один id из выборки усреднения). 
Но у данного ID на самом деле конкретные значения, а не усреднения, которые пришлм в ответе. 
ID соотвествует реальным данным из лога, только в режиме, когда в ответе параметр logs.type=1

Если диапазон меньше минуты, то выдаются все собранные логи.

Требует передачи токена, см. секцию TOKEN.

PARAMETERS:
serial  - серийник контроллера
date    - дата с которой нужны логи (опционально)  если не указано берется от dateto - 60 секунд
dateto  - дата по которую нужны логи (опционально) если не указана берется текущий момент времени

ANSWER:
serial      - запрошенный серийный номер
dateStart   - дата начала логов 
dateStop    - дата конца логов
type        - тип отдаваемых логов (1- один к одному, 1000 - среднее максимум  на 1000 записей)

EXAMPLES:
http://jeka.su/api/logs/get?serial=1&date=12.05.2021%2010:37:27&dateto=20.05.2021%2010:37:20

http://jeka.su/api/logs/get?serial=1&date=2021-05-20 07:00:13&dateto=2021-05-20 07:00:13

{
    "errorMessage": "ok",
    "errorCode": 0,
    "data": {
        "logs": {
            "serial": "1",
            "dateStart": "2021-05-12 10:37:27",
            "dateStop": "2021-05-20 10:37:20",
            "type": "1000",
            "result": [
                {
                    "id":1,
                    "d_min00": null,
                    "d_max00": null,
                    ...
                    "d_min5C": -634,
                    "d_max5C": -596,
                    "dt": 1621475999
                },
                {
                    "id":2,
                    "d_min00": null,
                    "d_max00": null,
                    ..
                    "d_min5C": -630,
                    "d_max5C": -582,
                    "dt": 1621479599
                },
                {
                    "id":3,
                    "d_min00": null,
                    "d_max00": null,
                    ...
                    "d_min5C": -620,
                    "d_max5C": -577,
                    "dt": 1621483199
                }
            ]
        }
}
}

Метод: GET

Заголовок запроса: пустой

URL запроса: http://jeka.su/api/logs/get?serial=1

Тело запроса: передается пустым

Данный метод возвращает начальный и конечный ID логов для диапазона дат.

Требует передачи токена, см. секцию TOKEN.

PARAMETERS:
serial  - серийник контроллера
date    - дата с которой нужны логи (опционально)  если не указано берется от dateto - 60 секунд
dateto  - дата по которую нужны логи (опционально) если не указана берется текущий момент времени

ANSWER:
serial      - запрошенный серийный номер
dateStart   - дата начала логов 
dateStop    - дата конца логов
max_id      - максимальный ID логов, за указанный переиод
min_id      - минмальный ID логов, за указанный переиод

EXAMPLES:

http://jeka.su/api/logs/range/get?serial=1&date=20.05.2021%2003:9:00&dateto=21.05.2021%2003:15:20

{
    "errorMessage": "ok",
    "errorCode": 0,
    "data": {
        "logs": {
            "serial": "1",
            "dateStart": "2021-05-20 03:09:00",
            "dateStop": "2021-05-21 03:15:20",
            "max_id": 4094,
            "min_id": 54
        }
    }
}

Метод: GET

Заголовок запроса: пустой

URL запроса: http://jeka.su/api/logs/range/get?serial=1&date=20.05.2021%2003:9:00&dateto=21.05.2021%2003:15:20

Тело запроса: передается пустым

Возвращает массив валидных типов диапазонов для запроса кадров.

Требует передачи токена, см. секцию TOKEN.
http://jeka.su/api/logs/framerange/types

ANSWER:
id  -  уникальный ID
name - название
type - код типа
min_f - минимальный запрашиваемый диапазон кадров
max_f - максимальный запрашиваемый диапазон кадров

{
    "errorMessage": "ok",
    "errorCode": 0,
    "data": {
        "posible_frames": [
            {
                "id": 1,
                "name": 1,
                "type": 1,
                "min_f": 1,
                "max_f": 1000
            },
            {
                "id": 2,
                "name": 8,
                "type": 8,
                "min_f": 800,
                "max_f": 8000
            },
            {
                "id": 3,
                "name": 64,
                "type": 64,
                "min_f": 6400,
                "max_f": 64000
            },
            {
                "id": 4,
                "name": 512,
                "type": 512,
                "min_f": 51200,
                "max_f": 512000
            },
            {
                "id": 5,
                "name": 4096,
                "type": 4096,
                "min_f": 409600,
                "max_f": 4096000
            }
        ]
    }
}

Метод: GET

Заголовок запроса: пустой

URL запроса: http://jeka.su/api/logs/framerange/types

Тело запроса: передается пустым

Запрос выдает логи указанных фреймов.

Указнный тип плотности данных (type) может быть проигнорирован, если плотность требуется слишком высокая, для указанного промежутка или наоборот - низкая.

Так же если указанная плотность не существует - вернется ближайшая плотность данных.

Требует передачи токена, см. секцию TOKEN.

PARAMETERS:
serial  - серийник контроллера
frame    - номер кадра с которого нужны логи (опционально)  если не указано берется от frameto - 6000 кадров
frameto  - номер кадра по который нужны логи (опционально) если не указана берется последний
type - опциональный параметр, указывает требуемую плотность кадров может быть проигнорирован - ответ будет содержать другую плотность.

ANSWER:
serial      - запрошенный серийный номер
dateStart   - дата начала логов 
dateStop    - дата конца логов
type        - тип отдаваемых логов (1- один к одному, 8 - 8 к 1, 64 - 1к 64 и так далее.)

EXAMPLES:
http://jeka.su/api/logs/framerange/get?serial=1&frame=20&frameto=3000

 
{
    "errorMessage": "ok",
    "errorCode": 0,
    "data": {
        "logs": {
            "serial": "1",
            "dateStart": "2021-05-12 10:37:27",
            "dateStop": "2021-05-20 10:37:20",
            "type": "1000",
            "result": [
                {
                    "id":1,
                    "d_min00": null,
                    "d_max00": null,
                    ...
                    "d_min5C": -634,
                    "d_max5C": -596,
                    "dt": 1621475999
                },
                {
                    "id":2,
                    "d_min00": null,
                    "d_max00": null,
                    ..
                    "d_min5C": -630,
                    "d_max5C": -582,
                    "dt": 1621479599
                },
                {
                    "id":3,
                    "d_min00": null,
                    "d_max00": null,
                    ...
                    "d_min5C": -620,
                    "d_max5C": -577,
                    "dt": 1621483199
                }
            ]
        }
}
}

Метод: GET

Заголовок запроса: пустой

URL запроса: http://jeka.su/api/logs/framerange/get?serial=1&frame=100&frameto=1000&type=8

Тело запроса: передается пустым

Запрос выдает логи указанных фреймов, но указанных параметров.

Указнный тип плотности данных (type) может быть проигнорирован, если плотность требуется слишком высокая, для указанного промежутка или наоборот - низкая.

Так же если указанная плотность не существует - вернется ближайшая плотность данных.

Требует передачи токена, см. секцию TOKEN.

PARAMETERS:
serial  - серийник контроллера
prms_lst - массив id требуемых параметров
frame    - номер кадра с которого нужны логи (опционально)  если не указано берется от frameto - 6000 кадров
frameto  - номер кадра по который нужны логи (опционально) если не указана берется последний
type - опциональный параметр, указывает требуемую плотность кадров может быть проигнорирован - ответ будет содержать другую плотность.

ANSWER:
serial      - запрошенный серийный номер
dateStart   - дата начала логов 
dateStop    - дата конца логов
type        - тип отдаваемых логов (1- один к одному, 8 - 8 к 1, 64 - 1к 64 и так далее.)

EXAMPLES:
http://jeka.su/api/logs/framerange/paramslist/get?serial=1&frame=1&frameto=4&type=8&prms_lst[0]=1&prms_lst[1]=6

 
{
    "errorMessage": "ok",
    "errorCode": 0,
    "data": {
        "logs": {
            "serial": "1",
            "fromFrame": 1,
            "toFrame": 4,
            "dateStart": 1622650417,
            "dateStop": 1622650417,
            "type": 1,
            "result": [
                {
                    "id": 1,
                    "d_min00": -1,
                    "d_max00": 0,
                    "d_min05": -1,
                    "d_max05": 0,
                    "dt": 1622650417
                },
                {
                    "id": 2,
                    "d_min00": 0,
                    "d_max00": 1,
                    "d_min05": 0,
                    "d_max05": 1,
                    "dt": 1622650417
                },
                {
                    "id": 3,
                    "d_min00": 0,
                    "d_max00": 1,
                    "d_min05": 0,
                    "d_max05": 1,
                    "dt": 1622650417
                },
                {
                    "id": 4,
                    "d_min00": 2,
                    "d_max00": 2,
                    "d_min05": 2,
                    "d_max05": 2,
                    "dt": 1622650417
                }
            ]
        }
    }
}

Метод: GET

Заголовок запроса: пустой

URL запроса: http://jeka.su/api/logs/framerange/paramslist/get?serial=1&frame=1&type=8&prms_lst[0]=1&prms_lst[1]=6&frameto=4

Тело запроса: передается пустым

#3 CONTROLLER (группа запросов)

Описание группы запросов syqiq.tech/api/controller 
Данный метод не работает.
http://jeka.su/api/controller/touch/set

PARAMS:
serial=1
x=3 тач позиция по х
y=4 тач позиция по y

Метод: POST

Заголовок запроса:

key::login value::mars.griboedoff@gmail.com type::text

key::Authorization value::aVRuQUEwYTAta2pMcFUtU3dOZFRwTENJbS15QzRsQzktbHJ4Wg== type::text

URL запроса: http://jeka.su/api/controller/touch/set?serial=1&x=3&y=4

Тело запроса:

{
    "device":{
        "id":1,
        "owner_id":1,
         "mac":"AA:AA:AA:AA:00:90:01:38",
         "prod_at":"2021-06-16",
         "test_at":"2021-06-16",
         "sale_at":"2021-06-16"
    }
}