Описание
Модуль PhotoControl позволяет собирать снимки добавляемых товаров. При включении модуля автоматически включается модуль WeightControl.
Сбор изображений по умолчанию выполняется для всех товаров. Настройками можно задать сбор изображений только для тех товаров, у которых задан tag.
Первый снимок товара выполняется при добавлении в чек, второй выполняется после фиксации веса товара на контрольных весах.
Сохраненные изображения товаров чека расположены в /opt/sst-sco/data/photocontrol до закрытии чека.
При закрытии чека выполняется отправка собранных данных в формате json:
{
"check_id": "230322704430000004102752",
"images": {
"08e22149-38ce-4617-8540-d51c4942865b": {
"data": "<изображение в base64>",
"timestamp": "2022-09-14T10:27:53.069"
},
"3065d68a-31cf-43a4-8729-44b0614c2249": {
"data": "<изображение в base64>",
"timestamp": "2022-09-14T10:27:54.514"
}
},
"positions": [
{
"adds": [
{
"after": "3065d68a-31cf-43a4-8729-44b0614c2249",
"before": "08e22149-38ce-4617-8540-d51c4942865b",
"quantity": 1
}
],
"barcode": "10186",
"fractional": false,
"id": 1,
"name": "КЕФИР БМК 2.5% 400Г П/П",
"price": 1760,
"quantity": 1
}
],
"timestamp": "2022-09-14T10:28:06.889"
}
Где:
check_id– идентификатор документа;imagesсодержит названия и данные сохраненных изображений.
Изображения отправляются в форматеbase64(ключdata).
По настройке может указываться время создания снимка (ключtimestamp);positionsсодержит данные всех позиций чека;timestamp– время закрытия чека.
У positions передаются ключи:
adds– содержит:after– название снимка, выполненного после добавления (только у товара с фотоконтролем);before– название снимка, выполненного перед добавлением (только у товара с фотоконтролем);quantity– добавленное количество товара;
barcode– штрих-код товара;fractional– флаг весового товара;id– номер позиции в чеке;name– имя товара;price– цена товара в копейках за единицу;quantity– количество в позиции. Указывается штучное значение или вес в граммах.
Если не удалось получить снимок с камеры, то в data и timestamp данные указаны не будут.
Для сторнированных позиций снимки не отправляются. Если в чеке отсутствуют проверяемые позиции, то отправка json с данными при закрытии чека не выполняется.
Взаимодействие с FindFace
При работе с модулем FindFace в json дополнительно указывается ключ findface, содержащий:
events– событие, в котором передается id события (ключid) и id совпавших списков наблюдения (ключmatched_lists)image– изображение в форматеbase64
{
"check_id": "230322704720000011100452",
"findface": {
"events": [
{
"id": "8",
"matched_lists": [
"5"
]
}
],
"image": "<изображение в base64>"
},
"images": { ...
Настройка
Для работы необходимо подключить USB-камеру к кассе и настроить модуль.
Проверить получаемое с камеры отображение можно в меню "Тест оборудования" - "Тест камеры фотоконтроля" (с командой PHOTOCONTROL_TESTCAMERA, для интеграции с Artix указывается SST_PHOTOCONTROL_TESTCAMERA).
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/photocontrol.ini, секция [PhotoControl], настройки модуля фотоконтроля товаров | ||
| enable |
| Включение модуля |
| tag | тэг проверяемых товаров | Отправлять фотографии только для товаров с этим тэгом По умолчанию отправляются фотографии для всех товаров |
| url | IP-адрес или URL | Адрес или URL сервера |
| sendPhotoTime |
| Отправлять время сделанных фото |
| camera |
по умолчанию используется первая найденная | Камера. В root.log пишется модель и адрес каждой найденной камеры |
| resolution | Список доступных разрешений камеры по умолчанию 640x480 | Разрешение получаемого изображения. Список доступных разрешений указывается в root.log при подключении камеры |
При возникновении ошибок с камерой консультанту отобразится ошибка:
- при запуске кассы во время инициализации,
- в приветствии, если ошибка возникла в процессе работы кассы.
При возникновении ошибок соединения с сервером фотоконтроля ошибка отображается во время инициализации кассы.
Установка тэга товарам (Artix SCO)
В интеграции для установки тега товарам нужно:
- создать каталог товаров, добавление которых требуется проверять;
- в секции
[SstSco.tags]указать id каталога и задать тэг.
| Наименование | Возможные значения | Описание |
|---|---|---|
Файл /linuxcash/cash/conf/ncash.ini.d/sstsco.ini, секция [SstSco.tags], настройки интеграции с SCO | ||
| catalogid | тэг или тэги через запятую | Установка тэгов для товаров в каталоге |
[SstSco.tags] 1 = weighing 2 = weighing, lowPrice