Перейти к содержанию

Параметры настройки агента r_keeper

Настройки агента разложены по трём уровням:

Уровень Где Кто меняет
Подключение sidecar.yaml рядом с sidecar.exe заполняется командой enroll, правится вручную в редких случаях
Секреты secrets.bin только команды enroll и set-rk7-creds, файл зашифрован
Рабочие параметры приходят с сервера Брони настраиваются в личном кабинете, выезд на площадку не нужен

Обычно править sidecar.yaml не требуется

Интервалы, подробность журнала и служебные коды r_keeper удобнее задавать в личном кабинете: они доставляются агенту автоматически и переопределяют локальные значения.

После правки sidecar.yaml перезапустите службу:

.\sidecar.exe stop; .\sidecar.exe start

Подключение к Брони

Параметр По умолчанию Описание
backend.baseUrl (из enroll) Адрес сервера Брони, обычно https://broni.io.

Подключение к r_keeper

Параметр По умолчанию Описание
rk7.host (из enroll) Адрес кассового сервера r_keeper. Если агент стоит на том же сервере — 127.0.0.1.
rk7.port 15151 Порт XML-интерфейса midserv.
rk7.tlsFingerprint (из enroll) Отпечаток TLS-сертификата кассового сервера, запомненный при привязке. Агент соединяется только с этим сертификатом. Вручную не редактируется — при смене сертификата выполните set-rk7-creds --repin.

Интервалы опроса

Резервные значения на случай, если настройки с сервера ещё не получены.

Параметр По умолчанию Описание
intervals.checkinSeconds 20 Как часто агент выходит на связь с Брони, в секундах. При недоступности сервера интервал автоматически увеличивается.
intervals.pollSeconds 7 Как часто агент опрашивает открытые заказы в r_keeper, в секундах.

Обновления

Параметр По умолчанию Описание
updates.manifestUrl (адрес Брони) Адрес сведений о последней версии агента. Агент сверяет свою версию раз в 6 часов и пишет предупреждение в журнал, если устарел. Самообновления нет. Пустое значение отключает проверку.

Служебные коды r_keeper

Коды, от имени которых агент создаёт и отменяет заказы. Значения по умолчанию подходят типовой конфигурации r_keeper; при расхождении их проще задать в личном кабинете — доставленные с сервера значения имеют приоритет.

Параметр По умолчанию Описание
rk7Defaults.stationCode 1 Код станции, от имени которой создаются заказы.
rk7Defaults.creatorCode 4 Код сотрудника — создателя заказа.
rk7Defaults.managerCode 2 Код менеджера, требуемый при отмене заказа.
rk7Defaults.deleteReasonCode 2 Код причины удаления, используемый при отмене заказа.
rk7Defaults.guests 2 Количество гостей по умолчанию, если бронь его не задаёт.

Полный вид файла

Ниже — актуальный набор параметров ровно в том виде, в каком его читает агент версии 0.1.0. Файл сформирован из исходного кода при сборке этой страницы.

sidecar.yaml
# sidecar.yaml — файл создаётся командой `sidecar.exe enroll` рядом с sidecar.exe.
# Здесь показан полный набор ключей; править вручную нужно редко.
# Значения по умолчанию взяты из DefaultBootstrap() в internal/config/config.go.
backend:
  # Базовый адрес Брони. Заполняется при enroll.
  baseUrl: https://broni.io
rk7:
  # Кассовый сервер r_keeper 7 (midserv) и порт его XML-интерфейса.
  host: 127.0.0.1
  port: 15151
  # SHA-256 сертификата midserv, зафиксированный при enroll (TOFU).
  # Меняется только командой `sidecar.exe set-rk7-creds --repin`.
  tlsFingerprint: ""
intervals:
  # Резервные значения: рабочие интервалы приходят с сервера при check-in.
  checkinSeconds: 20
  pollSeconds: 7
updates:
  manifestUrl: https://storage.yandexcloud.net/broni-dist/rkeeper-sidecar/stable/manifest.json
rk7Defaults:
  # Коды r_keeper для служебных операций с заказами. Обычно приходят с сервера.
  stationCode: "1"
  creatorCode: "4"
  managerCode: "2"
  deleteReasonCode: "2"
  guests: 2

Служебные файлы рядом с агентом

Эти файлы агент ведёт сам. Редактировать их не нужно.

Файл Назначение Можно ли удалять
secrets.bin пароль r_keeper и токен площадки, шифрование средствами Windows (DPAPI, привязка к машине) нет — потребуется повторная привязка
data\remote-config.json последние настройки, полученные с сервера да, восстановится при следующем выходе на связь
data\state.db кэш отслеживаемых заказов да, восстановится автоматически
data\spool\pending\ счета и события, ожидающие отправки нет — потеряются данные для расчёта комиссии
data\spool\sent\ подтверждённые отправки, чистятся через 7 дней да
data\spool\dead\ отклонённые сервером записи, нужны для разбора да, но лучше сначала передать в поддержку
logs\sidecar.log журнал, ротация, хранение 7 дней да

Перенос агента на другой сервер

secrets.bin расшифровывается только на той машине, где был создан. Скопировать папку на другой сервер и запустить агент не получится — нужна новая привязка с новым кодом. Запросите его в личном кабинете.