Условие FROM, TO, CC, BCC, ADDRESS, SUBJECT

<< Кликните, чтобы показать Содержание >>

Руководство Администратора | CHM EPUB PDF A4/Letter   

Условие FROM, TO, CC, BCC, ADDRESS, SUBJECT

Проверить значение одного из полей from, to, cc, bcc, subject, address.

Описание

Это условие проверяет значение поля на содержание указанной подстроки или на соответствие шаблону wildcard или regexp.

from

Проверяет поле FROM (адрес отправителя)

to

Проверяет поле TO (адрес получателя)

cc

Проверяет поле CC

bcc

Проверяет поле BСС

address

Проверяет все поля адресов (from, to, cc, bcc). Если в любом из них найдено соответствие, то условие выполняется

subject

Проверяет поле SUBJECT.

Формат

<c name="from" op="<operation>" value="<compare pattern>" />

<c name="to" op="<operation>" value="<compare pattern>" />

<c name="cc" op="<operation>" value="<compare pattern>" />

<c name="bcc" op="<operation>" value="<compare pattern>" />

<c name="subject" op="<operation>" value="<compare pattern>" />

<c name="address" op="<operation>" value="<compare pattern>" />

Атрибут "name":

В атрибуте "name" укажите имя условия: name="from", name="to", name="cc", name="bcc", name="subject" или name="address"

Атрибут "op":

Атрибут op="..." указывает на тип операции сравнения и может принимать значения:

eq или = или ==

Условие выполняется, если значение поля СОДЕРЖИТ указанное значение

ne или != или <>

Условие выполняется, если значение поля НЕ СОДЕРЖИТ указанное значение

wc или wildcard

Условие выполняется, если значение поля соответствует указанному wildcard-шаблону

re или regex или regexp

Условие выполняется, если значение поля соответствует указанному regexp-шаблону.

Атрибут "value":

В атрибуте value="..." указывается строка, с которой сравнивается значение, или шаблон для проверки.

Пример:

<c name="from" op="eq" value="xxx@mail.ru" />

Условие выполняется, если поле FROM сообщения содержит строку "xxx@mail.ru".

<c name="to" op="!=" value="xxx@mail.ru" />

Условие выполняется, если поле TO сообщения не содержит строку "xxx@mail.ru".

<c name="cc" op="wc" value="*@mail.ru" />

или

<c name="cc" op="wildcard" value="*@mail.ru" />

Условие выполняется, если поле CC сообщения соответствует wildcard-шаблону "*@mail.ru".

<c name="address" op="re" value=".+@mail.ru" />

или

<c name="address" op="regexp" value=".+@mail.ru" />

Условие выполняется, если любое из адресных полей сообщения (FROM, TO, CC или BCC) соответствует regex-шаблону "+@mail.ru".

<c name="subject" op="re" value=".*((badword1)|(badword2)|(badword3)).*" />

Условие выполняется, если в теме сообщения найдено соответствие regex-шаблону ".*((badword1)|(badword2)|(badword3)).*".

Проще говоря – условие выполняется, если в теме есть слова badword1, badword2 или badword3.

<c name="subject" op="re"

   value="(\+?\d([ \-\(])?\d{3}([ \-\)])?)?([ -])?((\d{7})|

          (\d{3}([ \-])?\d{2}([ \-])?\d{2})|

          (\d{2}([ \-])?\d{3}([ \-])?\d{2}))" />

Условие выполняется, если в теме сообщения найден номер телефона (строка, соответствующая regexp).

Телефонный номер в этом случае может соответствовать одному из следующих форматов:

1234567

123 45 67

12 345 67

89031234567

8(903)1234567

8-903-123-45-67

8 903 123 45 67

+79031234567

+7(903)1234567

+7-903-123-45-67

+7 903 123 45 67

Пример:

Письма c адреса или на адрес *@mail.ru продолжить обрабатывать, всё остальное игнорировать.

<?xml version="1.0" encoding="utf-8"?>

<filter name="Message filter" version="1.0">

  <comment>Message filter.</comment>

 

  <table name="main">

 

    <rule enabled="1">

      <match>

        <c name="address" op="wildcard" value="*@mail.ru" />

      </match>

      <action name="accept" />

    </rule>

 

    <rule enabled="1">

      <action name="drop" />

    </rule>

 

  </table>

</filter>