Перейти к основному контенту

RkQpmSender - Полная инструкция

Разработчик: Виталий Тепляков

Описание

Приложение RkQpmSender предназначено для передачи всех проданных на кассе блюд и комбо компонентов в QPM.

QPM - кухонный монитор, контролирующий оперативное приготовление компонентов блюд, такие как:

  1. Наггетсы
  2. Курица
  3. Картошка и т.д.

Пользовательский сценарий:

  1. Кассир формирует заказ
  2. После оплаты заказа только блюда и комбо компоненты передаются в QPM
  3. QPM на своей стороне на основании файла, переданного рестораном фильтрует блюда, которые нужны для приготовления на экране

Системные требования

Память (RAM) от 1 ГБ
Процессор (CPU) от 2 ядер с тактовой частотой от 1 ГГц
Пропускная способность сети от 1 Мбит/c на точку
Ping до 100 мс
OS Windows 10 и выше
NET Core 7.0 и выше
Версия r_keeper_7

От 7.7.0.212

Схема взаимодействия

Установка

  1. Распаковать архив qpm v2.rar
  2. Запустить RkQpmSender.exe с параметром /install

    изображение.png


    Выйдет сообщение об успешной установке службы

    изображение.png


  3. После установки необходимо запустить службу RkQpmSender

    изображение.png

Настройки в r_keeper_7

Для каждого кассового сервера, отправляющего данные по блюдам и комбо-компонентам в QPM, необходимо настроить отправку событий по заказу через HTTP Order Notify

В менеджерской станции открыть: Сервис - Станции и Устройства

В свойствах кассового сервера в секции HTTP Order Notify указать DestURLs

Формат:

http://ip:port/httpNotify

ip - ip-адрес установленного RkQpmSender

port - порт установленного RkQpmsender из hosting.json


изображение.png

После выполнения настроек кассового сервера рекомендуется перезапустить службу кассового сервера

Конфигурация приложения

appsettings.json

Пример конфигурации:

{


  "Qpm": {
    "Url": "http://172.22.3.201:5050",
    "Transliterate": false,


    "SummaryTime": "09:00",
    "Currency": "Rub",

    "Retry": {
      "Count": 4,
      "PauseSecs": 6 
    } 
  },

  // маппинг - rk7 ident станции - DeviceId. Не будет найден - будет проигнорено
  // Если секции Stations здесь не будет, DeviceId будет передаваться как Ident

  "Stations": {
    "15002": "test",
    "15003": "xxx"
  },

  // ident/code
  "ProductMappingType": "ident"

}

Описание параметров:

Параметр Тип Описание
Qpm Массив параметров Настройки для QPM
Url
Строка
URL-адрес сервера QPM, обычно без указания порта
Transliterate bool
Производить транслитерацию кириллицы при передаче в QPM или нет
Stations Массив параметров Настройки маппинга: идентификатор станции к ID устройства в QPM. Секция может отсутствовать
{id r_keeper_7 station}
Строка

Значение - Device ID из системы QPM

Маппинг не обязательный

ProductMappingType Строка

Принимает два значения: ident - использовать идентификатор блюда из r_keeper_7, code - использовать код блюда из r_keeper_7 для передачи в QPM

SummaryTime Строка

Производить отправку выручки за день согласно проставленному значению локально в часах 

Currency Строка

Тип валюты "Rub"

Retry Массив параметров Настройка повторного отправление в QPM в случаи если не пришел успешный ответ 
Count Строка Количество отправок
PauseSecs Строка Таймаут между отправлениями в секундах

hosting.json

Пример конфигурации:

{ "urls": "http://*:5212" }

Описание параметров:

Параметр Тип Описание
urls Строка Настройки порта и адресов, на которых может работать RkQPMSender