Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Предоставляет список ТД в формате JSON, который содержит:

  • grRegion - область/регион;
  • vspNumber - номер ВСП;
  • apID - MAC-адрес устройства;apName
  • apRtcGroup - имя устройства;
  • grCity - город;
  • grRegion - область/регион;
  • домен , в котором располагается устройство
  • grTB - территориальный банк;
  • vspAddressapGroup - графа из справочника с адресом расположение месторасположение ТД;
  • vspNumber - номер vspAddress -  адрес ВСП;
  • apGroupapName - сформированное по справочнику месторасположение ТДимя устройства;
  • apRtcGroup - домен , в котором располагается устройство (за исключением скрываемой части - domain_search.regex, см. Настройки сервиса)grCity - город;

Пример:

Блок кода
languagejs
themeRDark
{
    "data": [
        {
            "apGroupgrRegion": "Поволжский банк/Волгоградская область/Доп.офис №8621-0304"Самарская",
            "apIDvspNumber": "a8-f9-4b-b5-a4-a0****-*****",
            "grTBapID": "Поволжский банк"00-00-00-00-00-00",
            "grCityapRtcGroup": "г.Волгоград, Краснооктябрьский районtoor.pA",
            "vspNumbergrTB": "8621-00304банк",
            "apRtcGroupapGroup": "Ugбанк/Volgogradskiy_filial/Volgogradskaya_obl/Volgograd/Sberbank/8621-0304_pr-kt_Metallurgov_15Самарская/Доп.офис №****-****",
            "vspAddress": "400007"******, г.ВолгоградСамара, пр.МеталлурговСамарская, 15*",
            "apName": "sberbank_ug_vgg_volgograd_8621-0304_a8:f9:4b:b5:a4:a0"****-****_Samarskaya_*_00:00:00:00:00:00",
            "grRegiongrCity": "Волгоградская областьСамара"
        },
	]
}

Возможные параметры запроса

...

Блок кода
languagebash
themeRDark
curl -L http://localhost:9190/GetAPList
  • grTB - фильтр по полю grTB. При указании этого параметра в ответе от eltex-bob будут содержаться только те объекты, значение grTB которых совпадает с указанным. Если значение параметра пустое, фильтр будет игнорироваться.
    пример запроса:
Блок кода
curl -L http://localhost:9190/GetAPList?grTB='Сибирский банк'



GetAPDetail

Детализация информации по ТД , которая содержит :

  • "

...

  • firmware-version"

...

  • - версия ПО;
  • "

...

  • full-address" - полный адрес  ТД.
  • "vsp" - номер ВСП;
  • "city" - город  расположения ТД;
  • "serial-number" - серийный номер устройства;
  • "

...

  • ip"

...

  •  - IP-адрес устройства;

...

  • grTB - территориальный банк;
  • "office" - название офиса , где расположена ТД;


Запрос:

Блок кода
languagebash
themeRDark
curl -L http://localhost:9190/GetAPDetail/00:-00:-00:-00:-00:-00

Ответ:

Блок кода
languagejs
themeRDark
{
    "ipfirmware-version": "1921.1680.60.180",
 	"office   "full-address": "Доп.офис №178-758Волгоград, Металлургов, *",
	"city    "vsp": "г.Березовский"****-*****",
	"firmware-version    "city": "1.16.0.163"Волгоград",
    "serial-number": "WP01000177",
	"vsp    "ip": "4157-081"
	"full-address": "678100, г.Олекминск, ул.Молодежная, 20741"127.0.0.1",
    "grTB":"банк",
    "office":"Доп.офис №****-****"
}


GetAPAvailable

Доступность ТД, которая содержит:

  • "available" - доступность ТД, где 0 - ТД доступна, 1 - ТД недоступна;
  • "uptime" - время доступности ТД, в секундах.

Запрос:

Блок кода
languagebash
themeRDark
curl -L http://localhost:9190/GetAPAvailable/00:-00:-00:-00:-00:-00

Ответ:

Блок кода
languagejs
themeRDark
{
    "available": 0,
    "uptime": 67370
}

...

Метрики ТД,  которые содержат:

  • "wifi_users" - количество подключенных  пользователей

...

  • ,
  • "mac" - mac-адрес ТД

Запрос:

Блок кода
languagebash
themeRDark
curl -L http://localhost:9190/GetAPPerformance/00:-00:-00:-00:-00:-00

Ответ:

Блок кода
languagejs
themeRDark
{
    "wifi_users": "5"
    "mac":"00-00-00-00-00-00"
}


Настройки

