-
Kernel
-
Plugins
-
Решения
-
CHANGES
Kernel
Plugins
Решения
CHANGES
Плагин предназначен для привязки процессов к темам форума PHPBB с возможностью изменения статуса процессов по появлению новых сообщений в теме.
Каждый интегрируемый форум должен быть настроен отдельным типом сообщения. Сообщение считается входящего типа.
Пример настройки:
messageType.<id>.title=<title>
messageType.<id>.class=MessageTypeForumPost
messageType.<id>.userNameParamId=<userParamId>
messageType.<id>.topicMark=<markText>
messageType.<id>.topicMarkClosed=<markTextClosed>
messageType.<id>.url=<forumUrl>
messageType.<id>.db.driver=com.mysql.jdbc.Driver
messageType.<id>.db.url=<jdbcUrl>
messageType.<id>.db.user=<jdbcUser>
messageType.<id>.db.pswd=<jdbcPswd>
Параметры, отличные от прочих типов сообщений:
<userParamId> - код параметра пользователя в BGERP, в котором указан пользователь форума, необходим для определения, кого оповещать о новых сообщениях;
<markText> - строка, добавляемая в конце наименований тем форума, для отметки их связи с BGERP;
<markTextClosed> - строка, добавляемая в конце наименований тем форума, для отметки их связи с BGERP, если процесс закрыт;
<forumUrl> - URL форума, необходим для генерации корректной ссылки в сообщении, позволяющей быстро перейти в тему форума из интерфейса BGERP;
<jdbcUrl>, <jdbcUser>, <jdbcPswd> - параметры подключения к БД форума с правами SELECT, UPDATE.
Пример конфигурации:
messageType.7.title=Форум BiTel
messageType.7.class=MessageTypeForumPost
messageType.7.userNameParamId=30
messageType.7.topicMark= (CRM)
messageType.7.topicMarkClosed= (CRM:CLOSED)
messageType.7.url=http://forum.bitel.ru
messageType.7.db.driver=com.mysql.jdbc.Driver
messageType.7.db.url=jdbc:mysql://sql.bgbilling.ru/forum
messageType.7.db.user=xxxx
messageType.7.db.pswd=xxxx
Синхронизация с форумом производится стандартной задачей обработки сообщений.
При появлении в привязанной к процессу теме сообщения для процесса генерируется событие идентичное добавлению в него сообщения. По данному событию возможно уведомление исполнителя, переключение статуса. Пример с простым обработчиком процессов:
onProcessEvent.1.events=messageAdded
onProcessEvent.1.ifExpression=process.getStatusId() != 1
onProcessEvent.1.commands=setStatus:1
#
onProcessEvent.2.events=messageAdded
onProcessEvent.2.commands=<<END
text = "Новое сообщение в процессе, в котором вы числитесь исполнителем." + NEW_LINE2 + '
"Сообщение:" + NEW_LINE + event.getMessage().getText() + NEW_LINE2 +
"Открыть процесс: http://my.bgcrm.ru/user/process#" + process.getId();
email.sendMessageToExecutors(0, "Новые сообщения в процессе", text);
END
Привязка к теме форума добавляется как обычное сообщение. В качестве параметра указывается код темы. Привязанная тема отмечается текстовым маркером (CRM), что позволяет быстро определить, что тема уже заведена в системе. Добавленное сообщение отображается с ссылкой быстрого перехода непосредственно в форум.