Для работы с почтой в Perl можно использовать модуль Email::Sender.
Пример отправки простого текстового письма:
use Email::Sender::Simple qw(sendmail);
use Email::Simple;
use Email::Simple::Creator;
my $to = 'recipient@example.com';
my $from = 'sender@example.com';
my $subject = 'Test Email';
my $body = 'Hello World!';
my $email = Email::Simple->create(
header => [
To => $to,
From => $from,
Subject => $subject,
],
body => $body,
);
sendmail($email);
Пример отправки письма с вложением:
use Email::Sender::Simple qw(sendmail);
use Email::MIME;
my $to = 'recipient@example.com';
my $from = 'sender@example.com';
my $subject = 'Test Email with Attachment';
my $body = 'Hello World!';
my $attachment = Email::MIME->create(
attributes => {
filename => 'test.txt',
content_type => 'text/plain',
disposition => 'attachment',
},
body => 'This is a test attachment.',
);
my $email = Email::MIME->create(
header_str => [
To => $to,
From => $from,
Subject => $subject,
],
parts => [
Email::MIME->create(
attributes => {
content_type => 'text/plain',
},
body => $body,
),
$attachment,
],
);
sendmail($email);
При использовании Email::Sender::Simple для отправки писем необходимо настроить SMTP-сервер в конфигурационном файле или передать параметры через переменные окружения.