API модуля gateway

Последние изменения: 29.08.2019

API - методы модуля gateway

Модуль gateway выполняет функции NB-Fi базовой станции. Данный HTTP API-интерфейс предоставляет доступ к модулю gateway для администрирования и мониторинга базовой станции. Данные методы доступны как при подключении непосредственно к сетевому интерфейсу БС, так и на API – сервере http://api.waviot.ru

Таблица 1. Сводная таблица всех API методов модуля gateway

Описание

URL

Метод

Требует авторизацию, роль

Чтение номера БС

/gateway/localid

GET

да, guest

Чтение списка параметров БС

/gateway/read_params

GET

да, guest

Изменение параметров БС

/gateway/write_params

GET

да, admin

Конфигурирование GPS

/gateway/gps

GET

да, admin

Конфигурирование часов

/gateway/time

GET

да, admin

Чтение списка UL и DL пакетов БС

/gateway/messages

GET

да, guest

Чтение списка ошибок БС

/gateway/alarms

GET

да, guest

Конфигурирование настроек подключения TCP/IP

/gateway/network

GET

да, admin

Перезагрузка БС

/gateway/reboot

GET

да, admin

Чтение номера БС

Чтение номера базовой станции.

Запрос:

URL

Список параметров

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

/gateway/localid

/gateway/localid

Ответ:

BODY

{ "id": 9450}

Чтение списка параметров БС

Чтение всех значений параметров БС, включая последний хартбит, содержащий текущее состояние базовой станции

Запрос:

URL

Список параметров

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

/gateway/read_params

id

/gateway/read_params?id=9450

Ответ:

BODY

{

"bs_id": 9450,

"dl_freq": 446000000,

"dl_freq2": 864000000,

"last_hb": {

"artix_rev": 274,

"artix_rev_date": "Mar 21 2018 17:08:09",

"ax_rev": "ax.3",

"beat_id": 438,

"bs3_state": 15,

"bswin_rev": "2.8.6",

"bswin_rev_date": "Jul 4 2019 15:49:23",

"dl_base_freq": [

446000000,

864000000

],

"dl_bitrates": [

10,

11,

12,

13,

0,

1,

2,

3

],

"msg_type": "beat_nbfi",

"receiver_0": {

"busyness": 11.678138732910156,

"busyness_aver": 2.8512070178985596,

"noise": -154.0449676513672,

"transmitter": 1

},

"ssh_connection": true,

"station_id": 9450,

"temperature": 80.0999984741211,

"time_published": 1561998861,

"ul_bitrates": [

20,

21,

23,

24,

26,

29

]

},

"logoffset": 220,

"mode": "USPD",

"nbfi_time_sync": false,

"ntp": false,

"result": false,

"send_dl": true,

"ul_freq": 868800000

}

Изменение параметров БС

Изменение значений параметров БС

Запрос:

URL

Список параметров

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

/gateway/write_params

id, ul_freq, dl_freq, dl_freq2, ext_filter, one_sec_pulse_tester, meslog_ttl, mode,nbfi_time_sync,ntp

/gateway/write_params?id=9450&ul_freq=868800000&dl_freq=446000000

Ответ:

BODY

{

"result": true

}

Описание параметров БС

Имя параметра

Тип

Описание

Значение по умолчанию

id

int

номер БС

обязательный параметр

ul_freq

int

базовая частота приема (диапазон 1), Гц

нет

ul_freq2

int

базовая частота приема (диапазон 2), Гц

нет

dl_freq

int

базовая частота передачи (диапазон 1), Гц

нет

dl_freq2

int

базовая частота передачи (диапазон 2), ГЦ

нет

ext_filter

bool

вкл/выкл внешний приемный фильтр

нет

one_sec_pulse_tester

bool

вкл/выкл режим поверки часов

нет

meslog_ttl

int

время жизни лога UL и DL пакетов, сек

Нет

mode

string

режим работы – текстовый параметр, сохраняемый в файле конфигурации БС

нет

nbfi_time_sync

bool

вкл/выкл синхонизацию системного времени от NB-Fi сервера

нет

ntp

bool

вкл/выкл синхонизацию системного времени через службу NTP

нет

Конфигурирование GPS

Чтение координат GPS

Запрос:

URL

Список параметров

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

/gateway/gps

id

/gateway/gps?id=9450

Ответ:

BODY

{

"latitude": 56.414298,

"longitude": 37.543753,

"result": true

}

Изменение значений параметров GPS

Запрос:

URL

Список параметров

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

/gateway/gps

id, ntp

/gateway/gps?id=9450&ntp=true

Ответ:

BODY

{

"result": true

}

Описание параметров GPS

Имя параметра

Тип

Описание

Значение по умолчанию

id

int

номер БС

обязательный параметр

ntp

bool

вкл/выкл синхронизацию времени от GPS

нет

Конфигурирование часов

Чтение текущего времени

Запрос:

URL

Список параметров

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

/gateway/time

