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