Коммуникационный сервер

Версия 22.1 от Руслан Савельев на 2025/03/19 09:30

1. Назначение

Коммуникационный сервер версии 5 (далее СНК-КС5) – это распределённая система, предназначенная для обеспечения обмена данными в режиме реального времени между программными продуктами СНК: СНК-АЗС, СНК-Офис и СНК-ПЦ.

2. Информация и структурная схема

1742371332756-574.png

3. Запуск программы

1742371119337-637.pngВоспользуйтесь ярлыком «КС СНК АЗС» на рабочем столе или наберите в браузере localhost:8000

4. Интерфейс программы

Программа открывается в браузере и состоит из следующих элементов:

  • Адресная строка - в ней должен быть набран адрес КС (на рисунке отмечено цифрой 1).
  • Индикатор состояния подключения - показывает, есть ли связь с сервером обмена (на рисунке отмечено цифрой 2).
  • Вкладки слева - переключение между вкладками с входящими и исходящими пакетами (на рисунке отмечено цифрой 3).
  • Основное окно - список пакетов в выбранной вкладке, а также настройки (на рисунке отмечено цифрой 4).

1742373742661-488.png

5. Настройка параметров КС 5

5.1. Используя конфигурационный файл

Параметры настройки КС 5 сохранены в файле .\exchange\SncExchServer.cfg

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

  • abonent.id – ID абонента (код абонента, для которого установлен КС5)
  • archive.inbox.depth – Глубина хранения входящих пакетов, дней.
  • archive.outbox.depth – Глубина хранения исходящих пакетов, дней.
  • archive.packet.disable – Отключить сохранение пакетов в архив (true), сохранять – false
  • auth.token – Токен, используется одинаковый токен для всех абонентов.
  • http.port – Порт для обмена с ПО СНК (Бэк-офис, СНК-Офис, СНК-ПЦ). Этот же порт используется для запуска веб-интерфейса в браузере (порт по умолчанию - 8000)
  • nats.host – IP адрес и порт сервера NATS. (порт по умолчанию - 7654)
  • nats.timeout – таймаут обращения к серверу NATS, мс.

Для изменения параметров необходимо:

  • остановить службу КС 5, (см. раздел «Службы», п.9).
  • изменить и сохранить параметры в файле.
  • запустить службу КС 5, (см. раздел «Службы», п.9).

5.2. Используя веб-интерфейс

Воспользуйтесь ярлыком «КС СНК АЗС» на рабочем столе или наберите в браузере localhost:8000

  • Перейдите на страницу «Настройки», доступные параметры:
    • ID абонента - код абонента, для которого установлен КС5 (abonent.id в п. 5.1)
    • Глубина хранения входящих пакетов, дней – сколько дней хранить входящие пакеты (archive.inbox.depth в п. 5.1)
    • Глубина хранения исходящих пакетов, дней – сколько дней хранить исходящие пакеты (archive.outbox.depth в п. 5.1)
    • Не сохранять пакеты в архив – отметьте флажок, чтобы не хранить архивы пакетов (archive.packet.disable в п. 5.1)
    • Токен – значение токена должно совпадать у всех абонентов, участвующих в обмене (auth.token в п. 5.1)
    • Строка подключения – IP адрес и порт сервера NATS (nats.host в п. 5.1)
    • Таймаут, мс. – таймаут обращения к серверу NATS (nats.timeout в п. 5.1)
  • Нажмите кнопку «Сохранить» после изменения настроек.

1742374859311-606.png

6. Настройка СНК-АЗС для работы с КС 5

6.1. Настройка в программе «Бэк-Офис СНК-АЗС»

В «Бэк-Офис СНК-АЗС» необходимо добавить список абонентов, с которыми будет совершаться обмен, настроить тип передаваемых и принимаемых данных для этих абонентов (СНК-Офис или СНК-ПЦ) и выбрать версию КС, используемую для обмена данными для каждого абонента (КС 4 или КС 5).

6.1.1. Запуск окна настроек абонентов

  • Запустите «Бэк-офис СНК-АЗС».
  • В строке меню нажмите – «Обработка» - «Обмен данными» - «Настройка списка абонентов».