id

/gateway/time?id=9450

Ответ:

BODY

{

"result": true,

"timestamp": 1544609726

}

Установка текущего времени

Запрос:

URL

Список параметров

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

/gateway/time

id, utc

/gateway/time?id=9450&utc=1544609726

Ответ:

BODY

{

"result": true

}

Включение или отключение системной синхронизации времени

Запрос:

URL

Список параметров

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

/gateway/time

id, ntp

/gateway/time?id=9450&ntp=false

Ответ:

BODY

{

"result": true

}

Чтение списка UL и DL пакетов БС

Позволяет получить список всех пакетов, принятых и отправленных базовой станцией за последние

meslog_ttl секунд.

Запрос:

URL

Список параметров

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

/gateway/messages

id, from, to, ids, types, limit

/gateway/messages?id=9450&ids=7520047&types=0,1&limit=3

Ответ:

BODY

[

{

"freq": 868822400,

"iterator": 25,

"modem_id": 7520047,

"offset": 900,

"payload": "E07DFB594AA5067B",

"phy": "UL_DBPSK_3200_PROT_D",

"rssi_or_pwr": -79,

"snr": 59,

"time_saved": 1544620282429,

"type": "UL"

},

{

"freq": 868790400,

"iterator": 24,

"modem_id": 7520047,

"offset": 700,

"payload": "C0F683B9B904716D",

"phy": "UL_DBPSK_3200_PROT_D",

"rssi_or_pwr": -76,

"snr": 59,

"time_saved": 1544620281111,

"type": "UL"

},

{

"freq": 446054556,

"iterator": 24,

"modem_id": 7520047,

"offset": 0,

"payload": "72372DFA7956257FB412",

"phy": "DL_PSK_FASTDL",

"rssi_or_pwr": 26,

"snr": 0,

"time_saved": 1544620280855,

"type": "DL"

}

]

Описание параметров запроса

Имя параметра

Тип

Описание

Значение по умолчанию

id

int

номер БС

обязательный параметр

from

int

таймстамп времени начала данных

0

to

int

таймстамп времени окончания данных

текущее время

ids

int,int

список номеров устройств (разделитель запятая)

все номера

types

int,int

список типов пакетов (разделитель запятая), 0 – UL, 1- DL

все типы

limit

int

ограничение количества пакетов

1000

Чтение списка ошибок БС

Позволяет получить лог ошибок базовой станции.

Запрос:

URL

Список параметров

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

/gateway/alarms

id, from, to, limit, clear

/gateway/alarms?id=9450&ids=7520047&limit=3

Ответ:

BODY

[

{

"alarm_code": 3,

"alarm_text": "Gateway state changed: from 13 to 15",

"id": 283,

"time_saved": 1544605471654,

"value": 15.013

},

{

"alarm_code": 3,

"alarm_text": "Gateway state changed: from 15 to 13",

"id": 282,

"time_saved": 1544605261710,

"value": 13.015

},

{

"alarm_code": 3,

"alarm_text": "Gateway state changed: from 13 to 15",

"id": 281,

"time_saved": 1544533171659,

"value": 15.013

},

{

"alarm_code": 3,

"alarm_text": "Gateway state changed: from 5 to 13",

"id": 280,

"time_saved": 1544533141669,

"value": 13.005

},

{

"alarm_code": 5,

"alarm_text": "Connected to server",

"id": 279,

"time_saved": 1544533087683

}

]

Описание параметров запроса

Имя параметра

Тип

Описание

Значение по умолчанию

id

int

номер БС

обязательный параметр

from

int

таймстамп времени начала данных

0

to

int

таймстамп времени окончания данных

текущее время

limit

int

ограничение количества пакетов

1000

clear

bool

true - очистить лог ошибок

false

Конфигурирование настроек подключения TCP/IP

Чтение текущих настроек

Запрос:

URL

Список параметров

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

/gateway/network

id

/gateway/network?id=9450

Ответ:

BODY

{

"address": "192.168.0.144",

"gateway": "192.168.0.255",

"iface": "static",

"netmask": "255.255.255.0",

"result": true

}

Изменение настроек подключения

Запрос:

URL

Список параметров

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

/gateway/network

id, iface, address, gateway, netmask

/gateway/network?id=9450 &iface=static&address=192.168.0.144&gateway=192.168.0.255&netmask=255.255.255.0

Ответ:

BODY

{

"result": true

}

Описание параметров запроса

Имя параметра

Тип

Описание

Значение по умолчанию

id

int

номер БС

обязательный параметр

iface

string

dhcp либо static

обязательный параметр

address

string

IP адрес БС

старое значение

gateway

string

IP адрес шлюза по умолчанию

старое значение

netmask

string

маска подсети

старое значение

Перезагрузка БС

Запрос:

URL

Список параметров

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

/gateway/reboot

id

/gateway/reboot?id=9450

Ответ:

BODY

{

"result": true

}

Помогла ли вам статья?