2018年7月5日木曜日

Perl でメール送信(MIME::Lite編) 添付ファイルあり

MIME::Lite 使ったサンプルコードを記載。今度は添付ファイルありバージョン。


#!/usr/bin/perl
#
# メール送信サンプル
#
use Encode;
use MIME::Lite;
use strict;
use warnings;
use utf8;

# サブルーチンを呼んでメールを送る
&mailSend();

sub mailSend {
   my $from    = 'root@localhost';
   my $mailto  = 'user01@bar.com, user02@bar.com';
   my $subject = Encode::encode('MIME-Header-ISO_2022_JP', 'メール送信テスト');
   my $message = <<"BODY";
テストで送信するメールです

ここに本文を記載します。本文はヒアドキュメントを
利用して作成しています。

※本メールへの返信はしないでください。
BODY

  my $body = Encode::encode('iso-2022-jp', $message);

  # コンテナを作成
   my $msg = MIME::Lite->new(
       From => "$from",
       To => "$mailto",
       Subject => "$subject",
       Type => 'multipart/mixed',
   );

  # メッセージを作成
   $msg->attach(
     Type => 'text/plain; charset="ISO-2022-JP"',
     Encoding => '7bit',
     Data => "$body"
   );

  # 添付ファイル
   $msg->attach(
       Type => 'application/octet-stream',
       Disposition => 'attachment',
       Path => '/home/foo/attachment.zip',
       Filename => 'attachment.zip',
   );

# 送信
   my $smtp = 'smtp.foo.com';
   $msg->send('smtp',$smtp);
}

0 件のコメント:

コメントを投稿