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

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

Последние авторы
1 = 1. Назначение =
2
3 Коммуникационный сервер версии 5 (далее СНК-КС5) – это распределённая система, предназначенная для обеспечения обмена данными в режиме реального времени между программными продуктами СНК: СНК-АЗС, СНК-Офис и СНК-ПЦ.
4
5 = 2. Информация и структурная схема =
6
7 [[image:1742371332756-574.png||data-xwiki-image-style-alignment="center" height="528" width="700"]]
8
9 = 3. Запуск программы =
10
11 [[image:1742371119337-637.png||data-xwiki-image-style-text-wrap="true" height="17" width="17"]]Воспользуйтесь ярлыком «**КС СНК АЗС**» на рабочем столе или наберите в браузере ##**localhost:8000**##
12
13 = 4. Интерфейс программы =
14
15 Программа открывается в браузере и состоит из следующих элементов:
16
17 * **Адресная строка** - в ней должен быть набран адрес КС //(на рисунке отмечено цифрой 1)//.
18 * **Индикатор состояния подключения** - показывает, есть ли связь с сервером обмена //(на рисунке отмечено цифрой 2)//.
19 * **Вкладки слева** - переключение между вкладками с входящими и исходящими пакетами //(на рисунке отмечено цифрой 3)//.
20 * **Основное окно** - список пакетов в выбранной вкладке, а также настройки //(на рисунке отмечено цифрой 4)//.
21
22 [[image:1742373742661-488.png||data-xwiki-image-style-alignment="center" height="437" width="600"]]
23
24 = 5. Настройка параметров КС 5 =
25
26 == 5.1. Используя конфигурационный файл ==
27
28 Параметры настройки КС 5 сохранены в файле **##.\exchange\SncExchServer.cfg##**
29
30 Описание параметров:
31
32 * **abonent.id** – ID абонента (код абонента, для которого установлен КС5)
33 * **archive.inbox.depth** – Глубина хранения входящих пакетов, дней.
34 * **archive.outbox.depth** – Глубина хранения исходящих пакетов, дней.
35 * **archive.packet.disable** – Отключить сохранение пакетов в архив (true), сохранять – false
36 * **auth.token** – Токен, используется одинаковый токен для всех абонентов.
37 * **http.port** – Порт для обмена с ПО СНК (Бэк-офис, СНК-Офис, СНК-ПЦ). Этот же порт используется для запуска веб-интерфейса в браузере (порт по умолчанию - 8000)
38 * **nats.host** – IP адрес и порт сервера NATS. (порт по умолчанию - 7654)
39 * **nats.timeout** – таймаут обращения к серверу NATS, мс.
40
41 **Для изменения параметров** необходимо:
42
43 * **остановить службу** КС 5, (см. раздел «Службы», п.9).
44 * **изменить и сохранить параметры** в файле.
45 * **запустить службу** КС 5, (см. раздел «Службы», п.9).
46
47 == 5.2. Используя веб-интерфейс ==
48
49 Воспользуйтесь ярлыком «**КС СНК АЗС**» на рабочем столе или наберите в браузере ##**localhost:8000**##
50
51 * Перейдите на страницу «Настройки», доступные параметры:
52 ** **ID абонента** - код абонента, для которого установлен КС5 (abonent.id в п. 5.1)
53 ** **Глубина хранения входящих пакетов, дней** – сколько дней хранить входящие пакеты (archive.inbox.depth в п. 5.1)
54 ** **Глубина хранения исходящих пакетов, дней** – сколько дней хранить исходящие пакеты (archive.outbox.depth в п. 5.1)
55 ** **Не сохранять пакеты в архив** – отметьте флажок, чтобы не хранить архивы пакетов (archive.packet.disable в п. 5.1)
56 ** **Токен **– значение токена должно совпадать у всех абонентов, участвующих в обмене (auth.token в п. 5.1)
57 ** **Строка подключения** – IP адрес и порт сервера NATS (nats.host в п. 5.1)
58 ** **Таймаут, мс.** – таймаут обращения к серверу NATS (nats.timeout в п. 5.1)
59 * Нажмите кнопку «**Сохранить**» после изменения настроек.
60
61 [[image:1742374859311-606.png||data-xwiki-image-style-alignment="center" height="355" width="600"]]
62
63 = 6. Настройка СНК-АЗС для работы с КС 5 =
64
65 == 6.1. Настройка в программе «Бэк-Офис СНК-АЗС» ==
66
67 В «[[Бэк-Офис СНК-АЗС>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]» необходимо добавить список абонентов, с которыми будет совершаться обмен, настроить тип передаваемых и принимаемых данных для этих абонентов (СНК-Офис или СНК-ПЦ) и выбрать версию КС, используемую для обмена данными для каждого абонента (КС 4 или КС 5).
68
69 **6.1.1. Запуск окна настроек абонентов**
70
71 * Запустите «[[**Бэк-офис СНК-АЗС**>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]».
72 * В строке меню нажмите – «**Обработка**» - «**Обмен данными**» - «**Настройка списка абонентов»**.
73
74 [[image:1742375086353-686.png||data-xwiki-image-style-alignment="center" height="184" width="500"]]Откроется окно «**Абоненты**», здесь находится список абонентов, с которыми производится обмен данными.
75
76 **6.1.2. Описание параметров таблицы абонентов**
77
78 * **Код абонента** – код абонента, с которым производится обмен данными, код нельзя изменить у уже созданного абонента, его можно указать только при создании нового абонента.
79 * **Имя **– наименование абонента, не влияет на обмен, используется только для обозначения абонента в «Бэк-офисе».
80 * **Тип данных** – тип передаваемых абоненту данных («СНК-ПЦ» или «СНК-Офис»).
81 * **Версия КС** – версия КС, используемая абонентом для обмена данными («КС 4» или «КС 5»).
82
83 [[image:1742375171694-926.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**6.1.3. Настройка портов для связи «Бэк-Офиса» с КС**
84
85 * **Порт для КС 4** – порт, по которому «Бэк-офис» связывается с КС 4 (по умолчанию 6000).
86 * **Порт для КС 5** – порт, по которому «Бэк-офис» связывается с КС 5 (по умолчанию 8000).
87
88 Для запуска веб-интерфейса КС 5, можно воспользоваться кнопкой «**Открыть КС 5**».
89
90 (% class="box infomessage" %)
91 (((
92 **Внимание!**
93 В настройках КС 5 должен быть указан тот же номер порта, что и в «Бэк-офисе» (параметр http.port в файле SncExchServer.cfg, см. п. 5.1).
94 )))
95
96 **6.1.4. Добавление абонента**
97
98 * В окне «**Абоненты**» нажмите правую кнопку мыши в любом свободном месте окна и выберите «**Добавить**».
99
100 [[image:1742375331377-333.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
101
102 * В строке «**Добавить абонента**» укажите код добавляемого абонента и нажмите кнопку «**ОК**».
103
104 [[image:1742375383319-279.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
105
106 В таблицу будет добавлена новая строка
107
108 * Заполните параметры **Имя**, **Тип данных**, **Версия КС** для созданного абонента (см. п. 6.1.2).
109
110 [[image:1742375454496-878.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**6.1.5. Удаление абонента**
111
112 * Нажмите правую кнопку мыши на строке с абонентом и выберите «**Удалить**»
113
114 [[image:1742375709359-919.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
115
116 == 6.2. Настройка конфигурационного файла СНК-АЗС ==
117
118 Для работы «СНК-АЗС» с КС 5 необходимо настроить параметры в файле## .\SNC_AZS\backofficeapp\**bo_app.snc**##
119
120 (% class="box infomessage" %)
121 (((
122 **Внимание!**
123 Закройте все программы «СНК-АЗС» и «Бэк-Офис» перед внесением изменений!
124 )))
125
126 Описание параметров для настройки работы с КС 5:
127
128 * **TransactionOnOpenShift** – передавать данные по текущей открытой смене (0 - не передавать, **1 - передавать**)
129 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
130 * **ExchangeList** – список абонентов с которыми обменивается СНК-АЗС и формат данных для обмена, заполняется автоматически, при настройке абонентов в «Бэк-Офисе» (см. п. 6.1)
131 * **AutoReceiveData** – автоматический прием полученных в КС данных в «Бэк-Офис» (0 – автоматический прием выключен, **1 - включен**)
132 * **AutoSendData** – автоматически отправлять данные указанным абонентам в указанное время (-1,07:00;-1,08:00; (-1 – всем абонентам, 07:00 – время отправки данных))
133 * **SendOpenShift** – передача открытой смены в «СНК-Офис» (0 - не передавать, **1 - передавать**)
134 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port** из п.5.1)
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152 = 9. Службы КС 5 =
153
154 Существуют отдельные службы КС 5 для различных продуктов СНК:
155
156 * Для «**СНК-АЗС**» - «**СНК-Коммуникационный сервер v5**» (sncexchservice)
157 * Для «**СНК-Офис**» - «**СНК-Коммуникационный сервер v5 СНК-ОФИС**» (sncexchservice.1000)
158 * Для «**СНК-ПЦ**» - «**СНК-Коммуникационный сервер v5 СНК-ПЦ**» (sncexchservice.500)
159 * Для «**СНК-Офис Онлайн**» - «**СНК-ОФИС Онлайн прием КС v5**» (sncexchprocessor)
160 * **Служба сервера NATS** – «**СНК-Коммуникационный сервер v5 NATS**» (nats-server)
161
162
163 = 10. Описание каталогов обмена =
164
165 == 10.1. Каталоги обмена КС 5 ==
166
167 Каталоги обмена КС 5 находятся в папке ##**Data**## и сгруппированы по абонентам. Внутри папки ##**Data**## находится папка с номером абонента, в которой находится папка ##**Packet**##, в которой находятся папки обмена:
168
169 * ##**Cache**## – для работы с принимаемым в данный момент пакетом.
170 * ##**Inbox**## – для входящих пакетов, которые еще не приняты программами СНК.
171 * ##**InboxArchive**## – архив входящих пакетов, сюда перемещаются пакеты из папки Inbox после их принятия в программу СНК.
172 * ##**Outbox**## – для отправляемых в настоящее время пакетов.
173 * ##**OutboxArchive**## – архив исходящих пакетов, сюда перемещаются пакеты из папки Outbox после их отправки другому абоненту.
174
175 [[image:1742374549161-794.png||data-xwiki-image-style-alignment="center"]]
176
177 == 10.2. Каталоги обмена в программах СНК ==
178
179 Каталоги обмена для «СНК-АЗС» находятся в папке **##SNC_AZS\backofficeapp##**.
180
181 Каталоги обмена для «СНК-Офис» находятся в папке **##SNC_OFFICE##**.
182
183 Описание каталогов:
184
185 * ##**OCIN**## – для входящих пакетов
186 * ##**OCIN_W**## – для входящих пакетов, переданных в формате «WIN»
187 * ##**OCIN_W.err**## – для входящих пакетов, переданных в формате «WIN», в процессе распаковки которых произошли ошибки
188 * ##**OCOUT_W**## – для исходящих пакетов, передаваемых в формате «WIN»
189
190
191
192
193
194
195
196