Sympa::Mailer(3Sympa)

NAME
Sympa::Mailer - Store messages to sendmail

SYNOPSIS
  use Sympa::Mailer;
  use Sympa::Process;
  my $mailer = Sympa::Mailer->instance;
  my $process = Sympa::Process->instance;

  $mailer->store($message, ['user1@dom.ain', user2@other.dom.ain']);

DESCRIPTION
Sympa::Mailer implements the class to invoke sendmail processes and store messages to them.

  Methods

instance ( )
    Constructor. Creates a singleton instance of Sympa::Mailer object.

    Returns:

    A new Sympa::Mailer instance, or undef for failure.

reaper ( [ blocking => 1 ] )
    DEPRECATED. Use "reap_child" in Sympa::Process.

    Instance method. Non blocking function called by: main loop of sympa, task_manager, bounced etc., just to clean the defuncts list by waiting to any processes and decrementing the counter.

    Parameter:

    blocking => 1
        Operation would block.

    Returns:

    PID.

store ( $message, $rcpt, [ envid => $envid ], [ tag => $tag ] )
    Instance method. Makes a sendmail ready for the recipients given as argument, uses a file descriptor in the smtp table which can be imported by other parties. Before, waits for number of children process < number allowed by sympa.conf

    Parameters:

    $message
        Message to be sent.

        {envelope_sender} attribute of the message will be used as SMTP "MAIL FROM:" field.

    $rcpt
        Scalar, scalarref or arrayref, for SMTP "RCPT TO:" field.

    envid => $envid
        An envelope ID of this message submission in notification table. See also Sympa::Tracking.

    tag => $tag
        TBD

    Returns:

    Filehandle on opened pipe to output SMTP "DATA" field. Otherwise "undef".

  Attributes
Sympa::Mailer instance may have following attributes:

{log_smtp}
    If true value is set, each invocation of sendmail process will be logged.

{redundancy}
    Positive integer. If set, maximum number of invocation of sendmail is divided by this value.

SEE ALSO
Sympa::Message, Sympa::Process, Sympa::Spool::Listmaster, Sympa::Spool::Outgoing.

HISTORY
Sympa::Mailer, the rewrite of mail.pm, appeared on Sympa 6.2.