The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Mail::ISO2022JP - compose ISO-2022-JP encoded email

SYNOPSIS

  use Mail::ISO2022JP;
  
  $mail = Mail::ISO2022JP->new();
  # compose a mail containing Japanese letters.
  $mail->compose(
    'Yamada Taro', 'taro@cpan.tld',
    'Kawabata Hanako', 'hanako@cpan.tld',
    'Kon-nichi-ha',
    'Ogenki desuka? Senjitsu ha Osewani nari mashita...'
  );
  # output the composed mail
  print $mail->output();

DESCRIPTION

This module is mainly for Japanese perl programmers. Because of its 7bit/US-ASCII character based regulation, an internet mail is required to compose through some encoding process when it includes non-7bit/US-ASCII characters. ISO-2022-JP is one of Japanese character encoding, which is usually used among Japanese people for the mail encoding. For ISO-2022-JP is 7bit encoding, to use it in mail message body has no problem. But it still has problem to use ISO-2022-JP in mail headers, since mail headers should be expressed only in US-ASCII characters. Then we should encode ISO-2022-JP header data (ex. sender name, recipient name, subject) again with MIME Base64 method. This module automates those kinds of operations.

METHODS

new()

Creates a new object.

compose($sender_name, $sender_address, $recipient_name, $recipient_address, $subject, $message)

$sender_address and $recipient_address should be valid as email address. $sender_name, $recipient_name, $subject, $message can contain Japanese characters. Note that this module runs under Unicode/UTF-8 environment, you should input these data in UTF-8 character encoding.

date($date_string)

Specifies mail origination date. This method must used before compose() method when you want to specify this value. Of course, date format should be compliant to the format of RFC2822 specification. It is like blow:

 Mon, 10 Mar 2003 18:48:06 +0900

Origination date is not a essential information for email (sendmail program will add automatically on posting). Don't forget to quote the string.

output()

Outputs already composed mail data.

post() *EXPERIMENTAL*

Posts a mail using sendmail program. At the default setting, it is supposed that sendmail program's name is `sendmail' under the systems's PATH environmental variable. You can specify exact location with sendmail() method.

sendmail($path) *EXPERIMENTAL*

Specifies sendmail location. ex. '/usr/bin/sendmail'

SEE ALSO

Encode
MIME::Base64

NOTES

This module runs under Unicode/UTF-8 environment (then Perl5.8 or later is required), you should input data in UTF-8 character encoding.

AUTHOR

Masanori HATA <lovewing@geocities.co.jp> (Saitama, JAPAN)

COPYRIGHT

Copyright (c) 2003 Masanori HATA. All rights reserved.

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