Фоновый сервис событий в Simple UI. Релиз Июнь 2021

15.06.21

Разработка - Мобильная разработка

В новом релизе появился постоянно висящий в памяти сервис для обработки внешних событий – штрихкодов, голосового ввода, сообщений от других программ и внутренних процессов. Который может управлять программой поверх стандартных процессов – что то спрашивать голосом, что то озвучивать(ассистент), показывать диалоги, запускать процессы и экраны, отправлять управляющие команды. С помощью этого можно получить многоплановый интерфейс и более удобное взаимодействие с пользователем не только через экран и ввод, но и с помощью событий голосового ввода и других средств взаимодействия. Эта статья является дополнением к основной статье по Simple UI: https://infostart.ru/public/1153616/

В конфигурации можно поставить галку и фоновый сервис будет запускать вместе с программой. Это постоянно висящий процесс, который работает даже когда программа закрыта. Можно настроить его выключение при полном завершении основного приложения либо он может работать даже если основное приложение выгружено из памяти (тогда завершить его можно вручную в шторке уведомлений). Надо сказать что в платформе и так уже есть фоновые сервисы – по расписанию и асинхронное выполнение скриптов питона, но технологически это другие сервисы и функционал у них другой. Это – неубиваемый foreground service к нему у Андроида особое отношение. Кроме того обработчики в этом сервисе и на 1С и на Python, а не только на Python.


Сервис предназначен для приема событий извне или внутри программы и выполнения действий во всей области приложения.

События которые регистрирует сервис:

  1.  события штрихкода Bluetooth в режиме SPP, сканер ТСД через подписку на интент (не HID)
  2.  Голосовой ввод команд в фоне
  3.  Подписка на сообщения от любой другой программы. Например от сканера меток или какого то сервиса.
  4.  Любая команда через встроенный в приложение веб сервис. 
  5.  Любая команда из Экрана или ActiveCV, события из других обработчиков например по расписанию

Виды управления, доступные в обработчике сервиса:

 

  1.  исполнить общую команду без контекста : озвучка текста, звук, тост и т.д. См. «Общие команды» . Все что без контекста будет исполнено даже если приложение закрыто, заснуло. Например Переменные.Вставить(“toast”,”Привет мир”) выведет это сообщение поверх других программ
  2.  диалог поверх любых окон в программе. В любом режиме (во время работы с процессом, в Active CV, просто в меню) будет выведен кастомный модальный диалог, результат нажатия вернется в сервис «onResultPositive», «onResultNegative». Работа с диалогом стандартная. 
  3. запуск голосового ассистента. См. далее Голосовой ассистент.
  4. запустить процесс и экран. Запускает любой процесс и любой экран процесса командой "ShowProcessScreen" в значении надо указать JSON с процессом и экраном. Например так: Переменные.Вставить("ShowProcessScreen","{""process"":""Некий процесс"",""screen"":""Экран 1""}");
  5. сгенерировать событие ввода для экрана или ActiveCV или например для плиточного главного экрана. Т.е. можно передать команду и управление действующему процессу.


Фоновый голосовой ассистент


Это не совсем такой ассистент как Гугл или Алиса, в том плане что активируется он не по голосовой команде, а  по событиям от сервиса – например сканированию штрихкода или каким то другим. Т.е. он слушает микрофон в фоне но после того как получил команду, а не постоянно прослушивает микрофон для активации. 


Основное назначение фонового голосового ввода – освободить руки в моменты, где программа может что то спросить и получить ответ – спросить «да/нет» на заданный вопрос (например, «Завершить приемку?»), спросить количество, спросить готовность начать процесс и т.д. Это несложные для системы распознавания тексты, которые обрабатываются потом в вашем коде 1С или Python. С помощью фонового сервиса создается многоплановый интерфейс – на первом плане экраны или ActiveCV, фоном озвучка и чтение речи и еще поверх могут быть выведены диалоговые элементы. Это локальные вставки голоса и распознавания речи в тех местах где это уместно, а не классический pick-by-voice где голосовой интерфейс полностью заменяет визуальный интерфейс. Например вы можете сказать «покажи план-факт» и она откроет экран «план-факта» на устройстве а не будет перечислять голосом сколько еще осталось сканировать. Т.е. эти вставки дополняют интерфейс, делают его более удобным.  


Управление процессами и экранами


Из фонового сервиса можно запустить любой процесс конфигурации и открыть в нем любой экран с помощью команды ShowProcessScreen. Например можно отсканировать документ и начать работать с ним ничего ен нажимая в меню, отсканировать метку ворот и начать приемку, отсканировать этикетку груза и начать процесс работы с ним. Ну и т.д. Голосовой ассистент может показывать экраны. Сканирование RFID может запустить процесс на ТСД. В общем применений много.


