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