Creatio development guide
Это документация Creatio версии 7.8.0. Мы рекомендуем использовать новую версию документации.

Пользовательская фильтрация нежелательных обращений

Glossary Item Box

Общие сведения

Bpm'online предоставляет возможность настроить фильтр нежелательных обращений. Пользователи имеют возможность фиксировать список email адресов и доменов, письма из которых могут автоматически помечаться как спам. При этом обращения по ним могут либо не регистрироваться, либо регистрироваться в отмененном состоянии (статус указывается в системной настройке [Состояние нежелательных обращений по умолчанию]).

Также фильтр нежелательных обращений позволяет анализировать заголовок письма на предмет наличия в нем определенных флагов, например Auto-Submitted. При наличии таких флагов фильтр позволяет не создавать обращения или создавать обращения в состоянии, указанном в системной настройке.

Для того чтобы анализировать электронный адрес, домен или часть адреса, достаточно просто добавить необходимое значение в справочник [Черный список email адресов и доменов для регистрации обращений]. После добавления значения (тип будет установлен автоматически), во время анализа входящего письма адреса будут помечены как входящие в черный список.

Алгоритм добавления нового свойства для фильтрации писем

Анализ заголовка письма происходит с использованием справочника [Управление свойствами заголовков email]. Для того чтобы добавить новое свойство для анализа, необходимо выполнить следующие шаги:

  1. Добавить новый класс, реализующий интерфейс IHeaderPropertyHandler. Этот интерфейс содержит в себе единственный метод Check(), возвращающий значение типа bool. В реализации метода Check() необходимо выполнить проверку значения свойства и вернуть результат. Если метод возвращает true, обращение будет создано по стандартному механизму, если false — результат проверки отрицательный и письмо будет обработано как письмо из черного списка.
  2. Добавить значение в справочник [Управление свойствами заголовков email]. В колонке Name указать имя свойства, анализ которого должен проводиться при регистрации. В колонке handler должно содержаться имя класса, который был добавлен в предыдущем пункте.

Пример добавления нового свойства для фильтрации писем

Описание кейса

Добавить для анализа обращения новое свойство No-reply. В случае, если данное свойство присутствует в заголовке письма и его значение отлично от "No", обращение обработать, как обращение из черного списка.

Алгоритм реализации кейса

1. Добавление нового класса, реализующего интерфейс IHeaderPropertyHandler

В пользовательском пакете (например, Custom) необходимо добавить новую схему типа "Исходный код". В этой схеме необходимо определить класс, реализующий интерфейс IHeaderPropertyHandler, например:

namespace Terrasoft.Configuration
{
    using System;
    public class NoreplyHandler: IHeaderPropertyHandler
    {
        public bool Check(object value) {
            return string.Equals(value.ToString(), "No", StringComparison.OrdinalIgnoreCase);
        }
    }
}

После сохранения созданную схему небходимо опубликовать.

Интерфейс IHeaderPropertyHandler определен в пакете JunkFilter, поэтому он обязательно должен быть добавлен в зависимости пользовательского пакета.

2. Добавление значения в справочник

Для корректной работы нового фильтра необходимо добавить в справочник [Управление свойствами заголовков email] новое свойство No-reply. В качестве класса обработчика (свойство handler) необходимо указать созданный на предыдущем шаге класс NoreplyHandler.

В результате выполнения перечисленных действий, после получении входящего письма, содержащего в своем заголовке флаг No-reply со значением, отличным от "No", возможны следующие варианты:

  • обращение не будет создано в случае, если значение системной настройки [Создавать обращения по нежелательным письмам] равно false;
  • обращение будет создано со статусом, указанным в системной настройке [Состояние нежелательных обращений по умолчанию], если значение системной настройки [Создавать обращения по нежелательным письмам] равно true

 

© Terrasoft 2002-2016.

Был ли данный материал полезен?

Как можно улучшить эту статью?