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