Виртуальная дисконтная карта на OneScript

17.07.18

Разработка - OneScript

В статье рассмотрены возможности http-сервисов OneScript для создания бизнес-приложений, на примере демонстрационной конфигурации, реализующей функционал виртуальной дисконтной карты.

Скачать исходный код

Наименование Файл Версия Размер
Виртуальная дисконтная карта на OneScript:
.cf 9,49Mb
7
.cf 9,49Mb 7 Скачать

Введение

Основными целями различных программ лояльности, являются привлечение новых и удержание существующих клиентов, а также выявление их предпочтений и потребностей. Одной из важных задач в этой истории, является идентификация клиентов и их покупок. В настоящее время, для ее решения широко используются различные дисконтные или клубные карты, которые как правило представляют собой пластиковые карты, имеющие уникальный идентификатор клиента. Поскольку заказ, производство, учет, распространение и обмен классических пластиковых карт сопряжены с определенными затратами, а большинство коммуникаций перекочевали в цифровой формат, все большей популярностью пользуются “виртуальные” или “цифровые” карты. Данный вид карт может иметь совершенно разный вид, начиная от мобильного приложения, где хранятся фотографии пластиковой карты, заканчивая специализированными мобильными приложениями и сервисами.

Поскольку создание и сопровождение специализированных мобильных приложений, интегрированных с учетной системой достаточно дорого, мы попробуем создать простой сервис, реализующий функционал “виртуальной” карты покупателя, используя в качестве платформы http-сервисы OneScript.

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

Компьютер под управлением Windows 7 или более поздней версии.

Установленный .NET Framework версии 4.5.2 или более поздней.

Платформа 1С:Предприятие версии не ниже 8.3.6.1977.

Описание

Приложение пользователя (frontend)

Дабы не создавать свое собственное мобильное приложение под различные платформы, в качестве front-end приложения, с которым будет работать пользователь, было использовано готовое приложение, а именно – клиент мессенджера Telegram. Данный мессенджер предоставляет достаточно богатый функционал, и несмотря на  запрет в нашей стране, является достаточно популярным и активно используется.

Серверная часть (backend)

Поскольку наш сервис должен быть полностью автоматическим, в качестве технологии общения с клиентом был использован функционал ботов Telegram. Соответственно функционал нашего бота был реализован с использованием http-сервисов OneScript.

Подключение к сервису

Предварительным условием для использования сервиса, является наличие установленного клиента Telegram на смартфоне клиента.

Подключение к сервису представляет собой поиск и запуск соответствующего бота. В нашем демонстрационном сервисе – это бот ВКартаДемо.

 

Функционал сервиса

Наш демонстрационный сервис должен обеспечивать нижеследующие функции:

Создание новой “виртуальной” карты

Данная функция служит для регистрации пользователя как клиента в учетной системе, генерации идентификатора карты покупателя, а также сбора первичной информации (в нашем демонстрационном сервисе – это номер телефона пользователя).

 

Получение идентификатора карты для совершения покупок

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

 

В качестве наиболее простого идентификатора карты, допускающего автоматическую обработку кассовым оборудованием, был использован линейный штриховой код.

 

Детали реализации

Поскольку в сети имеется достаточно много информации на тему создания и настройки ботов Telegram, в дальнейшем будут описаны только ключевые моменты, специфичные для настоящей демонстрационной конфигурации.

Telegram

Для оповещения http-сервиса об обновлениях используется механизм web-хуков.

Базовая конфигурация

Настоящая демонстрационная конфигурация создана на основе каркасной конфигурации для создания web-приложений. Вопросы начальной настройки детально описаны в вышекуазанной, а также в этой публикациях.

Библиотеки

Для работы с json используется немного доработанная библиотека на основе этой публикации.

Для генерации изображений штриховых кодов используется демонстрационная библиотека для OneScript, созданная на основе этой публикации. Данная библиотека оформлена в виде обработки. Ее объекты находятся в подсистеме БиблиотекаDemoBarcodeLib. Для разработки и отладки в среде 1С:Предприятие, необходимо выгрузить и разархивировать содержимое общего макета COMОбъектБиблиотекаDemoBarcodeLib, а также зарегистрировать библиотеку DemoBarcodeLibCom.dll как com-объект аналогично тому, как описано в этой публикации.

Также, для выполнения некоторых служебных функций используется библиотека HttpMeans.

Начальная настройка

Необходимо вставить токен Вашего бота в функцию ПолучитьТокен, которая расположена в общем модуле СлужебныеФункции.

Необходимо исправить url на Ваш в функции ПолучитьUrlФайла, которая расположена в общем модуле СлужебныеФункции.

С целью усиления безопасности, необходимо добавить к имени файла vcard.os (или в свойстве корневого url http-сервиса строковое представление guid).

Заключение

Вот таким-вот нехитрым способом мы создали простейший бюджетный сервис, реализующий функционал “виртуальной” карты покупателя, а также организовали канал для коммуникаций с клиентами. Данный сервис, без особых проблем можно интегрировать с учетной системой на платформе 1С:Предприятие.

Протестировать сервис можно запустив telegram-bot ВКартаДемо.

Надеюсь, данная статья поможет вам в реализации различных бизнес-задач.

 

См. также

Автодокументация модулей: Markdown, Osparser и Docusaurus

DevOps и автоматизация разработки OneScript Системный администратор Программист Стажер Бесплатно (free)

