NAME

Mail::MtPolicyd::Plugin::Quota - mtpolicyd plugin for accounting in sql tables

VERSION

version 2.05

DESCRIPTION

This plugin can be used to do accounting based on request fields.

Example

<Plugin quota-clients>
  module = "Quota"
  table_prefix = "acct_"

  # per month
  time_pattern = "%Y-%m"
  # per ip
  field = "client_address"
  # allow 1000 mails
  metric = "count"
  threshold = 1000
  action = "defer you exceeded your monthly limit, please insert coin"
</Plugin>

Configuration

Parameters

The module takes the following parameters:

(uc_)enabled (default: on)

Enable/disable this check.

(uc_)field (required)

The field used for accounting/quota.

(uc_)metric (required)

The metric on which the quota should be based.

The Accounting module stores the following metrics:

count

Number of mails recivied.

count_rcpt

Number of mails recivied multiplied with number of recipients.

size

Size of mails recivied.

size_rcpt

Size of mails recivied multiplied with number of recipients.

time_pattern (default: "%Y-%m")

A format string for building the time key used to store counters.

Default is to build counters on a monthly base.

For example use:

* "%Y-%W" for weekly
* "%Y-%m-%d" for daily

See "man date" for format string sequences.

You must use the same time_pattern as used in for the Accounting module.

threshold (required)

The quota limit.

action (default: defer smtp traffic quota has been exceeded)

The action to return when the quota limit has been reached.

table_prefix (default: "acct_")

A prefix to add to every table.

The table name will be the prefix + field_name.

AUTHOR

Markus Benning <ich@markusbenning.de>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2014 by Markus Benning <ich@markusbenning.de>.

This is free software, licensed under:

The GNU General Public License, Version 2, June 1991