Конфигурация
Параметры LP Drive задаются в конфигурационном файле (lpdrive.ini) при инициализации. Изменение параметров вступает в силу после перезапуска. Ниже перечислены ключевые параметры, актуальные для интеграции ПО ККМ.
Транспортный канал
| Параметр | По умолчанию | Описание |
|---|---|---|
transport.mode | tcp | Режим транспорта: tcp (TCP/IP) или com (COM-порт). Одновременно активен только один транспорт. |
tcp.host | 127.0.0.1 | IP-адрес IKR. |
tcp.port | 9090 | TCP-порт IKR. |
tcp.connect_timeout | 5000 | Таймаут подключения (мс). |
tcp.read_timeout | 10000 | Таймаут чтения (мс). |
tcp.reconnect_enabled | true | Автоматическое переподключение при потере связи. |
tcp.reconnect_delay | 3000 | Задержка между попытками переподключения (мс). |
com.port | COM3 | Имя COM-порта. На Linux: /dev/ttyUSB0 или аналог. |
com.baudrate | 115200 | Скорость COM-порта (бит/с). |
com.parity | none | Контроль чётности: none, even, odd. |
com.stopbits | 1 | Количество стоп-битов. |
com.databits | 8 | Количество бит данных. |
Служебные параметры
| Параметр | По умолчанию | Описание |
|---|---|---|
service.handshake_timeout | 5000 | Таймаут установки соединения (мс). |
service.handshake_retry | 3 | Количество повторных попыток handshake. |
service.ping_interval | 60 | Интервал heartbeat-пингов (с). |
service.ping_timeout | 6 | Таймаут ответа на ping (с). |
ack.timeout | 3000 | Таймаут ожидания ACK (мс). |
ack.resend | 3 | Количество повторных отправок при отсутствии ACK. |
transport.retry_timeout | 3000 | Таймаут ожидания подтверждения (мс) перед повтором. |
transport.retry_max | 3 | Максимальное число повторных передач. |
Internet Access
Функция доступна только при internet.mode = enabled. По умолчанию отключена.
При включённом режиме LP Drive обеспечивает интернет-доступ для POS-терминала через канал ККМ. Транзакционный трафик имеет приоритет над интернет-трафиком — платёжные операции никогда не задерживаются из-за сетевых запросов терминала.
| Параметр | По умолчанию | Описание |
|---|---|---|
internet.mode | disabled | Режим интернет-шлюза: disabled (отключён) или enabled (включён). |
internet.connect_timeout | 10000 | Таймаут установления внешнего TCP-соединения (мс). |
internet.read_timeout | 30000 | Таймаут чтения ответа от внешнего хоста (мс). |
internet.max_packet_size | 65535 | Максимальный размер одного пакета данных (байт). |
internet.queue_max | 1000 | Максимум пакетов в очереди. При переполнении фиксируется NET-015. |
internet.receive_buffer_max | 1048576 | Максимальный размер буфера входящих данных на одно соединение (байт). При превышении — NET-017. |
internet.max_inflight | 16 | Максимум неподтверждённых пакетов на одно соединение. |
internet.default_port | 443 | Порт по умолчанию для исходящих соединений терминала. |
Управление файлами логов
LP Drive автоматически управляет файлами логов. Ротация не прерывает активную транзакцию — переключение файла выполняется только после завершения операции. Архивные файлы именуются по шаблону: LPDrive.YYYYMMDD_HHMMSS.log
| Параметр | По умолчанию | Описание |
|---|---|---|
log.file_length | 75000000 | Максимальный размер активного файла лога (байт) до ротации. |
log.rotate_count | 10 | Максимальное количество хранимых архивных файлов. |
log.retention_days | 30 | Срок хранения архивных файлов (суток). 0 — без ограничения по времени. |
log.max_total_size | 0 | Максимальный суммарный объём архивов (байт). 0 — без ограничения. Должен быть ≥ log.file_length или 0. |
log.max_transactions | 0 | Ротация после N завершённых транзакций. 0 — без ограничения. |
log.compress | false | Сжимать архивные файлы (gzip) после ротации. |
log.cleanup_on_start | true | Применять правила удаления при старте LP Drive. |
Пример lpdrive.ini
Минимальная рабочая конфигурация для TCP-транспорта:
; LP Drive - минимальная конфигурация
[transport]
mode = tcp
[tcp]
host = 127.0.0.1
port = 9090
connect_timeout = 5000
read_timeout = 10000
reconnect_enabled = true
reconnect_delay = 3000
[log]
file_length = 75000000
rotate_count = 10
retention_days = 30
compress = false
cleanup_on_start = true
; Интернет-шлюз — отключён по умолчанию
; [internet]
; mode = enabled
; connect_timeout = 10000
; read_timeout = 30000
Конфигурация для COM-транспорта (заменить секцию [transport] и добавить [com]):
[transport]
mode = com
[com]
port = COM3
baudrate = 115200
parity = none
stopbits = 1
databits = 8