====== DeliveryHatch (настройки сервера доставки) ====== ===== Описание ===== DeliveryHatch (далее DH) - сервер доставки, реализующий механизмы работы с базой гостей, пользовательским интерфейсом и API r-keeper **Поставка:** /domains -Набор веб-страниц, релизующих пользовательский интерфейс /python -Портативная сборка интерпретатора Python (v3.4.4 для поддержки winXP) DeliveryHatch.exe -Исполняемый файл DeliveryHatch.ini -Файл конфигурации сервера Delpyne.dll -Адаптер интерпритатора Python LicSystem.dll -Библиотека системы лицензирования msvcr100.dll -Служебная библиотека RK7XML.dll -Библиотека связи с системой r_keeper v7 Server.bin -Параметры сервера лицензирования sqlite3.dll -Движок файловой базы данных **Модуль DH подлежит обязательному лицензированию.** Подробнее о лицензировании можно прочесть в статье "[[:external:minidlv2:лицензирование|Лицензирование]]" **ВНИМАНИЕ! Для лицензирования модуля необходимо запустить его в оконном режиме (см запуск программы)** **ВНИМАНИЕ! Модуль использует отложенную инициализацию системы лицензирования.\\ При открытии пользовательского интерфейса сразу после запуска ПО, на главном экране будет отображено соответсвующее сообщение.\\** Не рекомендуются выполнять каких либо действий до инициализации системы лицензирования.\\ Кнопки на форме в случае запуска в оконном режиме станут активны спустя 10-15 секунд после запуска программы. **ВНИМАНИЕ! Антивирусы (Касперский, WindowsDefender и другие) могут ругаться на библиотеку LicSystem.dll (а так же и на другие модули).** \\ Связано это с тем что применяется технология обсфускации кода, что вызывает ложные срабатывания со стороны антивирусных программ. Рекомендуется добавить папку с установленной мини-Доставкой в исключения Антивируса. ===== Файл конфигурации ===== В поставку включен текстовый файл конфигурации "DeliveryHatch.ini" посредством редактирования которого и производится настройка модуля DH. **Описание параметров:** DeliveryHatch.ini: [RK] ;IP адрес !КАССОВОГО СЕРВЕРА! rkAddr=192.168.1.100 ;Порт XML интерфейса !КАССОВОГО СЕРВЕРА! rkPort=12501 ;Код стола из справочников rk7 rkTable=1 ;Код станции из справочников для создания заказов rkStation=1 ;Код категории заказа из справочников rk7 для заказов на доставку (может совпадать с rkTACateg) rkDlvCateg=2 ;Код категории заказа из справочников rk7 для заказов на вынос (может совпадать с rkDlvCateg) rkTACateg=1 ;Код интерфейса системы лояльности из справочников rk7 (если в заказах на доставку должна автоматически применяться карта гостя номер которой записан у него в анкете) rkPDSInterface=1 ;Идентификатор (не код!) классификации блюд из редактора меню. Блюда, принадлежащие к любой категории внутри этой классификации ;будут доступны через API (на сайте). Название группы блюд в API (на сайте) = названию категории внутри этой классификации. ;Устаревшее поведение параметра: для версий DeliveryHatch младше, чем v3.0.6.1222 в этом параметре указывался идентификатор категории блюд внутри классификации. rkMenuCateg=3074 ;Идентификатор(не код!) категории блюд из справочников rk7 для пометки блюд как "популярные" rkHitCateg=3585 ;XML порт КАССОВЫХ СТАНЦИЙ (Должен быть одинаковым на всех) rkCashXMLPort=22331 ;Код валюты для приема внешней оплаты заказа (Проходит как предоплата) rkPayCode=1 ;Код причины внесения денег для внешней оплаты rkPayReasonCode=2 ;Фильтровать модификаторы для интернет-заказов по весу (0 - все модификаторы, 1 - только с весом> 0) rkFilterModiWeights=1 ;Параметры уведомлений о новых заказах в Telegram [TELEGRAM] ;Токен Telegram бот`а. Если пусто - уведомления отключены. token= ;Список ID чатов для уведомлений, разделенных запятыми. Поддерживаются группы, супергруппы и личные чаты. chatsToNotify= [SORT] ;Начиная с версии DH v3.0.6.1222 ;Параметры сортировки блюд для API запроса /getmenu ;возможные значения - name - сортировка по имени, code - сортировка по коду ;сортировка категорий (работает только при указании идентификатора КЛАССИФИКАЦИИ в rkMenuCateg) categ=name ;сортировка блюд dish=name [SERVER] ;Порт локального сервера доставки. Должен быть свободен (не занят другим ПО). Этот порт надо открыть в брандмауэре на машине где установлен DH Port=11011 ;Домен сервера (!не трогать!) Domain=delivery ;Callback-url по-умолчанию, не обязательное поле. ;На указанный URL будет отправляться POST JSON уведомление об изменении статуса заказов. ;Указывается в формате: https(s)://IP:PORT/path Status_callback= ;Токены для доступа в API v2. Они же нужны для интеграции с готовым сайтом. Токен нужно придумать самостоятельно. ;Одна строка-один токен. ;Токен обязательно должен заканчиваться символом "=" ;Символ "=" обозначает окончание токена и не принадлежит ему. ;Т.е. в запросах токен использовать БЕЗ знака "=" [APITOKEN] deliverytoken= [LOG] ;Уровень логирования. Больше значение - подробнее логи LogLevel=1 ;Возраст .log файлов для удаления в днях OldLogs=7 ;Логировать используемую оперативную память LogMem=1 ==== Настройки функционала ==== В файле domains\delivery\const\const.py собрана дополнительная конфигурация модуля. # За сколько дней до окончания лицензии выдавать предупреждение (выделяется цветом) lic_warning_days=3; # Использовать ПДС? (1-да, 0-нет) usePDS=1; # Режим отправки электронного чека # (0 - нет, 1 - да, по умолчанию выкл, 2 - да, по умолчанию вкл) eCheck=1; # Использовать Виртуальную клавиатуру? (1-да, 0-нет) useVKB=1; # Интервал работы Доставки (время на которое можно принимать заказы) # Минимальное время на которое можно принять заказ dlvFrom = "10,00"; # чч,мм не меньше чем 00,00 # Шаг времени dlvPeriod = 30; # шаг интервала в минутах # Максимальное время на которое можно принять заказ dlvTo = "23,55"; # чч,мм не больше чем 23,55 # Язык интерфейса (локализация) lng='rus' # lng='en' # Dadata - Подсказки адресов # Описание этих настроек: https://wiki.carbis.ru/doku.php?id=external:minidlv2:dadata # API ключ DADATA_API_KEY = "" # Базовый город для поиска адреса DADATA_BASE_CITY = "Москва" ===== Запуск программы ===== DeliveryHatch.exe поддерживает запуск в качестве настольного приложения и работы в качестве службы.\\ Для запуска приложения в оконном режиме запустите приложение с ключем "/desktop"\\ Этот режим предусмотрен для возможности лицензирования ПО, а так же для случая, если по той или иной причине не возможна работа приложения в фоновом режиме (в режиме службы) DeliveryHatch.exe /desktop Для установки или удаления приложения как службы используйте ключи /install и /uninstall соответственно DeliveryHatch.exe /install /*Установить службу*/ DeliveryHatch.exe /uninstall /*Удалить службу*/ **Установка и удаление службы возможны только с правами администратора** После установки службы необходимо ее запустить через встроенное приложение Windows: "services.msc"\\ Отображаемое имя службы: "Carbis Delivery Hatch"