...

Для авторизации в сервисе доступно 2 способа:

...

Блок кода
languagejs
themeRDark
server { 
	listen 80; 
	server_name bob; 
	location /api/ { 
		proxy_pass http://localhost:9190/; 
		proxy_set_header Host $host; 
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
		proxy_set_header X-Real-IP $remote_addr; 
		proxy_redirect default; 
	}
}

Настройка профиля юридических лиц

1. В EMS → "Администрирование" → "Права и пользователи" - > "Профили юридических лиц" необходимо добавить профиль, нажав на "+":

Image Added

На вкладке "Описание профиля" заполнить поля "Имя профиля" и "Описание".

На вкладке "Параметры" нужно добавить новый объект и заполнить необходимые поля:

Image Added


2. В EMS → "Администрирование" → "Права и пользователи" - > "Домены" нужно выбрать необходимый домен, нажать кнопку редактирования и добавить созданный профиль:

Image Added

/etc/eltex-bob/application.properties

...

Блок кода
languageyml
themeRDark
titleapplication.properties
collapsetrue
# The Datasource Mysql properties
spring.application.name=bob
h2.console.enabled=true
h2.console.port=9111

spring.datasource.url=jdbcr2dbc:mysql://10.62.18.35localhost:3306/eltex_ems?useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=javauser
spring.datasource.password=javapassword
spring.datasource.hikari.maximum-pool-size=1020

# Common properties
#domain_search.mask=[a-zA-Z0-9.-_]*.ap.root
domain_search.mask=[a-zA-Z0-9.-_]*.ap.root

domain_search.regex=^root/Ap/(.*)$
domain_search.replacement=$1

vsp_search.regex=/(\\d{2,}[-_]\\d{2,})[^/]*$

mac.splitter=:service.profile.id=2
service.profile.fields=testprofile

spring.mvc.favicon.enabled=false

mac.splitter=-

auth.enabled=false
auth.username=user
auth.password=password

excel.config.file=/etc/eltex-bob/excel_config.yaml

server.port=9190
  • Средство для диагности проблем в сервисном центре

...

Без форматирования
spring.datasource.url=jdbcr2dbc:mysql://localhost:3306/eltex_ems?useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
spring.datasource.username=javauser
spring.datasource.password=javapassword

...

Без форматирования
spring.datasource.hikari.maximum-pool-size=10
  • Домен, в по которому будет производиться выгрузка. Включает в себя дочерние домены.Данные профиля юридических лиц.
Без форматирования
domain_search.mask=[a-zA-Z0-9]*\.ap\.root
  • Часть домена/ВСП, которая будет скрыта при выводе результата:
Без форматирования
domain_search.regex=^root/Ap/(.*)$
domain_search.replacement=$1

vsp_search.regex=/(\\d{2,}[-_]\\d{2,})[^/]*$service.profile.id=2
service.profile.fields=testprofile
  • Разделители октетов в мак-адресе (в apID и в запросах GetAPDetail, GetAPAvailable, GetAPPerformance, по умолчанию ":-"):
Без форматирования
mac.splitter=:-
  • Включение авторизации по логин-паролю, false - выключено:

...

Без форматирования
server.port=9190

Следует отменить, что приведенный конфигурационный файл предназначен для доменов вида Ap.root. Если используется только root, то регулярные выражения нужно изменить следующим образом:

Блок кода
themeMidnight
# Common properties
domain_search.mask=.*root

domain_search.regex=^(.*)$
domain_search.replacement=$1


/etc/

...

Конфигурационный файл для работы со справочником:

Блок кода
languageyml
themeRDark
titleexcel_config.yaml
collapsetrue
vspSheetName: В конкурс
vspExcelFile: /etc/eltex-bob/vsp.xlsx
type: TITLE
columns:
  vsp: Номер ВСП
  bank: Территориальный банк
  region: Субъект РФ
  office: Наименование подразделения
  address: Фактитческий адрес Объекта
  city: Населенный пункт

## Пример конфигурации по номерам колонок
#vspSheetName: В конкурс
#type: NUMBER
#columns:
#  vsp: 3
#  bank: 1
#  region: 10
#  office: 2
#  address: 7
  • Имя страницы для анализа и путь к справочнику:
Без форматирования
vspSheetName: В конкурс 
vspExcelFile: /home/vagrant/list2.xlsx
  • Режим работы с таблицей. TITLE - поиск колонок будет происходить по их заголовкам, NUMBER - поиск колонок будет происходить по их порядковому номеру.
Без форматирования
type: TITLE
  • Работа с таблицей:
