...
Название: OmniToken, Код: OmniToken
В данной настройке хранится токен Beesender для работы с коннектором. Данный токен индивидуальный для каждой системы и используется при синхронизации с коннектором Beesender и работе с каналами.Название: OmniConnectorHost, Код: OmniConnectorHost
Данная настройка хранит адрес коннектора Beesender (balance, bee-conn) и является аналогом настройки BeesenderOperatoHost.Название: OmniFileServiceHost, Код: OmniFileServiceHost
Данная настройка хранит адрес файлового сервиса Beesender, который участвует при отправке файлов различного формата из CRM в мессенджер.Название: OmniChannelUrl, Код: OmniChannelUrl
Данная настройка хранит путь запроса на коннектор Beesender (balance, bee-conn) для работы с каналами и является аналогом настройки BeesenderServices.Название: OmniCrmHost, Код: OmniCrmHost
В данной настройке хранится адрес текущей системы Creatio, который используется при синхронизации с коннектором Beesender.Название: OmniCrmUserLogin, Код: OmniCrmUserLogin
Настройка хранит значение логина конкретного аккаунта(с правами администратора), которое используется при синхронизации.Название: OmniCrmUserPassword, Код: OmniCrmUserPassword
Настройка хранит значение пароля конкретного аккаунта(с правами администратора), которое используется при синхронизации. В самой настройке значение будет недоступно для чтения(маскировка значения пароля).Название: OmniInstagramService, Код: OmniInstagramService
Данная настройка хранит адрес кнопки “Вход через facebook“, которая используется при добавлении канала facebook (стена и мессенджер) и инстаграм. Данная настройка является аналогом настройки BeesenderInstagramService.Название: OmniWebSiteUserNumber, Код: OmniWebSiteUserNumber
Данная настройка хранит номер последнего добавленного пользователя виджета Beesender (WebSite) для установки имени контакта в формате “Web-00000“.
...
Полезно для работы с системными настройками:
...
P.S. У визуальных модулей присутствует свой не визуальный модуль с таким же названием, только на конце используется слово Module. а не Page. Пример: ViberChannelPage и ViberChannelModule. В этих модулях как правило описаны стили во вкладке LESS, которые касаются только этого визуального модуля.
2.Исходный код:
BsOmniChatSetupService - веб-сервис, который вызывается из BsOmniChatConfigurationPage и OmniChatSection при синхронизации и работе с системными настройками.
BsOmniSynchronizer - класс, в котором реализована логика синхронизации с коннектором Beesender.
BsOmniChannelService - веб-сервис, который вызывается в ViberChannelPage при добавлении, обновлении и актуализации канала Omnichannel.
BsOmniChannelHandler - класс, в котором реализована вся необходимая логика для работы с каналами.
BsOmniMessagingService - веб-сервис, который вызывается коннектором при отправке сообщения от клиента(из мессенджера) в CRM-систему.
BsOmniIncomingMessageHandler - класс, в котором реализована логика создания и распределения чата на оператора.
BsOmniOutcomeMessageWorker - класс в котором реализована логика отправки сообщения из CRM-системы на коннектор.
BsOmniFileUploader - класс для обработки файлов из CRM через файловый сервис Beesender, перед отправкой на коннектор.
BsOmniExtensions - файл, в котором собраны все необходимые классы-расширения для имеющихся типов.
BsOmniEnums - файл, в котором собраны все необходимые перечисления (enums), необходимые для работы с каналами Omnichannel.
BsOmniHelper - файл, в котором собраны все вспомогательные классы, необходимые для работы с каналами Omnichannel (логгер, класс для работы с системными настройками и т.д.)
BsOmniAppEventListener - класс для маппинга необходимых интерфейсов от Terrasoft для работы с каналами Omnichannel.
BsOmniModels - файл, в котором собраны все необходимые модели данных, необходимые для работы каналов Omnichannel.
BsOmniIncomingMessageConverter - класс для конвертации пришедшего от коннектора сообщения в формат “MessagingMessage”, необходимый для работы логики чатов на уровне Terrasoft.
BsOmniMsgSettingsHandler - класс для работы с именной таблицей настроек конкретного канала BsOmni{Имя провайдера}MsgSettings.
BsOmniMsgSettingsExecutor - набор пользовательских типов данных для работы с BsOmni{Имя провайдера}MsgSettings, состоящий из интерфейса IBsOmniMsgSettingsExecutor и его реализаций под конкретные каналы.
BsOmniProviderHandler - набор пользовательских типов данных для индивидуальной работы с каждым провайдером в ходе добавления канала, обработки входящих и исходящих сообщений и так далее. Данная схема исходного кода состоит из интерфейса IBsOmniProviderHandler и его реализаций под конкретные каналы. Не для всех каналов есть реализации в связи с ненадобностью использования отдельного класса.
BsOmniProfileDataProvider - класс, реализующий интерфейс IProfileDataProvider от Terrasoft и предназначен для отображения данных о клиенте. Используется в BsOmniAppEventListener.
BsOmniAttachmentLoadWorker - класс, реализующий интерфейс IAttachmentsLoadWorker от Terrasoft и предназначен для работы с файлами. Используется в BsOmniAppEventListener.
BSCrmRequestHelperService BsOmniCrmRequestHelperService - веб-сервис, который даёт возможность отправить запрос в другую crm систему (Creatio).
BSSysSettingsHelperService - веб-сервис, который возвращает значение системной настройки.
3.Бизнес-процессы:
...
3.Бизнес-процессы:
DeletingEntryFromMsgsettingsTable - БП для удаления записи из объекта “BsOmni{Имя провайдера}MsgSettings” при удалении записи из объекта “Сhannel“.
AttachFileToChat - БП для записи сообщения из чата в объект “OmnichannelMessagefile“ до его закрытия. Это связано с тем, что все сообщения конкретного чата записываются в объекты “ChatMessages“ и “OmnichannelMessagefile“ только после закрытия чата, что мешает отображению файлов в РМО.
ChangeDefaultContactName - БП для изменения имени контакта и чата при установке системой значения по умолчанию (New contact (“Имя провайдера“ - “Значение InternalId“)). Новый формат имени контакта: “Имя провайдера“-”Порядковый номер”
4.Объекты:
BsOmniLog - логгер (аналог BeesenderLog). В основном для поиска ошибок используется такой шаблон наименования логов: “Название класса“.”Название метода”Error. Пример: "BsOmniIncomingMessageHandler.ExecuteError"
BsOmniClient - пользователь мессенджера, на основе которого создаётся контакт в системе (аналог BeesenderClient)
BsOmniViberMsgSettings - именной объект для настроек канала Viber.
BsOmniInstagramMsgSettings - именной объект для настроек канала Instagram.
BsOmniWebSiteMsgSettings - именной объект для настроек канала WebSite.
Channel - канал, который хранит ссылку на объект из таблицы BsOmni{Имя провайдера}MsgSettings. Реализация Terrasoft.
ChatQueue - очереди чатов (группа операторов), в которой хранится название самой группы. Реализация Terrasoft.
ChatQueueOperator - оператор в конкретной очереди чатов. Реализация Terrasoft.
OmniChat - чат. Реализация Terrasoft.
ChannelProvider - конкретный провайдер канала (Viber, Telegram и т.д.), в котором должна указываться ссылка на страницу создания и модификации канала (поле “PageUrl“). Реализация Terrasoft.
OmnichannelMessageFile - файлы в чате. Реализация Terrasoft.
ChatMessages - текстовые сообщения в чате. Реализация Terrasoft.
OmnichannelChatStatus - статус чата. Реализация Terrasoft.
OperatorRoutingRules - правила распределения чатов на группу операторов. Реализация Terrasoft.
...
{Название провайдера канала}ChannelPage - визуальный модуль представления страницы добавления и изменения конкретного канала. Данные модули должны наследоваться от OmniChannelPage. В качестве хранилища необходимых CSS-стилей можно использовать модуль OmniChannelCss либо же не визуальный модуль, который вызывает визуальный.
{Название провайдера канала}ChannelModule - не визуальный модуль для вызова визуального модуля, описанного выше.
...