# 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](https://metacpan.org/pod/Encode::JP::Mobile) を利用ã—ã¦ã„ã¾ã™ã€‚ my $subject = $mail->subject(); # サブジェクトをãˆã‚‹ From ã‚’ãˆã‚‹ã«ã¯ä»¥ä¸‹ã®ã‚ˆã†ã«ã—ã¾ã™ã€‚å„è¦ç´ 㯠[Email::Address::Loose](https://metacpan.org/pod/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.