Обновления в апрельском релизе ELMA365

В начале года мы выпустили «Roadmap ELMA365 2022». Чтобы получить дорожную карту с результатами первого квартала и планами на год, обратитесь к вашему менеджеру или напишите на почту inbox@elma365.com. 

Раз в квартал мы будем обновлять RoadMap, указывать в нем то, что сделано и уточнять дальнейшие планы. Ниже подробнее о том, что мы выпустили за апрель. 

 

ELMA365 CRM

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

 

Отображение цепочки сообщений (треда) на странице просмотра письма

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

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

Важно! Функцию формирования цепочки писем в тред не поддерживают почтовые ящики на @outlook.com. Специальная обработка таких ящиков будет сделана дополнительно.

1

 

Уведомление о новом входящем письме в почте

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

2

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

3

 

Мобильный интерфейс раздела «Почта»

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

4.1

 

На форме приложений Лид и Сделка преднастроен виджет отображения почтовой переписки

Для новых компаний в разделе CRM добавлена вкладка «Связанные письма» на форме просмотра элементов приложений Лид и Сделка. Для уже существующих площадок изменения не вносились, поскольку пользователями уже могли быть внесены изменения в настройки форм указанных приложений. Вы можете самостоятельно вынести виджет «Связанные письма» на форму приложений на вашей площадке.

 

Импорт данных в нужную воронку CRM 

При массовой загрузке сделок или лидов через файлы формата .xls или .csv вы сразу можете выбрать в какой воронке должны быть автоматически созданы элементы.  Для этого со страницы нужной воронки нажмите на иконку с тремя вертикальными точками и выберете опцию «Импорт данных». По завершении процедуры импорта все данные будут загружены в выбранную вами воронку.

5

 

Формирование CRM-решений с использованием системного процесса «Квалификация лида»

Создавая решение, в состав которого входят несколько разделов, в том числе встроенный раздел CRM, вы можете использовать системный бизнес-процесс «Квалификация лида». В этом релизе был разрешен конфликт экспорта решения, в составе которого есть системный процесс.  Теперь нет препятствий к тому, чтобы формировать свои решения, базируясь на стандартных компонентах.

 

Сохранение комментариев к звонку, даже если файл записи звонка был удален 

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

6

 

Сохранение произвольного названия веб-формы

Исправлено поведение системы при создании веб-формы и изменены ее названия. Ранее название веб-формы формировалось автоматически, и его нельзя было изменить. Теперь, помимо автоматически сформированного названия,  вы можете задать  уникальное наименование созданной веб-формы, чтобы было удобнее ориентироваться в созданных веб-формах.

Было: 

7

Стало: 

8

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

 

ELMA ChatDesk 

 

Интеграция с VK 

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

9

10

11

 

Интеграция c ViberBot

Теперь администрировать и вести чаты с клиентами из Viber можно не выходя из интерфейса ELMA365 ChatDesk. 

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

12

Появилась возможность разбирать письма с корпоративного почтового ящика и обрабатывать их так же оперативно, как сообщения из мессенджеров. 

 

Подготовка к релизу Умного сервисного центра 

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

 

ELMA365 Portal / Low-code


Улучшения UI/UX

В апрельском релизе мы уделили особое внимание пользовательскому опыту и безопасности и выпустили ряд доработок в разных разделах системы.

 

Сохранение фильтров в задачах

Для удобства работы с задачами в разделах «Входящие» и «Исходящие» мы добавили возможность сохранить параметры поиска в виде фильтра. Фильтры сохраняются только для текущего пользователя, другие пользователи их не увидят.

13

Сохраненные фильтры отображаются в панели расширенного поиска:

14

 

Пересечение событий в календаре

Планирование времени в разных календарях стало удобнее за счет улучшенного механизма

  • проверки пересечения событий:  
  • при создании события в разделе «Календарь» проверяется пересечение с событиями во всех приложениях типа «Событие»;
  • при создании элемента приложения типа «Событие» проверяется пересечение с «Календарем».

 

Drag’n’drop в чатах

Добавили возможность загрузки файлов в сообщения с помощью drag’n’drop.
Доступно в личных и групповых чатах, в каналах, ленте, и в виджете «Лента» в карточках элементов:

15

16

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

 

Восстановление элементов

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

17

18

В сценариях для восстановления элемента используется метод ApplicationItem.restore() || ApplicationItemRef.restore().

 

Множественный выбор в фильтре по приложению


Добавили возможность фильтрации по множественным полям типа «Приложение».
Пример использования:

  • в стандартном CRM есть приложения «Контакты» и «Компании»;
  • в приложении «Компании» есть поле «Контакты», можно выбрать несколько Контактов 
  • при поиске компаний выбираем несколько контактов:

