# NAME Email::MIME::MobileJP - E-mail toolkit for Japanese Mobile Phones # DESCRIPTION __WARNING! THIS MODULE IS IN THE BETA QUALITY. API MAY CHANGE WITHOUT NOTICE!__ Email::MIME::MobileJP is all in one E-mail toolkit for Japanese mobile phones. гЃ“г‚ЊгЃЇгЂЃEmail::MIME г‚·гѓЄгѓјг‚єгЂЃгЃЉг‚€гЃігЂЃmobile 関係のモジュールをとりまとめて、カジュアルにつかえるようにするためのモジュールです。 E-mail まわりの処理をやるためのノウハウをまとめておけば、後々、お気楽にできるはずということです。 # г‚Їгѓѓг‚Їгѓ–гѓѓг‚Ї ## гѓЎгѓјгѓ«гЃ®еЏ—дїЎ(Parsing) メールのパーズは、以下のように、メールの文е—е€—г‚’гЃЏг‚ЏгЃ›гЃ¦г‚„г‚ЊгЃ°гЃ„гЃ„гЃ§гЃ™гЂ‚ use Email::MIME::MobileJP::Parser; my $src_text = do { local $/; <> }; my $mail = Email::MIME::MobileJP::Parser->new($src_text); メールオブジェクトから Subject をえるには以下のようにしましょう。 гЃ“гЃ“гЃ§гЃЁг‚Њг‚‹г‚‚гЃ®гЃЇ MIME гѓгѓѓгѓЂгЃ«гЃЇгЃ„гЃЈгЃ¦гЃ„г‚‹жѓ…е ±г‚’г‚‚гЃЁгЃ«гЂЃUTF-8 гЃ« decode гЃ•г‚ЊгЃџж–‡е—е€—гЃ§гЃ™гЂ‚ 可能ならば絵文е—г‚‚ decode гЃ—гЃѕгЃ™гЂ‚гЃ“г‚ЊгЃ«гЃЇ [Encode::JP::Mobile](http://search.cpan.org/perldoc?Encode::JP::Mobile) を利用しています。 my $subject = $mail->subject(); # サブジェクトをえる From г‚’гЃ€г‚‹гЃ«гЃЇд»Ґдё‹гЃ®г‚€гЃ†гЃ«гЃ—гЃѕгЃ™гЂ‚еђ„и¦Ѓзґ гЃЇ [Email::Address::Loose](http://search.cpan.org/perldoc?Email::Address::Loose) のインスタンスです。 my ($from) = $mail->from(); To г‚‚еђЊж§гЃ§гЃ™гЂ‚ my ($to) = $mail->to(); ### text part г‚’гЃ€г‚‹ text/plain гЃЄ part г‚’гЃ™гЃ№гЃ¦гЃ€гЃџгЃ„е ґеђ€гЃ«гЃЇд»Ґдё‹гЃ®г‚€гЃ†гЃ«гЃ—гЃѕгЃ™гЂ‚иї”г‚ЉеЂ¤гЃЇгЂЃUTF-8 decode гЃ•г‚ЊгЃџгЂЃж–‡е—е€—гЃ®й…Ќе€—гЃ§гЃ™гЂ‚ my @texts = $mail->get_texts(); text/html гЃЄгѓ‘гѓјгѓ€гЃ®гЃїгЃЊгЃ»гЃ—гЃ„е ґеђ€гЃ«гЃЇд»Ґдё‹гЃ®г‚€гЃ†гЃ«гЃ—гЃѕгЃ™гЂ‚ my @texts = $mail->get_texts(qr{^text/html}); ### з”»еѓЏ part г‚’гЃ€г‚‹ 以下のように、get\_parts というメソッドであつめましょう。@images гЃ®еђ„и¦Ѓзґ гЃЇгЂЃгѓ‘гѓјгѓ€г‚’гЃ‚г‚‰г‚ЏгЃ™ Email::MIME のインスタンスです。 my $mail = Email::MIME::MobileJP->new($src); my @images = $mail->get_parts(qr{^image/jpeg});; ### SPFгЃ®зўєиЄЌ SPF で、本当にケータイからおくられてるかとかチェックできますが、softbank гЃ® SPF гЃЊгЃЏгЃ•гЃЈгЃ¦г‚‹гЃЈгЃ¦ nekokak гЃЊгЃ„гЃЈгЃ¦гЃџгЃ®гЃ§гЂЃгЃ‚г‚“гЃѕг‚ЉеЅ№гЃ«гЃџгЃџгЃЄгЃ„гЃ‹г‚‚гЃ—г‚ЊгЃЄгЃ„гЂ‚@masason どうにかしてください。詳細は以下のサイトをみてください。 http://blog.nekokak.org/show?guid=Vl8eRFxp3xGW08LZob1Swg ## гѓЎгѓјгѓ«гЃ®йЂЃдїЎ ### メールオブジェクトを作成する Email::MIME::MobileJP::Creator г‚’гЃ¤гЃ‹гЃ€гЃ°гЂЃз°ЎеЌгЃ«гѓЎгѓјгѓ«г‚Єгѓ–ジェクトを作成できます。 use utf8; use Email::MIME::MobileJP::Creator; use Email::Send; my $to = 'example@ezweb.ne.jp'; my $creator = Email::MIME::MobileJP::Creator->new($to); $creator->body('е…ѓж°—гЃ§г‚„гЃЈгЃ¦г‚‹гЃ‹гѓј?'); $creator->from('from@example.com'); $creator->subject('г‚ігѓігѓ‹гѓЃгѓЇ'); my $mail = $creator->finalize(); # Email::Send гЃ§йЂЃдїЎгЃ™г‚‹ my $sender = Email::Send->new({mailer => 'Sendmail'}); $sender->send($mail); ### ж·»д»гЃ—гЃџгЃ„е ґеђ€ マルチパートで写真などを添д»гЃ—гЃџгЃ„е ґеђ€гЃ«гЃЇд»Ґдё‹гЃ®г‚€гЃ†гЃ«гЃ™г‚ЊгЃ°г‚€гЃ„гЃ§гЃ—г‚‡гЃ†гЂ‚ use utf8; use Email::MIME::MobileJP::Creator; my $to = 'example@ezweb.ne.jp'; my $creator = Email::MIME::MobileJP::Creator->new($to); $creator->from('from@example.com'); $creator->subject('г‚ігѓігѓ‹гѓЃгѓЇ'); $creator->add_text_part('е…ѓж°—гЃ§г‚„гЃЈгЃ¦г‚‹гЃ‹гѓј?'); $creator->add_part( $photo => { 'fimename' => 'hoge.jpg', 'content_type' => 'image/jpeg', 'encoding' => 'base64', 'name' => 'sample.jpg', }, ); my $mail = $creator->finalize; # Email::Send гЃ§йЂЃдїЎгЃ™г‚‹ my $sender = Email::Send->new({mailer => 'Sendmail'}); $sender->send($mail); ### Email::MIME::MobileJP::Template гЃ®г‚„гЃ¤г‚’гЃ¤гЃ‹гЃ†гѓ‘г‚їгѓјгѓі my $mail_maker = Email::MIME::MobileJP::Template->new('Text::Xslate' => {path => ['email_tmpl/']}); my $mail = $mail_maker->render('signup.eml', {token => $token, syntax => 'TTerse'}); my $sender = Email::Send->new({mailer => 'Sendmail'}); $sender->send($mail); гЃџгЃ гЃ—гЃ“гЃ“гЃ§ email\_tmpl/signup.eml гЃ®дёиє«гЃЇгЂЃд»Ґдё‹гЃ®гЃЁгЃЉг‚ЉгЂ‚ Subject: [Example] サインアップ! 以下をクリックせよ http://example.com/signup/[% token %] гЃ“гЃ†гЃ„гЃ†гѓ†гѓігѓ—гѓ¬г‚’гЃЉгЃ„гЃ¦гЃЉгЃ‘гЃ°гЂЃз°ЎеЌгЃ«гѓЎгѓјгѓ«г‚’йЂЃдїЎгЃ§гЃЌг‚‹гЃ®гЃ§гЃџгЃ„гЃёг‚“гЃ№г‚“г‚ЉгЃ§гЃ™гЃгЂ‚ # AUTHOR Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM> # SEE ALSO # LICENSE Copyright (C) Tokuhiro Matsuno This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.