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

Версия 36.1 от Руслан Савельев на 2025/09/22 08:21

Последние авторы
1 == **1. Назначение** ==
2
3 Коммуникационный сервер версии 5 (далее СНК-КС5) – это распределённая система, предназначенная для обеспечения обмена данными в режиме реального времени между программными продуктами СНК: СНК-АЗС, СНК-Офис и СНК-ПЦ.
4
5 == **2. Запуск приложения** ==
6
7 Для запуска приложения используйте один из вариантов:
8
9 {{tabs idsToLabels="tabId1=Запуск ярлыка на рабочем столе, tabId2=Через интернет-браузер"/}}
10
11 (% id="tabId1" %)
12 (((
13 (% class="box" %)
14 (((
15 [[image:1753872619186-150.png||data-xwiki-image-style-alignment="start"]]
16 )))
17 )))
18
19 (% id="tabId2" %)
20 (((
21 (% class="box" %)
22 (((
23 Наберите в браузере ##**localhost:8000**## //(указан порт по-умолчанию)//
24 )))
25 )))
26
27 (% class="box infomessage" %)
28 (((
29 **Перед запуском программы, КС5 должен быть установлен на ПК! (см. п. 6)**
30 )))
31
32 == **3. Интерфейс программы** ==
33
34 Программа открывается в браузере и состоит из следующих элементов:
35
36 * **Адресная строка** - в ней должен быть набран адрес КС //(на рисунке отмечено цифрой 1)//.
37 * **Индикатор состояния подключения** - показывает, есть ли связь с сервером обмена //(на рисунке отмечено цифрой 2)//.
38 * **Вкладки слева** - переключение между вкладками с входящими и исходящими пакетами //(на рисунке отмечено цифрой 3)//.
39 * **Основное окно** - список пакетов в выбранной вкладке, а также настройки //(на рисунке отмечено цифрой 4)//.
40
41 [[image:1742373742661-488.png||data-xwiki-image-style-alignment="center" height="437" width="600"]]
42
43 == **4. Требования к ПО** ==
44
45 * «**СНК-КС**» - 5.2.0 и выше.
46 * «**СНК-АЗС**» - 1.37.37 и выше.
47 * «**СНК-Офис**» - 1.23.2 и выше.
48 * «**СНК-ПЦ**» - 1.113.30 и выше.
49 * Действующая лицензия «**СНК-КС**» на аппаратном или виртуальном HASP-ключе. Лицензия должна отображаться в программе «[[KeyInfo>>doc:Prilozheniia_SNK.SNK-AZS.Informatsiia_po_kliucham_HASP_SNK-AZS.WebHome]]»
50
51 == **5. Информация и структурная схема** ==
52
53 [[image:1742371332756-574.png||data-xwiki-image-style-alignment="center" height="528" width="700"]]
54
55 == **6. Установка СНК-КС-5** ==
56
57 === **6.1. Установка на стороне СНК-АЗС** ===
58
59 Установка СНК-КС5 выполняется при начальной инсталляции СНК-АЗС **или при его обновлении**, для этого необходимо в окне выбора продуктов для установки или обновления установить флажок «Коммуникационный сервер v5».
60 По умолчанию, каталог установки КС5 - ##.\SNC_AZS\exchange##
61
62 [[image:1744190452407-288.png||data-xwiki-image-style-alignment="center"]]
63
64 Если при установке или обновлении установить флажок «Создание ярлыков на рабочем столе», то на рабочем столе появится ярлык «КС СНК АЗС», который будет запускать веб-интерфейс СНК-КС5 (##http:~/~/localhost:8000/##):
65
66 [[image:1744190595783-589.png||data-xwiki-image-style-alignment="center"]]
67
68 === **6.2. На стороне СНК-ПЦ, СНК-Офис, СНК-Офис онлайн** ===
69
70 (% class="box warningmessage" %)
71 (((
72 **Если на ПК с СНК-ПЦ, и СНК-Офис КС5 уже был установлен и настроен для работы с некоторыми ТО, пропустите этот пункт!**
73 )))
74
75 Воспользуйтесь мастером установки СНК-КС5:
76
77 * Закройте все программы СНК-АЗС, СНК-ПЦ, СНК-Офис.
78 * Запустите установочный файл (##snc_cs_update_5_2_2.exe## или файл с более новой версией).
79 * Откроется окно мастера установки, нажмите кнопку «**Далее**».
80
81 [[image:1744190967012-923.png||data-xwiki-image-style-alignment="center"]]
82
83 * Следующее окно показывает список изменений для текущей версии программы, нажмите кнопку «**Далее**».
84
85 [[image:1744191021599-382.png||data-xwiki-image-style-alignment="center"]]
86
87 * В следующем окне выберите, для какой программы нужно установить КС 5 (СНК-ПЦ, СНК-Офис или СНК-Офис онлайн)
88 * Отметьте флажок установки сервера NATS, если он еще не был установлен.
89 * После выбора компонентов нажмите кнопку «**Далее**».
90
91 (% class="box infomessage" %)
92 (((
93 **ПК, на который устанавливается сервер NATS должен иметь статический IP-адрес!**
94
95 Этот адрес нужно указывать при настройке КС во всех программах. Параметр **##nats.host##**
96 )))
97
98 [[image:1744191487368-234.png||data-xwiki-image-style-alignment="center"]]
99
100 * Выберите папку для установки СНК-КС и нажмите кнопку «**Далее**».
101
102 [[image:1744191540621-656.png||data-xwiki-image-style-alignment="center"]]
103
104 == **7. Настройка параметров КС 5** ==
105
106 Указанные параметры настраиваются в каждом установленном КС (например, если используется КС для СНК-АЗС и КС для СНК-Офис, нужно настроить оба КС)
107
108 === **7.1. Используя конфигурационный файл** ===
109
110 Параметры настройки КС 5 сохранены в файле **##.\exchange\SncExchServer.cfg##**
111
112 Описание параметров:
113
114 * **abonent.id** – ID абонента (код абонента, для которого установлен КС5)
115 * **archive.inbox.depth** – Глубина хранения входящих пакетов, дней.
116 * **archive.outbox.depth** – Глубина хранения исходящих пакетов, дней.
117 * **archive.packet.disable** – Отключить сохранение пакетов в архив (true), сохранять – false
118 * **auth.token** – Токен, используется одинаковый токен для всех абонентов.
119 * **http.port** – Порт для обмена с ПО СНК (Бэк-офис, СНК-Офис, СНК-ПЦ). Этот же порт используется для запуска веб-интерфейса в браузере (порт по умолчанию - 8000)
120 * **nats.host** – IP адрес и порт сервера NATS. (порт по умолчанию - 7654)
121 * **nats.timeout** – таймаут обращения к серверу NATS, мс.
122
123 **Для изменения параметров** необходимо:
124
125 * **остановить службу** КС 5, (см. раздел «Службы»).
126 * **изменить и сохранить параметры** в файле.
127 * **запустить службу** КС 5, (см. раздел «Службы»).
128
129 === **7.2. Используя веб-интерфейс** ===
130
131 Воспользуйтесь ярлыком «**КС СНК АЗС**» на рабочем столе или наберите в браузере ##**localhost:8000**##
132
133 * Перейдите на страницу «Настройки», доступные параметры:
134 ** **ID абонента** - код абонента, для которого установлен КС5 (параметр ##abonent.id ##в файле ##SncExchServer.cfg##)
135 ** **Глубина хранения входящих пакетов, дней** – сколько дней хранить входящие пакеты (параметр ##archive.inbox.depth ##в файле ##SncExchServer.cfg##)
136 ** **Глубина хранения исходящих пакетов, дней** – сколько дней хранить исходящие пакеты (параметр ##archive.outbox.depth ##в файле ##SncExchServer.cfg##)
137 ** **Не сохранять пакеты в архив** – отметьте флажок, чтобы не хранить архивы пакетов (параметр ##archive.packet.disable ##в файле ##SncExchServer.cfg##)
138 ** **Токен **– значение токена должно совпадать у всех абонентов, участвующих в обмене (параметр ##auth.token ##в файле ##SncExchServer.cfg##)
139 ** **Строка подключения** – IP адрес и порт сервера NATS (параметр ##nats.host ##в файле ##SncExchServer.cfg##)
140 ** **Таймаут, мс.** – таймаут обращения к серверу NATS (параметр ##nats.timeout ##в файле ##SncExchServer.cfg##)
141 * Нажмите кнопку «**Сохранить**» после изменения настроек.
142
143 [[image:1742374859311-606.png||data-xwiki-image-style-alignment="center" height="355" width="600"]]
144
145 == **8. Настройка СНК-АЗС для работы с КС 5** ==
146
147 **{{id name="nastr_BO"/}}**
148
149 === **8.1. Настройка в программе «Бэк-Офис СНК-АЗС»** ===
150
151 В «[[Бэк-Офис СНК-АЗС>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]» необходимо добавить список абонентов, с которыми будет совершаться обмен, настроить тип передаваемых и принимаемых данных для этих абонентов (СНК-Офис или СНК-ПЦ) и выбрать версию КС, используемую для обмена данными для каждого абонента (КС 4 или КС 5).
152
153 **8.1.1. Запуск окна настроек абонентов**
154
155 * Запустите «[[**Бэк-офис СНК-АЗС**>>doc:Prilozheniia_SNK.SNK-AZS.Bek-ofis_SNK-AZS.WebHome]]».
156 * В строке меню нажмите – «**Обработка**» - «**Обмен данными**» - «**Настройка списка абонентов»**.
157
158 [[image:1742375086353-686.png||data-xwiki-image-style-alignment="center" height="184" width="500"]]Откроется окно «**Абоненты**», здесь находится список абонентов, с которыми производится обмен данными.
159
160 **8.1.2. Описание параметров таблицы абонентов**
161
162 * **Код абонента** – код абонента, с которым производится обмен данными, код нельзя изменить у уже созданного абонента, его можно указать только при создании нового абонента.
163 * **Имя **– наименование абонента, не влияет на обмен, используется только для обозначения абонента в «Бэк-офисе».
164 * **Тип данных** – тип передаваемых абоненту данных («СНК-ПЦ» или «СНК-Офис»).
165 * **Версия КС** – версия КС, используемая абонентом для обмена данными («КС 4» или «КС 5»).
166
167 [[image:1742375171694-926.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.3. Настройка портов для связи «Бэк-Офиса» с КС**
168
169 * **Порт для КС 4** – порт, по которому «Бэк-офис» связывается с КС 4 (по умолчанию 6000).
170 * **Порт для КС 5** – порт, по которому «Бэк-офис» связывается с КС 5 (по умолчанию 8000).
171
172 Для запуска веб-интерфейса КС 5, можно воспользоваться кнопкой «**Открыть КС 5**».
173
174 (% class="box infomessage" %)
175 (((
176 **Внимание!**
177 В настройках КС 5 должен быть указан тот же номер порта, что и в «Бэк-офисе» (параметр ##http.port## в файле ##SncExchServer.cfg##).
178 )))
179
180 **8.1.4. Добавление абонента**
181
182 * В окне «**Абоненты**» нажмите правую кнопку мыши в любом свободном месте окна и выберите «**Добавить**».
183
184 [[image:1742375331377-333.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
185
186 * В строке «**Добавить абонента**» укажите код добавляемого абонента и нажмите кнопку «**ОК**».
187
188 [[image:1742375383319-279.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
189
190 В таблицу будет добавлена новая строка
191
192 * Заполните параметры **Имя**, **Тип данных**, **Версия КС** для созданного абонента (см. п. 6.1.2).
193
194 [[image:1742375454496-878.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]**8.1.5. Удаление абонента**
195
196 * Нажмите правую кнопку мыши на строке с абонентом и выберите «**Удалить**»
197
198 [[image:1742375709359-919.png||data-xwiki-image-style-alignment="center" height="291" width="500"]]
199
200 === **8.2. Настройка конфигурационного файла СНК-АЗС** ===
201
202 Для работы «СНК-АЗС» с КС 5 необходимо настроить параметры в файле## .\SNC_AZS\backofficeapp\**bo_app.snc**##
203
204 (% class="box infomessage" %)
205 (((
206 **Внимание!**
207 Закройте все программы «СНК-АЗС» и «Бэк-Офис» перед внесением изменений!
208 )))
209
210 Описание параметров для настройки работы с КС 5:
211
212 * **TransactionOnOpenShift** – передавать данные по текущей открытой смене (0 - не передавать, **1 - передавать**)
213 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
214 * **ExchangeList** – список абонентов с которыми обменивается СНК-АЗС и формат данных для обмена, заполняется автоматически, при настройке абонентов в «Бэк-Офисе» (см. п. 6.1)
215 * **AutoReceiveData** – автоматический прием полученных в КС данных в «Бэк-Офис» (0 – автоматический прием выключен, **1 - включен**)
216 * **AutoSendData** – автоматически отправлять данные указанным абонентам в указанное время (-1,07:00;-1,08:00; (-1 – всем абонентам, 07:00 – время отправки данных))
217 * **SendOpenShift** – передача открытой смены в «СНК-Офис» (0 - не передавать, **1 - передавать**)
218 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port**)
219
220 == **9. Настройка СНК-Офис для работы с КС 5** ==
221
222 === **9.1. Настройка конфигурационного файла СНК-Офис** ===
223
224 Для работы «СНК-Офис» с КС 5 необходимо настроить параметры в файле ##.\SNC_OFFICE\**bo_app.ini**##
225
226 (% class="box infomessage" %)
227 (((
228 **Внимание!**
229 Закройте программу «СНК-Офис» перед внесением изменений!
230 )))
231
232 Описание параметров для настройки работы с КС 5:
233
234 * **UseExchangeServer** – использовать КС для передачи данных (0 - не использовать, **1 - использовать**)
235 * **AutoReceiveData** – автоматический прием полученных в КС данных (0 – автоматический прием выключен, **1 - включен**)
236 * **ExchangeSrvPortExt** –порт для связи с КС 5 (значение параметра **http.port** из п.5.1) (**этот параметр нужно добавить, с номером порта, если его нет**)
237
238 === **9.2. Настройка формата передачи данных для ТО** ===
239
240 Для каждой ТО необходимо выбрать версию КС, используемую ТО для обмена данными. Для этого:
241
242 * Откройте раздел «**Справочники**».
243 * Выберите «**Точки обслуживания**»
244 * На нужной ТО нажмите правой кнопкой мыши и выберите «**Редактировать**»
245
246 [[image:1742376031179-997.png||data-xwiki-image-style-alignment="center" height="312" width="600"]]
247
248 Откроется окно «**Редактирование ТО**».
249
250 * Перейдите на вкладку «**Обмен данными**».
251 * В параметре «**Использовать СНК-КС**» выберите «**КС 5**».
252 * Нажмите кнопку «**ОК**» для сохранения параметров.
253
254 [[image:1742376080218-224.png||data-xwiki-image-style-alignment="center" height="440" width="350"]]
255
256 == **10. Настройка СНК-ПЦ для работы с КС 5** ==
257
258 === **10.1 Установка КС5 для ПЦ** ===
259
260 === В СНК-ПЦ зайдите в меню – «**Настройка**» – «**Конфигурация**». ===
261
262 В разделе «**Приписка проекта**» добавьте параметр «**IP-Адрес:порт Коммуникационного Сервера - 5**», для этого:
263
264 [[image:1742376299785-470.png||data-xwiki-image-style-alignment="center" height="333" width="700"]]
265
266 * Выберите заголовок проекта в конфигурации.
267 * Слева нажмите кнопку «**Экспорт**». Из выпавшего списка выберите «Импорт выборочных настроек (с пополнением)»
268
269 [[image:1742376339853-759.png||data-xwiki-image-style-alignment="center" height="332" width="700"]]
270
271 Откроется окно файлового проводника.
272
273 * Зайдите в каталог «**sncPC**» и выберите файл «**IP-Адрес и порт КС5**»
274 * Нажмите кнопку «**Открыть**»
275
276 [[image:1742376379869-231.png||data-xwiki-image-style-alignment="center" height="520" width="700"]]
277
278 * После добавления параметра укажите настройки КС5 в правом окне в строке «**Значение**» в формате ##ipv4:порт## (например ##localhost:8000##).
279 * Нажмите кнопку «**Принять**» и перезапустите ПЦ.
280
281 === **10.2 Установка КС5 для определенной ТО** ===
282
283 * После перезапуска ПЦ выберите в меню «**Справочники**» - «**Точки обслуживания**»
284
285 [[image:1742376449142-544.png||data-xwiki-image-style-alignment="center" height="353" width="700"]]
286
287 * Выберите нужную ТО и нажмите кнопку «**Ограничения**» слева.
288
289 [[image:1742376495608-296.png||data-xwiki-image-style-alignment="center" height="327" width="700"]]
290
291 * В открывшемся окне выберите строку «**Настройка**», и нажмите кнопку «**Значения**».
292
293 [[image:1742376541541-400.png||data-xwiki-image-style-alignment="center" height="256" width="700"]]
294
295 * В открывшемся окне раскройте раздел «Режим обмена данными», нажав на **+**.
296 * Флажок «**Обмен СНК-КС ?**» должен быть **убран**.
297 * Флажок «**Обмен СНК-КС 5?**» должен быть **установлен**.
298 * Нажмите кнопку «**Принять**»
299
300 [[image:1742376578109-329.png||data-xwiki-image-style-alignment="center" height="362" width="500"]]
301
302 == **11. Службы КС 5** ==
303
304 Существуют отдельные службы КС 5 для различных продуктов СНК:
305
306 * Для «**СНК-АЗС**» - «**СНК-Коммуникационный сервер v5**» (sncexchservice)
307 * Для «**СНК-Офис**» - «**СНК-Коммуникационный сервер v5 СНК-ОФИС**» (sncexchservice.1000)
308 * Для «**СНК-ПЦ**» - «**СНК-Коммуникационный сервер v5 СНК-ПЦ**» (sncexchservice.500)
309 * Для «**СНК-Офис Онлайн**» - «**СНК-ОФИС Онлайн прием КС v5**» (sncexchprocessor)
310 * **Служба сервера NATS** – «**СНК-Коммуникационный сервер v5 NATS**» (nats-server)
311
312 == **12. Описание каталогов обмена** ==
313
314 === **12.1. Каталоги обмена КС 5** ===
315
316 Каталоги обмена КС 5 находятся в папке ##**Data**## и сгруппированы по абонентам. Внутри папки ##**Data**## находится папка с номером абонента, в которой находится папка ##**Packet**##, в которой находятся папки обмена:
317
318 * ##**Cache**## – для работы с принимаемым в данный момент пакетом.
319 * ##**Inbox**## – для входящих пакетов, которые еще не приняты программами СНК.
320 * ##**InboxArchive**## – архив входящих пакетов, сюда перемещаются пакеты из папки Inbox после их принятия в программу СНК.
321 * ##**Outbox**## – для отправляемых в настоящее время пакетов.
322 * ##**OutboxArchive**## – архив исходящих пакетов, сюда перемещаются пакеты из папки Outbox после их отправки другому абоненту.
323
324 [[image:1742374549161-794.png||data-xwiki-image-style-alignment="center"]]
325
326 === **12.2. Каталоги обмена в программах СНК** ===
327
328 Каталоги обмена для «СНК-АЗС» находятся в папке **##SNC_AZS\backofficeapp##**.
329
330 Каталоги обмена для «СНК-Офис» находятся в папке **##SNC_OFFICE##**.
331
332 Описание каталогов:
333
334 * ##**OCIN**## – для входящих пакетов
335 * ##**OCIN_W**## – для входящих пакетов, переданных в формате «WIN»
336 * ##**OCIN_W.err**## – для входящих пакетов, переданных в формате «WIN», в процессе распаковки которых произошли ошибки
337 * ##**OCOUT_W**## – для исходящих пакетов, передаваемых в формате «WIN»
338
339