19

в результатах поиска будут все компании, в которых хотя бы один контакт пересекается со списком в поисковом запросе.

 

Безопасность

 

Список активных сессий


В разделе «Администрирование» добавили страницу «Активные пользователи»:

20

На странице отображаются все авторизованные в данный момент пользователи. Это позволяет отслеживать, какие пользователи работают в системе и с каких IP-адресов они авторизовались, определять несанкционированные сессии. Поддерживается поиск по логину, электронной почте и ФИО.

 

Права доступа и канбан

При расчете суммы по полю в канбан-представлении теперь учитываются права текущего пользователя.

21

Сумма рассчитывается только по тем элементам, к которым текущий пользователь имеет доступ.

 

Редактирование прав на Контракты

Первый релиз Контрактов состоялся зимой 2021 года. Контракты — это Low-code реализация принципов наследования интерфейсов из объектно-ориентированного программирования в ELMA365. С этим релизом открывается возможность настроить права доступов к элементам «Контракта» для пользователей, исходя из требований процессов вашей компании. 

В системе реализованы все три принципа ООП: инкапсуляция, полиморфизм и наследование при работе с приложениями. Реализация ООП позволяет создавать унифицированные процессы для множества приложений, упрощает и ускоряет написание Low-code сценариев и делает чтение кода проще. Подробнее можете прочитать здесь

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

22

На открытой странице возможно управлять доступом к элементам контракта «Документы». 

23

Права для контракта можно ограничить на двух уровнях — на уровне всего контракта или на уровне ограничения доступа к каждому элементу. Для нашего случая подходит ограничение для каждого элемента контракта — «На уровне элементов приложения». При выборе этого пункта мы можем управлять правами доступа к каждому элементу, а элементы контракта получат права из оригинальных элементов.

 

Ссылка на родительский элемент для контракта

Реализованный принцип наследования в Контрактах позволяет легко объединить по общим признакам несколько приложений-источников, наследуя их из разных разделов в одно новое приложение-наследника. Это позволяет облегчить и ускорить создание бизнес-процессов, а также избавить от необходимости создавать процесс для каждого приложения в отдельности. 

Если при работе с приложениями-наследниками есть необходимость получить доступ к данным «родителя», то воспользуйтесь новым полем «Ссылка на родительский элемент». Оно хранит в себе «адрес» оригинального элемента и позволяет с ним работать как с обычным полем приложения. Например, такое поле может использоваться при создании бизнес-процессов как обычное поле. 

24

Новое поле также доступно для работы в Low-code сценариях при реализации виджетов, форм, сценариев обработки данных. 

async function getData(): Promise {
  const contractData = await Context.data.dogovory?.fetch();
  if (!contractData) {
    return;
  };
};

 

Работа с цифровыми подписями и НЭП

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

  • создание заявки на выпуск цифровой подписи;
  • ожидание статуса цифровой подписи.

26

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

27

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


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

28

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

Для работы с НЭП и выпуска ЦЭП  в систему добавлена интеграция с провайдером «СКБ Контур», с помощью которой возможно выполнять операции выпуска цифровых подписей и подписания данных. Данная система настраивается, как обычный модуль, для использования необходимо указать API-ключ провайдера. 

 

Резервирование номера документа

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

 

Low-code/Frontend

 

История версий виджетов


В конструкторе виджетов добавлена вкладка «История версий». На этой вкладке отображаются все опубликованные версии данного виджета. Кроме того, если выбрать одну из версий, то показывается кнопка «Применить версию», которая восстанавливает состояние выбранной версии в текущий черновик. Функционал полезен:

  • чтобы узнать, кто и когда публиковал виджет;
  • что именно было изменено (по комментарию или если восстановить как черновик);
  • чтобы откатиться на одну из предыдущих версий, если в новых была обнаружена ошибка.

29

 

Отладка виджетов

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

30

31

 

Улучшение конструктора виджетов

В конструкторе виджетов в списках виджетов добавлена группировка по разделам и приложениям, а также функция поиска (фильтрации). 

32

 

Сохранение состояния открытых карточек

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

 

ELMA365 ECM

 

Сравнение версий доĸументов 


В систему добавлена новая возможность, позволяющая сравнивать различные версии файлов, в том числе, сравнение возможно и в приложениях типа «Доĸумент». 
Новая фунĸция позволяет вычислить разницу между содержимым двух файлов doc, docx. Система позволяет работать с результатами сравнения и создавать новую версию файла из полученных результатов. Результат отображения зависит от провайдера для отображения и редаĸтирования офисных доĸументов. 

 

