6.2. Настройка типов сообщений

Типы сообщения настраиваются в конфигурации, одна или несколько записей вида:

messageType.<id>.title=<title>
messageType.<id>.class=<class_name>

Где:

<id> - уникальный числовой идентификатор типа сообщения, не должен меняться впоследствии;
<title> - наименование типа сообщения;
<class_name> - имя класса-обработчика сообщений.

Остальные параметры различаются для разных видов сообщений.

6.2.1. Сообщения EMail

<class_name>=ru.bgcrm.dao.message.MessageTypeEmail. Дополнительные параметры:

messageType.<id>.email=<email>
messageType.<id>.host=<host>
messageType.<id>.login=<login>
messageType.<id>.pswd=<pswd>
messageType.<id>.folderIn=<inFolder>
messageType.<id>.folderProcessed=<processedFolder>
messageType.<id>.folderSkipped=<skippedFolder>
messageType.<id>.folderSent=<sentFolder>
# необязательные параметры
messageType.<id>.folderInProcessLinked=<inProcessedFolder>

Входящие сообщения считываются с EMail ящика по протоколу IMAP. Сообщения считываются из папки <inFolder>. Параметры подключения IMAP задаются параметрами <host>, <login>, <pswd>. После разбора текста сообщений и вложений сообщение перемещается в <processedFolder>, при возникновении ошибок - в <skippedFolder>.

<email> подставляется в поле отправителя исходящего письма. Папка <inProcessedFolder> указывает папку, из которой считываются ответные письма на отправленные из BGCRM привязанные к процессу сообщения. Определение привязки производится по теме письма, в которую при отправке из BGCRM добавляется маркер с типом процесса.

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

Пример настройки:

messageType.1.title=billing@bitel.ru
messageType.1.class=ru.bgcrm.dao.message.MessageTypeEmail
messageType.1.email=billing@bitel.ru
messageType.1.host=imap.ufamail.ru
messageType.1.login=billing@bitel.ru
messageType.1.pswd=*****
messageType.1.folderIn=INBOX.CRM
messageType.1.folderInProcessLinked=INBOX
messageType.1.folderProcessed=INBOX.CRM_PROCESSED
messageType.1.folderSkipped=INBOX.CRM_SKIPPED
messageType.1.folderSent=INBOX.CRM_SENT

Отделение входящей папки от INBOX позволяет отделить спам с помощью почтового клиента, после чего только ценные сообщения разбираются в BGCRM.