Без форматирования
columns:
  vsp: Номер ВСП - в этой колонке происходит поиск ячейки с номером ВСП совпадающим со значением ВСП из домена, например в домене .../Sberbank/4157-081_Kuznechnaya_11a..., это "4157-081"   
  bank: Территориальный банк          \
  region: Субъект РФ                   - ячейки этих столбцов будут использованы для составления APGROUP
  office: Наименование подразделения  /
  address: Фактитческий адрес Объекта  -  значение этого поля из этой колонки попадает в FULLADDRESS в выводе GetAPList

/etc/default/eltex-bob

Файл инициализации сервиса.

Блок кода
languagebash
themeRDark
titleeltex-bob
collapsetrue
# AP Monitoring service

# Initial size of Java heap
JAVA_INIT_HEAP=128m
# Maximum size of Java heap
JAVA_MAX_HEAP=256m

# Additional arguments to pass to java
JAVA_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/eltex-bob"


ПараметрыОписание
JAVA_INIT_HEAP
Количество памяти, выделяемое на работу сервиса при старте. Рекомендуется выставлять равное JAVA_MAX_HEAP.
JAVA_MAX_HEAP
Максимальное количество памяти, которое может зарезервировать сервис
JAVA_OPTS
Дополнительные опции для запуска jvm


/etc/eltex-bob/log4j2.xml

...

Блок кода
languageyml
titledocker-compose.yml
version: "3"
 
services:
  bob:
    image: hub.eltex-co.ru/softwlc/eltex-bob:1.2019-<tag>
    network_mode: host
    ports:
      - 9190:9190
      - 9111:9111
    volumes:
      - "/etc/eltex-bob/excel_config.yaml:/etc/eltex-bob/excel_config.yaml"
      - "/etc/eltex-bob/log4j2.xml:/etc/eltex-bob/log4j2-docker.xml"
      - "/etc/eltex-bob/application.properties:/etc/eltex-bob/application.properties"
      - "/var/log/eltex-bob:/var/log/eltex-bob"
    environment:
      - spring.datasource.url=${BOB_DB_URL}
      - spring.datasource.username=${BOB_DB_USERNAME}
      - spring.datasource.password=${BOB_DB_PASSWORD}
      - domain_search.maskservice.profile.id=${BOB_DOMAINCLIENT_SEARCH_MASKPROFILE}
      - domain_search.regexservice.profile.fields=${BOB_DOMAINCLIENT_SEARCHPROFILE_REGEXFIELDS}
      - vsp_search.regexfields=${BOB_VSPCLIENT_SEARCHPROFILE_REGEXFIELDS}


Подсказка
Вместо <tag> необходимо указать актуальную версию, которую можно посмотреть по ссылке.

...

Блок кода
languageyml
title.env
# common bob params
BOB_DB_URL=jdbcr2dbc:mysql://<IP-address>100.110.1.228:3306/eltex_ems?useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC
BOB_DB_USERNAME=javauser
BOB_DB_PASSWORD=javapassword
BOB_DB_HIKARI_MAXIMUM_POOL_SIZE=20CLIENT_PROFILE=2
BOB_DOMAINCLIENT_SEARCHPROFILE_MASK=[a-zA-Z0-9\\._-]*\\.Ap\\.root
BOB_DOMAIN_SEARCH_REGEX=^root/Ap/(.*)$
BOB_VSP_SEARCH_REGEX=/(\\d{2,}[-_]\\d{2,})[^/]*$FIELDS=testprofile 


Файлы .env и docker-compose.yml должны находиться в одной папке. Контейнер запускается командой:

...

  • BOB_DB_URL - URL для подключекния к БД MySQL;
  • BOB_DB_USERNAME - Логин подключения к БД;
  • BOB_DB_PASSWORD - Пароль подключения к БД;

Параметры фильтрации

  • BOB_DOMAINCLIENT_SEARCH_MASK - фильтр (регулярное выражение), по которому выбираются домены из БДPROFILE - id профиля юридических лиц;
  • BOB_DOMAINCLIENT_SEARCHPROFILE_REGEX - фильтр вырезает часть домена для того, чтобы отобразить эту часть в json, например, root.Ap.Sibir, превратить в Ap.Sibir или в Sibir;
  • BOB_VSP_SEARCH_REGEX - по этому фильтру выбирается номер ВСП из полного представления домена, например, root.Ap.Sibir.Novosibisrk.Lenina.0000_0000-kakoetovsp.
  • FIELDS - имя профиля юридических лиц.