QR-код и штрихкод: генерация и распознавание

В данной статье расскажем, как генерировать QR-код и штрихкод, а также как с помощью функционала Salebot настроить их распознавание.

Генерация QR-кода

Для генерации QR-кода необходимо воспользоваться функцией с адресом https://store.salebot.pro/function/qrcode_generator

Параметры:

text_for_qr - текст который нужно закодировать.

api_key - ключ API из настроек проекта

Генерация ключа доступа в настройках проекта

Замените #{api_key} на токен из настроек проекта.

Пример:

В поле "URL запроса" пишем https://store.salebot.pro/function/qrcode_generator

В поле JSON параметры пишем:

{"text_for_qr":"Текст для кодирования","api_key":"c16ac0f344480f24541dd78f350297f471b5e25bd15e"}

В поле "Сохраняемые значения" пишем те переменные, которые хотим сохранить (нужный нам URL будет в qr_image_url):

status->status;

qr_image_url->qr_image_url

Ответ: функция возвращает json с параметрами status и qr_image_url

Содержимое qr_image_url
Полученный QR код

Генерация штрихкода

Чтобы сгенерировать штрихкод, необходимо воспользоваться функцией с адресом https://store.salebot.pro/function/barcode_generator

Параметры: text - текст который нужно закодировать. api_key - ключ апи из настроек проекта.

Генерация ключа API

class - класс кода, который необходимо сгенерировать. По умолчанию ea13. Может принимать значения 'code39', 'code128', 'ean', 'ean13', 'ean8', 'gs1', 'gtin', 'isbn', 'isbn10', 'isbn13', 'issn', 'jan', 'pzn', 'upc', 'upca'

without_text - необязательный параметр, если его передать с любым значением, на картинке штрихкод будет отображаться без текста или как на картинке ниже

Замените #{api_key} на токен из настроек проекта.

Пример: {"text":"#{barcode}","api_key":"#{api_key}", "class": "ean13"}

Ответ: функция возвращает json с параметрами status и image_url в случае успеха и error_message в случае неудачи.

Пример запроса с текстом

В примере в переменной barcode лежит текст для кодирования и переменная image_url сразу отправляется в сообщении как картинка.

Пример запроса без текста

Распознавание на фотографии

Вы можете использовать ее для создания бота, который сканирует коды товаров. Полезной особенностью является то, что она также может сканировать QR-коды.

Функция для распознавания штрихкода на фотографии.

Адрес функции: https://store.salebot.pro/function/cv2barcode

Для сканирования фото вам необходимо отправить из блока следующие параметры:

{"photo":"ссылка на штрихкод/qr код или переменная со ссылкой","api_key":"апи ключ из настроек проекта"}

Например, для отправки на сканирование фото, отправленного боту, нужно отправить следующие параметры:

В стрелке -> в поле "Пользователь вводит данные" укажите название переменной attachments.

Пример кода:

{"photo":"#{attachments}","api_key":"eec62fb64bc0107a930ad3c60773b743b0bffa758981"}

Где photo это ссылка на фотографию штрихкода, в нашем случае это переменная содержащая ссылку на фото отправленное боту.

Следующий параметр api_key это ключ, который можно сгенерировать в настройках вашего проекта (Рисунок 2)

Рисунок 2

Функция работает следующим образом. Клиент отправляет боту фото штрихкода, функция пробует его распознать и в случае успеха присылает штрихкод в виде числа и статус операции равен ok:

barcode -> "4500000000567" status -> "ok"

Статус сканирования бывает следующим:

  1. ok - штрихкод распознан

  2. barcode not recognized - штрихкод не распознан

  3. Error image reading - ошибка чтения файла

  4. Error subscription - для вашей подписки не доступен данный функционал

Переменную status можно поставить в виде условия на стрелку и отправлять пользователя в соответствующий блок.

Например, если на стрелке условие перехода переменная “status” и значение “barcode not recognized”, тогда выводим сообщение “Код не распознан, повторите попытку” и отправляем на повторный запрос фото.

Last updated

Was this helpful?