table of contents
| Sisimai::Message(3pm) | User Contributed Perl Documentation | Sisimai::Message(3pm) |
NAME¶
Sisimai::Message - Converts the bounce email text to the data structure.
SYNOPSIS¶
use Sisimai::Mail;
use Sisimai::Message;
my $mailbox = Sisimai::Mail->new('/var/mail/root');
while( my $r = $mailbox->read ) {
my $p = Sisimai::Message->rise('data' => $r);
}
my $notmail = '/home/neko/Maildir/cur/22222'; # is not a bounce email
my $mailobj = Sisimai::Mail->new($notmail);
while( my $r = $mailobj->read ) {
my $p = Sisimai::Message->rise('data' => $r); # $p is "undef"
}
DESCRIPTION¶
"Sisimai::Message" converts the bounce email text to the data structure. It resolves the email text into the UNIX From line, the header part of the mail, the delivery status, and RFC822 header part lines. When the email given as a argument of new() method is not a bounce email, the method returns "undef".
CLASS METHODS¶
"rise(Hash reference)"¶
rise() method is a constructor of "Sisimai::Message"
my $mailtxt = 'Entire email text';
my $message = Sisimai::Message->rise('data' => $mailtxt);
INSTANCE METHODS¶
"(from)"¶
from() method returns the UNIX From line of the email.
print $message->from;
"header()"¶
header() method returns the header part of the email.
print $message->header->{'subject'}; # Returned mail: see transcript for details
"ds()"¶
ds() method returns an array reference which include contents of the delivery status.
for my $e ( $message->ds->@* ) {
print $e->{'status'}; # 5.1.1
print $e->{'recipient'};# neko@example.jp
}
"rfc822()"¶
rfc822() method returns a hash reference which include the header part of the original message.
print $message->rfc822->{'from'}; # cat@example.com
print $message->rfc822->{'to'}; # neko@example.jp
"catch()"¶
catch() method returns any data generated by user-defined method passed at the "c___" argument of new() constructor.
AUTHOR¶
azumakuniyuki
COPYRIGHT¶
Copyright (C) 2014-2025 azumakuniyuki, All rights reserved.
LICENSE¶
This software is distributed under The BSD 2-Clause License.
| 2025-10-06 | perl v5.40.1 |