О плагине
Плагин предназначен привязки процессов к темам форума PHPBB с возможностью изменения статуса процессов по появлению новых сообщений в теме.
Конфигурация
В конфигурации сервера.
# форум phpbb:linkParamId=<paramId> phpbb:topicMark=<topicMark> phpbb.forum.bitel.url=<url> # дополнительные необязательные параметры phpbb:userNameParamId=<userNameParamId>
Где:
- <paramId> - код текстового параметра процесса, содержащего ссылку на тему форума;
- <topicMark> - строка, помечающая тему форума как отслеживаемую в CRM;
- <url> - URL форума;
- <userNameParamId> - код текстового параметра пользователя, содержащего логин пользователя на форуме.
Возможна интеграция с несколькими форумами, для каждого из них должна быть добавлена запись:
# параметры подключения к БД PHPBB phpbb:forum.<forumId>.db.driver=com.mysql.jdbc.Driver phpbb:forum.<forumId>.db.url=<dbUrl> phpbb:forum.<forumId>.db.user=<dbUser> phpbb:forum.<forumId>.db.pswd=<dbPswd>
Где:
- <forumId> - уникальный строковый идентификатор;
- <dbUrl> - код текстового параметра процесса, содержащего ссылку на тему форума;
- <topicMark> - строка, помечающая тему форума как отслеживаемую в CRM;
- <dbUrl> - URL для подключения к БД форума;
- <dbUser> - пользователь с правами на чтение для подключения к БД форума;
- <dbPswd> - пароль пользователя для подключения к БД форума.
Пример конфигурации:
phpbb:linkParamId=20 phpbb:topicMark= (CRM) phpbb:forum.bitel.url=forum.bitel.ru phpbb:forum.bitel.db.driver=com.mysql.jdbc.Driver phpbb:forum.bitel.db.url=jdbc:mysql://bgbilling.ru:3306/forum phpbb:forum.bitel.db.user=forum phpbb:forum.bitel.db.pswd=******
В конфигурации текстового параметра имеет смысл установить опцию showAsLink=1.
Синхронизация с форумом производится классом ru.bgcrm.plugin.phpbb.Exchange, периодический запуск которого необходимо настроить в планировщике.
При появлении в привязанной к процессу теме сообщения для процесса генерируется событие идентичное добавлению в него сообщения. По данному событию возможно уведомление исполнителя, переключение статуса. Пример.
onProcessEvent.1.events=messageAdded onProcessEvent.1.ifExpression=process.getStatusId() != 1 onProcessEvent.1.commands=setStatus:1 # onProcessEvent.2.events=messageAdded onProcessEvent.2.commands=emailNotifyExecutors:21:Новые сообщения в процессе
Интерфейс пользователя
В необходимых типах процессах параметр "Ссылка на форум" отображается как параметр, в который возможно внести URL темы форума.
Параметр проверяется при правке на корректность. В очереди процессов целесообразно вывести ссылку на тему с опцией showAsLink, что позволит отображать ссылку с возможностью перехода на неё.