Mail::Message::Construct::Bounce(3pm)

NAME
Mail::Message::Construct::Bounce - bounce a Mail::Message

SYNOPSIS
  $message->bounce(To => 'you')->send;

DESCRIPTION
Complex functionality on Mail::Message objects is implemented in different files which are autoloaded. This file implements the functionality related to bouncing messages off to other destinations.

Be warned: bouncing messages was very common practice in the past, but does not play well together with SPF spam protection. Unless you bounce messages which originate from inside your own infrastructure, you may get the message rejected by the spam-filters of the receivers. The way around it, is to implement ARC... which the MailBox suite did not try (yet).

METHODS

  Constructing a message

$obj->bounce( [<$rg_object|%options>] )
    The program calling this method considers itself as an intermediate step in the message delivery process; it therefore leaves a resent group of header fields as trace.

    When a message is received, the Mail Transfer Agent (MTA) adds a "Received" field to the header. As %options, you may specify lines which are added to the resent group of that received field. "Resent-*" is prepended before the field-names automatically, unless already present.

    You may also specify an instantiated Mail::Message::Head::ResentGroup (RG) object. See Mail::Message::Head::ResentGroup::new() for the available options. This is required if you want to add a new resent group: create a new "Received" line in the header as well.

    If you are planning to change the body of a bounce message, don't! Bounced messages have the same message-id as the original message, and therefore should have the same content (message-ids are universally unique). If you still insist, use Mail::Message::body().

    » example:

      my $bounce = $folder->message(3)->bounce(To => 'you', Bcc => 'everyone');

      $bounce->send;
      $outbox->addMessage($bounce);

      my $rg     = Mail::Message::Head::ResentGroup->new(To => 'you',
         Received => 'from ... by ...');
      $msg->bounce($rg)->send;

DIAGNOSTICS

Error: method bounce requires To, Cc, or Bcc.
    The message bounce() method forwards a received message off to someone else without modification; you must specified it's new destination. If you have the urge not to specify any destination, you probably are looking for reply(). When you wish to modify the content, use forward(). Cast by bounce()

SEE ALSO
This module is part of Mail-Message version 4.03, built on January 26, 2026. Website: http://perl.overmeer.net/CPAN/

LICENSE
For contributors see file ChangeLog.

This software is copyright (c) 2001-2026 by Mark Overmeer.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.