Инструĸция 

Для использования новой фунĸции необходимо использовать виджет «Версии доĸумента».

33

В данном виджете можно выбрать, что будет использовано в ĸачестве источниĸа для сравнения. Возможно выбрать файл, если требуется сравнить с файлом с ПК, или выбрать одну из версий файла.

34

Таĸже в оĸне отображения списĸа версий приложений возможно сравнить любые версии доĸумента.

35

Для выбора версии доĸумента для сравнения необходимо ĸлиĸнуть по ĸнопĸе с параллельными стрелками. Далее необходимо выбрать версию, с ĸоторой будем сравнивать.

36

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

 

Паĸетные операции согласования и ознаĸомления 

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

 

Блоĸ формирования паĸета доĸументов 

Данный блоĸ находится в редаĸторе процессов внутри раздела «Доĸументооборот». 

37

В ĸачестве исходных данных используются приложения из ĸонтеĸста.

38

В ĸачестве переменной для хранения паĸета доĸументов используется переменная типа «Произвольное приложение».

39

Результатом работы блоĸа является объединение несĸольĸих приложений в один паĸет, ĸоторый в дальнейшем можно использовать для ознаĸомления и согласования в бизнес-процессе. 

 

Процесс ознаĸомления и согласования 

При согласовании/ознаĸомлении с паĸетом доĸументов пользователю назначается задача, в ĸоторой он может ознаĸомиться со списĸом доĸументов в паĸете, а таĸже оставить ĸомментарий персонально по ĸаждому доĸументу в паĸете. 

Для завершения задачи необходимо оставить ĸомментарий, ĸаĸ и в случае с согласованием/ознаĸомлением с первым доĸументом.

40

С результатами ознаĸомления или согласования можно ознаĸомиться в виджетах.

41

В данных виджета добавлены новые статусы, позволяющие определить статус ознаĸомления или согласования.

42

Таĸже детальную информацию можно получить, сделав выгрузĸу доĸумента или ознаĸомившись с историей согласования/ознаĸомления. 

 

Множественный запусĸ подпроцессов 

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

44

Для запусĸа процессов используется блоĸ «Запусĸ процесса», который находится в разделе «Действия» редаĸтора бизнес-процессов. 

45

В настройĸах в ĸачестве поля для связи выбираем созданную переменную для ĸонтеĸста и в процессе выполнения для ĸаждого элемента приложения будет запущен свой эĸземпляр процесса.

46

В настройĸах блоĸа можно выбрать, ĸаĸ будет выполняться выполнение родительсĸого процесса: 

  • ожидание завершения всех подпроцессов — позволяет дождаться завершения всех под-процессов запущенных в результате работы блоĸа;
  • выполняться без ожидания  — родительсĸий процесс продолжает выполняться вместе с запущенными подпроцессами.

 

Развитие ELMA365 

 

Опция ограничения выбора для поля типа «Пользователь»


Часто при создании элемента или выполнения задачи по процессу нужно выбрать пользователя системы, который будет участвовать в работе на следующих шагах. В этих случаях, как правило, набор пользователей для выбора бывает ограниченным. Например, нужно выбрать кого-то из отдела Продаж или Бухгалтерии, или ограничить выбор пользователя группой внутри решения (например, Операторы службы поддержки). Для этого была добавлена возможность ограничивать выбор в настройке свойства типа «Пользователь». Теперь можно ограничить выбор пользователя по одному из простых полей, а также по группе или должности этого пользователя.

 

Ограничение выбора Пользователей через сценарий

В дополнение к визуальной настройке, теперь можно ограничивать доступные элементы в поле типа Пользователь в сценариях TSSDK. Для этого реализованы методы setFilter и clearFilter аналогично полю типа «Приложение».

async function onInit() {
  let vipGroup = await System.userGroups.search().where((f) =>
  f.__id.eq("5141b872-0c36-51e8-81ca-968fd7bd6a77")).first();
  if (vipGroup) Context.fields.komu.data.setFilter((f)   => f.groupIds.has(vipGroup!));
}

 

Возможность выдавать права внешнему пользователю, который еще не принял приглашение

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

В этой версии нами был реализован новый метод в TSSDK: 

Namespace.portal.addUser(portalUserProfile) который создает учетную запись пользователя в статусе «Не активирован». Такого пользователя теперь можно использовать в сценариях и процессах, как и любую другую учетную запись. Вы можете встроить это поведение в ваш процесс онбординга нового пользователя портала и подготовить его рабочее пространство заранее.

Учетная запись будет активирована после перехода по ссылке приглашения и подтверждения данных входа.

Новости