1742375086353-686.pngОткроется окно «Абоненты», здесь находится список абонентов, с которыми производится обмен данными.

6.1.2. Описание параметров таблицы абонентов

  • Код абонента – код абонента, с которым производится обмен данными, код нельзя изменить у уже созданного абонента, его можно указать только при создании нового абонента.
  • Имя – наименование абонента, не влияет на обмен, используется только для обозначения абонента в «Бэк-офисе».
  • Тип данных – тип передаваемых абоненту данных («СНК-ПЦ» или «СНК-Офис»).
  • Версия КС – версия КС, используемая абонентом для обмена данными («КС 4» или «КС 5»).

1742375171694-926.png6.1.3. Настройка портов для связи «Бэк-Офиса» с КС

  • Порт для КС 4 – порт, по которому «Бэк-офис» связывается с КС 4 (по умолчанию 6000).
  • Порт для КС 5 – порт, по которому «Бэк-офис» связывается с КС 5 (по умолчанию 8000).

Для запуска веб-интерфейса КС 5, можно воспользоваться кнопкой «Открыть КС 5».

Внимание!
В настройках КС 5 должен быть указан тот же номер порта, что и в «Бэк-офисе» (параметр http.port в файле SncExchServer.cfg, см. п. 5.1).

6.1.4. Добавление абонента

  • В окне «Абоненты» нажмите правую кнопку мыши в любом свободном месте окна и выберите «Добавить».

1742375331377-333.png

  • В строке «Добавить абонента» укажите код добавляемого абонента и нажмите кнопку «ОК».

1742375383319-279.png

В таблицу будет добавлена новая строка

  • Заполните параметры Имя, Тип данных, Версия КС для созданного абонента (см. п. 6.1.2).

1742375454496-878.png6.1.5. Удаление абонента

  • Нажмите правую кнопку мыши на строке с абонентом и выберите «Удалить»

1742375709359-919.png

6.2. Настройка конфигурационного файла СНК-АЗС

Для работы «СНК-АЗС» с КС 5 необходимо настроить параметры в файле .\SNC_AZS\backofficeapp\bo_app.snc

Внимание!
Закройте все программы «СНК-АЗС» и «Бэк-Офис» перед внесением изменений!

Описание параметров для настройки работы с КС 5:

  • TransactionOnOpenShift – передавать данные по текущей открытой смене (0 - не передавать, 1 - передавать)
  • UseExchangeServer – использовать КС для передачи данных (0 - не использовать, 1 - использовать)
  • ExchangeList – список абонентов с которыми обменивается СНК-АЗС и формат данных для обмена, заполняется автоматически, при настройке абонентов в «Бэк-Офисе» (см. п. 6.1)
  • AutoReceiveData – автоматический прием полученных в КС данных в «Бэк-Офис» (0 – автоматический прием выключен, 1 - включен)
  • AutoSendData – автоматически отправлять данные указанным абонентам в указанное время (-1,07:00;-1,08:00; (-1 – всем абонентам, 07:00 – время отправки данных))
  • SendOpenShift – передача открытой смены в «СНК-Офис» (0 - не передавать, 1 - передавать)
  • ExchangeSrvPortExt –порт для связи с КС 5 (значение параметра http.port из п.5.1)

7. Настройка СНК-Офис для работы с КС 5

7.1. Настройка конфигурационного файла СНК-Офис

Для работы «СНК-Офис» с КС 5 необходимо настроить параметры в файле .\SNC_OFFICE\bo_app.ini

Внимание!
Закройте программу «СНК-Офис» перед внесением изменений!

Описание параметров для настройки работы с КС 5:

  • UseExchangeServer – использовать КС для передачи данных (0 - не использовать, 1 - использовать)
  • AutoReceiveData – автоматический прием полученных в КС данных (0 – автоматический прием выключен, 1 - включен)
  • ExchangeSrvPortExt –порт для связи с КС 5 (значение параметра http.port из п.5.1)

7.2. Настройка формата передачи данных для ТО