Генерация событий для процессов


В обработчике сервиса можно генерировать события ввода для текущих экранов или шагов Active CV т.е. передавать управление. Например в видео результат распознавания голоса генериует событие для ActiveCV (аналогично можно сделать для экрана) и оно обрабатывается уже в обработчике ввода там. 
Кстати можно генерировать события обновления для плиток главного меню. Можно сделать например конфу с главным меню в виде плиток с количеством отсканированных объектов и обновлять счетчики на плитках со сканера вообще не запуская экраны. Т.е. ходить, сканировать и на плитках будет выводиться «отсканировано столько то и столько то». 


Диалоги в любом месте программы в любое время


Можно получив событие извне вывести модальный диалог (а он полностью переопределяемый – туда можно натолкать все что угодно) поверх люого экрана программы – процесса, меню и active cv. Т.е. например можно вывести вопрос «Примешь задание такое то?»  или наоборот оповещение о том что коллективная сборка заказа подходит к концу.


Фоновый «общий модуль» с возможностью асинхронного выполнения и возврата коллбека отправителю

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

 

Прочие дополнения в релизе

 

 

  • Теперь можно отключать верхний заголовок экрана. Задается на уровне экрана. Актуально для маленьких экранов.
  • В главном меню команды меню влезают в заголовок в зависимости от разрешения. Актуально для маленьких экранов
  • Можно переопределять шапку штрихкодов в ActiveCV – актуально для длинных штрихкодов. Например можно выводить только значащие символы или вообще свою метку. Делается через список "object_caption_list". Например Переменные.Вставить("object_caption_list","[{""object"":""4602193012608"",""caption"":""12608""}]");
  • Можно задавать списки ActiveCV не через «;» а через «>>>» - для случаев когда «;» встречается в штрих-коде
     

мобильная разработка Андроид SimpleUI

См. также

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 1С:Конвертация данных Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 руб.

27.12.2021    38379    109    162    

203

Мобильная разработка Сканер штрих-кода Терминал сбора данных Управляемые формы Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Управленческий учет Платные (руб)

Сбор заказов, инвентаризация, проверка ценников, просмотр полной информации об остатках и ценах со смартфона Онлайн - все это содержит в себе решение 1С "Штрихкод-информер" (штрих-код чекер). Отправка данных со смартфона выполняется либо напрямую в открытую форму документа, отсканировав QR-код, либо в общую корзину учетной системы, не подходя к компьютеру. Кассир или оператор сможет просмотреть список присланных данных и загрузить в любую форму, поддерживающую работу с ТСД. Для работы с мобильным приложением требуется опубликовать HTTP-сервис из поставляемого расширения.

3000 руб.

03.12.2018    59443    193    103    

173

Сканер штрих-кода Терминал сбора данных Мобильная разработка Монитор заказов Оптовая торговля Розничная торговля Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 Мобильная платформа 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Простой мобильный ТСД (терминал сбора данных) сканер для 1С для смартфонов на iOS и Android, не требующий сложных настроек и установки дополнительных программ. Обмен между Вашей 1С и мобильным приложением осуществляется через облачный сервис и расширение конфигурации. Работает с конфигурациями УТ 11, ERP, КА2, Розница 2, Розница 3, УНФ 1.6, УНФ 3.0. Полнофункциональный демо-доступ для своей конфигурации можно запросить в настройках мобильного приложения - все необходимое придет на почту автоматически.

2000 руб.

22.04.2019    97529    591    189    

323

Логистика, склад и ТМЦ Сканер штрих-кода Терминал сбора данных Мобильная разработка Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

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

3450 руб.

28.04.2023    9559    15    0    

9

Мобильная разработка Платформа 1С v8.3 Конфигурации 1cv8 Финансовые услуги, инвестиции Управленческий учет Платные (руб)

Мобильное приложение и конфигурация 1С для автоматической торговли на бирже через API Тинькофф банка. Достаточно задать настройки, нажать «Пуск», и робот сам торгует ежедневно.

7000 руб.

25.05.2022    4716    1    0    

6

Мобильная разработка WEB-интеграция Программист Мобильная платформа Абонемент ($m)

Экспериментальный релиз и простенький скрипт к нему закрывает потребности в любых видах синхронизации между устройствами Simple и между Simple и бек-системами (например 1С). По сути – это очень простой python-скрипт, который можно запустить на доступной машине, сервере или VPS и он будет связывать клиентские устройства между собой и с 1С или другими бек-системами. В самой платформе появилось для этого множество доработок для поддержки стабильного постоянного соединения, докачки больших файлов и работе в фоне. Дополнение к основной статье https://infostart.ru/1c/tools/1153616/

1 стартмани

23.08.2024    1262    6    informa1555    1    

13
Оставьте свое сообщение