Чтобы зарегистрировать обработчик, используйте следующую команду:

# ./mail_handlers_control --add
                --priority=<number>
                --name=<handler name>
                --mailname=<mailname>
                --queue=<before-local|before-remote|before-queue|before-data>
                --type=<sender|recipient|sender-domain|recipient-domain|global>
                --executable=<executable file>
                [ --context=<context> ]
                [ --enabled ]

Аргументы этой команды описаны в следующей таблице.

Аргумент Определение
--name Указывает имя обработчика. Эта строка может содержать любые символы, допустимые в имени файла UNIX (то есть, любые, кроме косой черты и NUL). Регистрация невозможна, если обработчик с указанным именем уже зарегистрирован.
--type

Указывает тип обработчика, может принимать следующие значения:

  • global обработчик вызывается для всех сообщений.
  • sender-domain обработчик вызывается для сообщений, домен адреса отправителя которых совпадает с указанным доменом
  • recipient-domain обработчик вызывается для сообщений, домен адреса получателя которых совпадает с указанным доменом
  • sender обработчик вызывается для сообщений, адрес отправителя которых совпадает с указанным адресом
  • recipient обработчик вызывается для сообщений, адрес получателя которых совпадает с указанным адресом

--mailname

Указывает домен или почтовый адрес для типа обработчика.

Не требуется, если тип обработчика – global.

--priority Указывает приоритет хука в очереди хуков.
--executable

Указывает исполняемый файл обработчика.

Регистрация невозможна, если указанный файл не существует.

--context Указывает контекст. Это строка типа opaque, передаваемая обработчику через командную строку.
--enabled Указывает, следует ли включать обработчик.
--queue

Указывает точку перехвата. Может принимать одно из следующих значений: before-queue, before-local, before-remote, before-data.

Смотрите подробную информацию в разделе Точки перехвата.

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

# ./mail_handlers_control --add
    --name=1my_handler-ld
    --type=sender
    --mailname=myema@example.com
    --executable=/usr/local/bin/my_handler.sh
    --context='context'
    --queue=before-local
    --priority=33
    --enabled