-
Kernel
-
Plugins
-
Решения
-
CHANGES
Kernel
Plugins
Решения
CHANGES
Приложение позволяет организовать обмен различными типами сообщений с привязкой их к процессам. Таким образом процесс хранит всю историю связанных с ним коммуникаций с клиентами и между сотрудниками, давая возможность легко восстановить ход событий и производить весь обмен из интерфейса программы.
В ядре поддерживаются сообщения типа Звонок, Заметки (Комментарии). Дополнительные типы сообщений предоставляются плагинами.
Система сообщений позволяет организовать обмен информации централизованным образом, исключая персональные контакты через отдельные аккаунты E-Mail, телефоны и т.п.. Процесс может легко быть передан иному исполнителю и всю информацию по нему доступна всем и всегда.
Сообщения E-Mail могут быть использованы для коммуникации двух BGERP между собой. В каждой из них сообщения будут привязаны к своему процессу, имеющих собственных исполнителей.
Для настройки сообщений создать отдельную конфигурацию, включаемую в основную посредством инклуда.
Following settings should be done in the configuration.
Типы сообщения настраиваются в конфигурации, одна или несколько записей вида:
messageType.<id>.title=<title>
messageType.<id>.class=<messageTypeClassName>
Где:
<id> - уникальный числовой идентификатор типа сообщения, не должен меняться впоследствии;
<title> - наименование типа сообщения;
<messageTypeClassName> - имя класса-обработчика сообщений.
Опциональные параметры:
# не информировать о необработанных сообщениях данного типа
messageType.<id>.unprocessedMessageNotify=0
Остальные параметры различаются для разных видов сообщений.
Для типа сообщения могут быть указаны один или несколько режимов поиска:
messageType.<id>.search.<searchModeId>.title=<title>
messageType.<id>.search.<searchModeId>.class=<searchModeClassName>
Где:
<searchModeId> - уникальный числовой идентификатор режима поиска, начиная с 1;
<title> - наименование режима поиска;
<searchModeclassName> - имя класса, реализующего режим поиска.
Первый режим поиска применяется по-умолчанию при открытии сообщения для обработки.
Необязателен к указанию и класс, сохраняющий контакт.
messageType.<id>.saver.class=<saverClassName>
На скриншоте цифрой 1 изображены режимы поиска, 2 - режимы сохранения контакта.
Режимы поиска и сохранения могут быть специфичны для типа сообщения. Search modes, marked as Auto are automatically and parallel running when a message is opened.
Значение <searchModeClassName>, что ищет | Конфигурация и пример |
---|---|
ru.bgcrm.dao.message.MessageTypeSearchCustomerByTitle ![]() |
Нет дополнительных параметров.
|
ru.bgcrm.dao.message.MessageTypeSearchEmail |
Нет дополнительных параметров.
|
ru.bgcrm.dao.message.MessageTypeSearchCall |
Где:
Пример:
|
ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchEmail |
Где:
Пример:
|
ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchCall |
Где:
Пример:
|
ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchContractByTitleAndComment ![]() |
Где:
Пример:
|
ru.bgcrm.plugin.bgbilling.dao.MessageTypeSearchContractByDialUpLogin |
Где:
Пример:
|
Значение <saverClassName>, что делает | Конфигурация и пример |
---|---|
ru.bgcrm.dao.message.MessageTypeContactSaverEmail |
Где:
Пример:
|
ru.bgcrm.dao.message.MessageTypeContactSaverPhone |
Где:
Пример:
|
ru.bgcrm.plugin.bgbilling.dao.MessageTypeContactSaverPhone |
Где:
Пример:
|
<messageTypeClassName>=ru.bgcrm.dao.message.MessageTypeNote
Используются для добавления заметок (комментариев) по ходу процесса.
Пример настройки:
#
messageType.100.title=Заметка (Комментарий)
messageType.100.class=ru.bgcrm.dao.message.MessageTypeNote
<messageTypeClassName>=ru.bgcrm.dao.message.MessageTypeCall
Дополнительные необязательные параметры:
messageType.<id>.offerNumberFromParamId=<offerNumberFromParamId>
messageType.<id>.autoNumberRegister=<autoNumberRegister>
Где:
<offerNumberFromParamId> - код текстового параметра пользователя, содержащий номер, предлагаемый к занятию по-умолчанию.
<autoNumberRegister> - 0, to disable automatic registering user number on login.
Тип сообщения представляет из себя звонок, который обрабатывается оператором. Для данного типа сообщения в оснастке обработки сообщений отображается поле занятия номера. Строго говоря, это означает, что в системе может быть зарегистрирован только один тип сообщения Call.
As a call’s supplier should be used Asterisk plugin or external HTTP requests.
Colored message tags allow to separate messages in process tab. Example of configuration:
tag.1.title=Access tag.1.color=red tag.2.title=Requirements tag.2.color=green tag.3.title=TODO tag.3.color=magenta
You can see a sample configurations in Demo System. |
To configure related processes to be found during message processing add to configuration following blocks:
message.related.process.<id>.type=<type>
message.related.process.<id>.color=<color>
Where:
<id> - numeric ID, found processes are sorted by IDs
<color> - optional HTML color for table rows with found processes
<type> - search type, one of the following values:
messageFrom - processes with messages from the same from address (E-Mail sender or calling number) as the processed message
foundLink - processes with the same links as found for the processed message
foundLinkCustomerAddressCity - processes with a link parameter values, matching to address parameter cities of found customers, that type requires additional parameter set with key foundLinkCustomerAddressCityProcessParamId
Получение новых сообщений и отправку созданных осуществляет класс MessageExchange, настройте его запуск в планировщике.
Дополнительные опциональные параметры конфигурации задачи:
messageTypeIds - коды типов сообщений через запятую, для которых производить обмен.
Доступна через оснастку Сообщения. Основное назначение - первичная обработка сообщений с привязкой к вновь созданным, либо существующим процессам. В обработке нуждаются не все сообщения, в данный момент она используется для E-Mail ов и звонков. Обработка звонка открывается автоматически, E-Mail ы необходимо открывать в оснастке вручную.
Уведомление о количестве необработанных сообщений выводится в области уведомлений. |
Сообщение считается обработанным после того, как к нему привязан процесс. Помимо этого сообщение можно удалить. В выпадающем списке можно выбрать фильтр по типу сообщений. В квадратных скобках рядом с типом отображается число необработанных сообщений каждого типа.
При клике по строке открывается обработка сообщения, внешний вид может быть следующим для звонка (снимок уже использовался выше).
Либо для E-Mail.
Отображение вкладки сообщений должно быть настроено в конфигурации типа процесса.
Для создания сообщения в рамках процесса используйте кнопку Создать.
Доступен фильтр по сообщениям со вложениями и тегам. Теги позволяют маркировать каждое сообщение определёнными метками, позволяющими их позже легко найти, например: "TODO", "Реквизиты".
Кнопка M рядом с каждым сообщением вызывает всплывающее меню с операциями:
Вкл./выкл. разрывы строк - перенос длинных строк в сообщениях либо отображение скроллинга;
Теги - установить теги на выбранное сообщение.
Изменить процесс на - привязать сообщение к другому процессу:
Другой существующий - по коду уже существующего процесса;
Независимую копию текущего - создаётся новый процесс, копия текущего, в него копируются все привязки;
Зависящую копию текущего - создаётся новый процесс, копия текущего и привязанный к нему с типом processDepend;
Порождённую копию текущего - создаётся новый процесс, копия текущего и привязанный к нему с типом processMade;
Ссылаемую копию текущего - создаётся новый процесс, копия текущего и привязанный к нему с типом processLink.
Ответить - создать новое сообщение, являющееся ответом на выбранное и также привязанное к текущему процессу;
Редактировать - редактировать сообщение, если тип поддерживает;
Удалить - удалить сообщение, если тип поддерживает.
Пометку процессов с новыми сообщениями можно реализовать переключением статуса процесса по событию поступления сообщения.
После добавления типа сообщения плагина в конфигурацию, включить динамическое логирование и выполнить в оснастке Выполнить класс MessageExchange в синхронном режиме. При этом будет произведена попытка чтения настроенного ящика, а также установки соединения на отправку. Возможные ошибки отобразятся в логе.