Для каждой ТО необходимо выбрать версию КС, используемую ТО для обмена данными. Для этого:

  • Откройте раздел «Справочники».
  • Выберите «Точки обслуживания»
  • На нужной ТО нажмите правой кнопкой мыши и выберите «Редактировать»

1742376031179-997.png

Откроется окно «Редактирование ТО».

  • Перейдите на вкладку «Обмен данными».
  • В параметре «Использовать СНК-КС» выберите «КС 5».
  • Нажмите кнопку «ОК» для сохранения параметров.

1742376080218-224.png

8. Настройка СНК-ПЦ для работы с КС 5

В СНК-ПЦ зайдите в меню – «Настройка» – «Конфигурация».

В разделе «Приписка проекта» добавьте параметр «IP-Адрес:порт Коммуникационного Сервера - 5».

1742376299785-470.png

  • Выберите заголовок проекта в конфигурации.
  • Слева нажмите кнопку «Экспорт». Из выпавшего списка выберите «Импорт выборочных настроек (с пополнением)»

1742376339853-759.png

Откроется окно файлового проводника.

  • Зайдите в каталог «sncPC» и выберите файл «IP-Адрес и порт КС5»
  • Нажмите кнопку «Открыть»

1742376379869-231.png

  • После добавления параметра укажите настройки КС5 в правом окне в строке «Значение» в формате ipv4:порт (например localhost:8000).
  • Нажмите кнопку «Принять» и перезапустите ПЦ.
  • После перезапуска ПЦ выберите в меню «Справочники» - «Точки обслуживания»

1742376449142-544.png

  • Выберите нужную ТО и нажмите кнопку «Ограничения» слева.

1742376495608-296.png

  • В открывшемся окне выберите строку «Настройка», и нажмите кнопку «Значения».

1742376541541-400.png

  • В открывшемся окне раскройте раздел «Режим обмена данными», нажав на +.
  • Флажок «Обмен СНК-КС ?» должен быть убран.
  • Флажок «Обмен СНК-КС 5?» должен быть установлен.
  • Нажмите кнопку «Принять»

1742376578109-329.png

9. Службы КС 5

Существуют отдельные службы КС 5 для различных продуктов СНК:

  • Для «СНК-АЗС» - «СНК-Коммуникационный сервер v5» (sncexchservice)
  • Для «СНК-Офис» - «СНК-Коммуникационный сервер v5 СНК-ОФИС» (sncexchservice.1000)
  • Для «СНК-ПЦ» - «СНК-Коммуникационный сервер v5 СНК-ПЦ» (sncexchservice.500)
  • Для «СНК-Офис Онлайн» - «СНК-ОФИС Онлайн прием КС v5» (sncexchprocessor)
  • Служба сервера NATS – «СНК-Коммуникационный сервер v5 NATS» (nats-server)

10. Описание каталогов обмена

10.1. Каталоги обмена КС 5

Каталоги обмена КС 5 находятся в папке Data и сгруппированы по абонентам. Внутри папки Data находится папка с номером абонента, в которой находится папка Packet, в которой находятся папки обмена:

  • Cache – для работы с принимаемым в данный момент пакетом.
  • Inbox – для входящих пакетов, которые еще не приняты программами СНК.
  • InboxArchive – архив входящих пакетов, сюда перемещаются пакеты из папки Inbox после их принятия в программу СНК.
  • Outbox – для отправляемых в настоящее время пакетов.
  • OutboxArchive – архив исходящих пакетов, сюда перемещаются пакеты из папки Outbox после их отправки другому абоненту.

1742374549161-794.png

10.2. Каталоги обмена в программах СНК

Каталоги обмена для «СНК-АЗС» находятся в папке SNC_AZS\backofficeapp.

Каталоги обмена для «СНК-Офис» находятся в папке SNC_OFFICE.

Описание каталогов:

  • OCIN – для входящих пакетов
  • OCIN_W – для входящих пакетов, переданных в формате «WIN»
  • OCIN_W.err – для входящих пакетов, переданных в формате «WIN», в процессе распаковки которых произошли ошибки
  • OCOUT_W – для исходящих пакетов, передаваемых в формате «WIN»