Рассмотрим создание самоформирующейся документации через комментарии и соглашения: как это сделать и зачем, с описанием полного цикла от исходников конфигурации до странички в интернете

вчера в 05:00    1147    bayselonarrend    2    

35

Интерактивные TUI элементы в OneScript

OneScript Программист Стажер Бесплатно (free)

Поговорим про меню, спиннеры, прогресс-бары и прочие свистелки для CLI приложений на OneScript

20.05.2024    2257    bayselonarrend    18    

70

Особенности национального Workflow: Github Actions и OneScript

Групповая разработка (Git, хранилище) OneScript Системный администратор Программист Бесплатно (free)

Сегодня мы посмотрим на Github Actions - встроенный инструментарий Github для автоматизации рабочих процессов. Разберем, что это такое, зачем и причем тут OneScript.

25.03.2024    1875    bayselonarrend    3    

41

TCP прокси-сервер хранилища конфигурации 1С

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) OneScript Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Продолжение истории с прокси хранилища, но уже не на HTTP, а на TCP и без падений по памяти веб-сервера. Проверяем комментарии хранилища, вызываем веб-хуки, старты пайплайнов, gitsync по событию помещения версии в хранилище. И все это полностью на знакомом и понятном OneScript.

17.01.2024    3623    kamisov    19    

62

Что такое ОСень? Или как лучшие практики из мира Java прижились в экосистеме OneScript

OneScript Программист Бесплатно (free)

Думаете, на OneScript неудобно создавать сложные инфраструктурные приложения? Ошибаетесь. Благодаря фреймворку ОСень за последний год экосистема библиотек, упрощающих написание собственных приложений, существенно выросла. Расскажем о самых передовых технологиях OneScript. Спойлер: будет много рефлексии, мета-аннотаций, желудей, напильников и дубов с завязями.

21.11.2023    3600    NikitaIvanchenko    16    

48

Библиотека создания клиент-серверных приложений для сценарного языка OneScript

Инструментарий разработчика Работа с интерфейсом OneScript Программист Россия Бесплатно (free)

Представленная библиотека позволяет создать многопоточный TCP сервер, к которому может одновременно подключиться множество TCP клиентов с удаленных компьютеров. Эти клиенты могут вызывать методы скриптов как на сервере, так и на других клиентах. Методы будут выполнены в контексте скрипта на удаленной машине. Возможна передача параметров в метод и получение результата. Для TCP клиента можно создать графический интерфейс с большим набором элементов управления, модальными диалоговыми окнами и с обработкой событий.

31.07.2023    2249    ahyahy    8    

32

Получаем статистику по git-репозиторию в разрезе разработчиков

DevOps и автоматизация разработки Групповая разработка (Git, хранилище) OneScript Программист Бесплатно (free)

Итак! Представим, что наступил момент, когда разработка через исходный код реализована на предприятии в полном объеме. Мы разрабатываем в EDT или конфигураторе (но выгружаем конфигурацию в исходный код), версионируем внешние отчеты и обработки и расширения, собираем релизы, проверяем код статическим анализом, в разработке царит гармония и мир. Красота! Но менеджерам этого мало, всегда хочется чего-то еще, и вот мне прилетает задача - дай статистику по вкладу в код каждого разработчика.

13.03.2023    4316    ardn    3    

27

Прокси хранилища 1С (IIS, OneScript)

Групповая разработка (Git, хранилище) OneScript DevOps и автоматизация разработки Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Избавляемся от версионной зависимости, проверяем комментарии, вызываем веб-хуки, делаем красивые пути. И все это на привычном IIS и понятном OneScript.

08.12.2022    8509    kamisov    57    

95
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. webester 26 19.07.18 04:36 Сейчас в теме
Один косяк - сканеры через раз читают штрихкоды с экрана телефона
2. blackhole321 1309 19.07.18 08:45 Сейчас в теме
(1)возможно, ситуацию может улучшить изменение цветовой схемы, скажем зелёные линии на красном фоне
3. biruk 7 19.07.18 10:51 Сейчас в теме
(1)Ну не скажите - смотря какой сканер. Современные модели достаточно хорошо с экрана читают.
4. webester 26 23.07.18 07:06 Сейчас в теме
(3)Мы используем проверенные ms5145. Иногда приходят умники которые сосканировали карту в телефон и предлагают считать штрихкод из картинки приложения на телефоне. Работает через раз. Про чиперлабы я вообще молчу, эти и бумагу отвратительно читают. Надо сказать дело не только в сканере но и в экране мобильного телефона.
5. blackhole321 1309 23.07.18 07:40 Сейчас в теме
(4)ms5145 - это лазерный однополосный сканер. Они действительно плохо сканируют с экрана. Для сканирования с экрана телефона нужно использовать image сканер.
6. biruk 7 23.07.18 17:14 Сейчас в теме
(5)да, абсолютно согласен. Лазерные с экрана или вообще не читают, или читают плохо. image решает эту проблему...
7. Tarlich 116 05.12.23 14:13 Сейчас в теме
Прошу уточнить , не увидел . на этапе создания карты есть возможность запросить ФИО ДР Тел обладателя ?
8. blackhole321 1309 05.12.23 20:08 Сейчас в теме
(7) В данном примере - нет, запоминается только номер телефона, однако, не вижу препятствий для получения фамилии, имени etc.
Оставьте свое сообщение