SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)



Perl and Email #2
Perlの電子メール関係モジュールについてざっくりとした話




                @azumakuniyuki
                    Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                                  自己紹介


                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    自己紹介
       -   Azuma, Kuniyuki
       -   (@|id:)azumakuniyuki
       -   サーバ管理者(*BSD, Linux, 昔はSolarisも)
       -   プログラマ(Perl, /bin/sh, たまにC, R)
       -   京都市中京区(六角室町)



                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Perl
       - /bin/shで書きにくい場合はPerl
       - 2008年秋からモダンPerlを勉強
         - モダンPerl入門+CPANモジュールガイド
       - YAPC::Asia(2回参加・登壇)
       - Kansai.pm(2回目の参加)



                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Perlで作ったもの
       -   bounceHammer(ばうんすはんまー)
       -   バウンスメール解析専用
       -   コマンドラインツール+WebUI
       -   OpenSource! 2010/03〜
       -   http://bouncehammer.jp/



                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                                           本題


                                                Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Mail::*, MIME::*
       - 伝統的なメール関係のモジュール
       - 大量にある
       - どれを使ったらいいのやら




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




               Perl Email Project




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Perl Email Project(PEP)
       -   Mail::*, MIME::*を刷新
       -   軽量なEmail::*
       -   http://emailproject.perl.org/
       -   人手が足りない→Wiki閉じた(2009)
       -   メーリングリストは流れている


     http://emailproject.perl.org/
                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Install PEP
       -   cpan install Task::Email::PEP::All⏎
       -   ↑全部インストール(約40個ぐらい)
       -   cpan install Task::Email::PEP::NoStore⏎
       -   ↑Class::DBI依存のEmail::Store以外
       - cpan Email::Address⏎
       - ↑個別にインストール


                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                               作成・解析


                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Simple
       - メール解析・作成モジュール
       - 単純なテキストメール用
       - 添付ファイルとかmultipartなのは無理




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::MIME
       -   メール解析・作成モジュール
       -   Email::MIME->create(...
       -   ヘッダの日本語部分はEncode使う
       -   'To' => encode(
                   'MIME-Header-ISO-2022-JP',
       - 添付ファイルもOK

                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                                           送信


                                                Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Send
       -   軽量なメール送信モジュール
       -   昔はMail::Sendmail
       -   Envelope Fromの指定ができない
       -   Return::Valueモジュール




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Sender
       -   メール送信モジュール(Email::Sendの後継)
       -   Envelope Fromの指定できる
       -   Email::Sendより速い (65% faster)
       -   Moose ←依存モジュールは多め
       -   速度が必要ならNet::SMTP (33% faster)


     http://search.cpan.org/~rjbs/Email-Sender/lib/Email/Sender/Manual/QuickStart.pm
                                                   Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Net::SMTP
       -   伝統的なメール送信モジュール
       -   Perl 5.7.3からコアモジュール
       -   SMTPの手順に従って送信
       -   SMTPの知識が少し必要
       - ->datasend( ${Email::MIMEで作ったメール} );



                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                       メールアドレス


                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Address
       -   メールアドレス解析モジュール
       -   @x = テキストからアドレスを抽出
       -   "ほげ" <hoge@example.jp>
       -   Email::Address




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Address::Loose
       -   国内携帯電話のRFC違反アドレス対応
       -   RFC-ignored-localpart.@
       -   RFC..ignored..localpart@
       -   今は取得できないけどまだ存在する




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Email::Valid
       -   メールアドレスが正しいかどうか検査
       -   ->address() 正しい形式かどうか
       -   ->mx() MXレコードがあるかどうか
       -   ->address(… '-tldcheck' => 1); #TLD




                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                                      サーバ


                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    Net::Server::Mail
       -   use Net::Server::Mail::SMTP;
       -   ローカルに立ち上げるSMTPサーバ
       -   各SMTPコマンドに対応するsub {}を呼ぶ
       -   HELO, MAIL, RCPT, DATA,…
       -   受信後のキュー処理とかは自前で実装



                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




    qpsmtpd
       -   Perl製SMTPサーバ
       -   qmail-smtpdの拡張版的な位置付け
       -   perl.org, apache,org, cpan.org
       -   MTAを完全に置き換えるものではない
       -   ↑Sendmail, Postfix, qmailとか


     http://smtpd.develooper.com/
                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
Kansai.pm 第14回ミーティング in 京都 2011/11/26(土)




                             ご静聴
                            ありがとう
                           ございました

                                           Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.

Weitere ähnliche Inhalte

Was ist angesagt?

Webアプリケーションの無停止稼働
Webアプリケーションの無停止稼働Webアプリケーションの無停止稼働
Webアプリケーションの無停止稼働Kazuho Oku
 
バウンスメール解析システム BounceHammer
バウンスメール解析システム BounceHammerバウンスメール解析システム BounceHammer
バウンスメール解析システム BounceHammerazumakuniyuki 🐈
 
KOF 2011 bounceHammerによるバウンスメール解析の技術
KOF 2011 bounceHammerによるバウンスメール解析の技術KOF 2011 bounceHammerによるバウンスメール解析の技術
KOF 2011 bounceHammerによるバウンスメール解析の技術azumakuniyuki 🐈
 
Scapyで作る・解析するパケット
Scapyで作る・解析するパケットScapyで作る・解析するパケット
Scapyで作る・解析するパケットTakaaki Hoyo
 
tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。(^-^) togakushi
 
NorikraのJVMチューンで苦労している話
NorikraのJVMチューンで苦労している話NorikraのJVMチューンで苦労している話
NorikraのJVMチューンで苦労している話SATOSHI TAGOMORI
 

Was ist angesagt? (6)

Webアプリケーションの無停止稼働
Webアプリケーションの無停止稼働Webアプリケーションの無停止稼働
Webアプリケーションの無停止稼働
 
バウンスメール解析システム BounceHammer
バウンスメール解析システム BounceHammerバウンスメール解析システム BounceHammer
バウンスメール解析システム BounceHammer
 
KOF 2011 bounceHammerによるバウンスメール解析の技術
KOF 2011 bounceHammerによるバウンスメール解析の技術KOF 2011 bounceHammerによるバウンスメール解析の技術
KOF 2011 bounceHammerによるバウンスメール解析の技術
 
Scapyで作る・解析するパケット
Scapyで作る・解析するパケットScapyで作る・解析するパケット
Scapyで作る・解析するパケット
 
tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。tcpdumpとtcpreplayとtcprewriteと他。
tcpdumpとtcpreplayとtcprewriteと他。
 
NorikraのJVMチューンで苦労している話
NorikraのJVMチューンで苦労している話NorikraのJVMチューンで苦労している話
NorikraのJVMチューンで苦労している話
 

Andere mochten auch

Lis 680 podcasting lesson part 1
Lis 680 podcasting lesson part 1Lis 680 podcasting lesson part 1
Lis 680 podcasting lesson part 1Kate Kosturski
 
Businessclub VV Schoonhoven
Businessclub VV SchoonhovenBusinessclub VV Schoonhoven
Businessclub VV Schoonhovenpjboringa
 
σύρος
σύροςσύρος
σύροςteo70
 
LIS 680 podcasting lesson part 2
LIS 680 podcasting lesson part 2LIS 680 podcasting lesson part 2
LIS 680 podcasting lesson part 2Kate Kosturski
 
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...NASHP HealthPolicy
 
Operational and Development Overview of Polio Plus presentation
Operational and Development Overview of Polio Plus presentationOperational and Development Overview of Polio Plus presentation
Operational and Development Overview of Polio Plus presentationRotary Zones 25/26
 
Presentac...pptlab anato
Presentac...pptlab anatoPresentac...pptlab anato
Presentac...pptlab anatoisapekis
 
ζάκυνθος
ζάκυνθοςζάκυνθος
ζάκυνθοςteo70
 
Html5的过去与未来
Html5的过去与未来Html5的过去与未来
Html5的过去与未来youalab
 
Afghanistan Document with pics
Afghanistan Document with picsAfghanistan Document with pics
Afghanistan Document with picsRotary Zones 25/26
 
Department of Health and Hospitals
Department of Health and HospitalsDepartment of Health and Hospitals
Department of Health and HospitalsNASHP HealthPolicy
 
Brand and Leverage
Brand and LeverageBrand and Leverage
Brand and LeverageEzyMedia
 
Water in beeld gebracht
Water  in beeld gebrachtWater  in beeld gebracht
Water in beeld gebrachtTom Kuipers
 
Are You A Healthcare Professional Who Doesn't Know What e-Discovery Is
Are You A Healthcare Professional Who Doesn't Know What e-Discovery IsAre You A Healthcare Professional Who Doesn't Know What e-Discovery Is
Are You A Healthcare Professional Who Doesn't Know What e-Discovery IsDale Newton
 
Beloningsonderzoek 2010
Beloningsonderzoek 2010Beloningsonderzoek 2010
Beloningsonderzoek 2010pjboringa
 
Hong Kong To Beijing
Hong Kong To BeijingHong Kong To Beijing
Hong Kong To BeijingTom Kuipers
 

Andere mochten auch (20)

Lis 680 podcasting lesson part 1
Lis 680 podcasting lesson part 1Lis 680 podcasting lesson part 1
Lis 680 podcasting lesson part 1
 
Businessclub VV Schoonhoven
Businessclub VV SchoonhovenBusinessclub VV Schoonhoven
Businessclub VV Schoonhoven
 
σύρος
σύροςσύρος
σύρος
 
LIS 680 podcasting lesson part 2
LIS 680 podcasting lesson part 2LIS 680 podcasting lesson part 2
LIS 680 podcasting lesson part 2
 
Skank
SkankSkank
Skank
 
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...
Wendy Davis: Leveraging Public Health Capacity to Improve Health System Effic...
 
Biometrics
BiometricsBiometrics
Biometrics
 
Operational and Development Overview of Polio Plus presentation
Operational and Development Overview of Polio Plus presentationOperational and Development Overview of Polio Plus presentation
Operational and Development Overview of Polio Plus presentation
 
Presentac...pptlab anato
Presentac...pptlab anatoPresentac...pptlab anato
Presentac...pptlab anato
 
Presentation1
Presentation1Presentation1
Presentation1
 
ζάκυνθος
ζάκυνθοςζάκυνθος
ζάκυνθος
 
Html5的过去与未来
Html5的过去与未来Html5的过去与未来
Html5的过去与未来
 
Afghanistan Document with pics
Afghanistan Document with picsAfghanistan Document with pics
Afghanistan Document with pics
 
Department of Health and Hospitals
Department of Health and HospitalsDepartment of Health and Hospitals
Department of Health and Hospitals
 
Bodzanne nagy beatrix__kek_animált
Bodzanne nagy beatrix__kek_animáltBodzanne nagy beatrix__kek_animált
Bodzanne nagy beatrix__kek_animált
 
Brand and Leverage
Brand and LeverageBrand and Leverage
Brand and Leverage
 
Water in beeld gebracht
Water  in beeld gebrachtWater  in beeld gebracht
Water in beeld gebracht
 
Are You A Healthcare Professional Who Doesn't Know What e-Discovery Is
Are You A Healthcare Professional Who Doesn't Know What e-Discovery IsAre You A Healthcare Professional Who Doesn't Know What e-Discovery Is
Are You A Healthcare Professional Who Doesn't Know What e-Discovery Is
 
Beloningsonderzoek 2010
Beloningsonderzoek 2010Beloningsonderzoek 2010
Beloningsonderzoek 2010
 
Hong Kong To Beijing
Hong Kong To BeijingHong Kong To Beijing
Hong Kong To Beijing
 

Ähnlich wie Perl and Email #2/Kansai.pm第14回ミーティング@京都

Perl and Email #3 ``Haineko''/Kyoto.pm #5
Perl and Email #3 ``Haineko''/Kyoto.pm #5Perl and Email #3 ``Haineko''/Kyoto.pm #5
Perl and Email #3 ``Haineko''/Kyoto.pm #5azumakuniyuki 🐈
 
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2azumakuniyuki 🐈
 
最近僕が使うようになったPerl 5.10以降の新しいやつ
最近僕が使うようになったPerl 5.10以降の新しいやつ最近僕が使うようになったPerl 5.10以降の新しいやつ
最近僕が使うようになったPerl 5.10以降の新しいやつazumakuniyuki 🐈
 
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKA
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKAメールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKA
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKAazumakuniyuki 🐈
 
Perl and eMail at Kansai.pm #13 Meeting in Kyoto
Perl and eMail at Kansai.pm #13 Meeting in KyotoPerl and eMail at Kansai.pm #13 Meeting in Kyoto
Perl and eMail at Kansai.pm #13 Meeting in Kyotoazumakuniyuki 🐈
 
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4azumakuniyuki 🐈
 
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tinyazumakuniyuki 🐈
 
PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々azumakuniyuki 🐈
 

Ähnlich wie Perl and Email #2/Kansai.pm第14回ミーティング@京都 (10)

Perl and Email #3 ``Haineko''/Kyoto.pm #5
Perl and Email #3 ``Haineko''/Kyoto.pm #5Perl and Email #3 ``Haineko''/Kyoto.pm #5
Perl and Email #3 ``Haineko''/Kyoto.pm #5
 
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2
JSONでメール送信 | HTTP API Server ``Haineko''/YAPC::Asia Tokyo 2013 LT Day2
 
最近僕が使うようになったPerl 5.10以降の新しいやつ
最近僕が使うようになったPerl 5.10以降の新しいやつ最近僕が使うようになったPerl 5.10以降の新しいやつ
最近僕が使うようになったPerl 5.10以降の新しいやつ
 
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKA
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKAメールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKA
メールフォームからメールを送る近代的な方法 | YAPC::Kansai 2017 OSAKA
 
Perl and eMail at Kansai.pm #13 Meeting in Kyoto
Perl and eMail at Kansai.pm #13 Meeting in KyotoPerl and eMail at Kansai.pm #13 Meeting in Kyoto
Perl and eMail at Kansai.pm #13 Meeting in Kyoto
 
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4
[スパム報告]ボタンを押すとどうなるのか | Hosting Casual Talks #4
 
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny
猫とPerl〜応用編1/YAPC Asia Tokyo 2013 LT-THON::Tiny
 
PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々PerlモジュールをRubyに移植する時に落ちた穴々
PerlモジュールをRubyに移植する時に落ちた穴々
 
Sublime Text 2 Basics
Sublime Text 2 BasicsSublime Text 2 Basics
Sublime Text 2 Basics
 
Niigata.pm #1
Niigata.pm #1Niigata.pm #1
Niigata.pm #1
 

Mehr von azumakuniyuki 🐈

YAPC::Nagoya::Tiny 2019 | Makefile生活
YAPC::Nagoya::Tiny 2019 | Makefile生活YAPC::Nagoya::Tiny 2019 | Makefile生活
YAPC::Nagoya::Tiny 2019 | Makefile生活azumakuniyuki 🐈
 
NSEG勉強会(101)LT: 僕と長野県
NSEG勉強会(101)LT: 僕と長野県NSEG勉強会(101)LT: 僕と長野県
NSEG勉強会(101)LT: 僕と長野県azumakuniyuki 🐈
 
SendGridのない世界 | SendGrid Night in Osaka #2
SendGridのない世界 | SendGrid Night in Osaka #2SendGridのない世界 | SendGrid Night in Osaka #2
SendGridのない世界 | SendGrid Night in Osaka #2azumakuniyuki 🐈
 
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osaka
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 OsakaHokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osaka
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osakaazumakuniyuki 🐈
 
僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。azumakuniyuki 🐈
 
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性azumakuniyuki 🐈
 
Hachioji.pm #40 次のbounceHammer開発中
Hachioji.pm #40 次のbounceHammer開発中Hachioji.pm #40 次のbounceHammer開発中
Hachioji.pm #40 次のbounceHammer開発中azumakuniyuki 🐈
 
2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoring2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoringazumakuniyuki 🐈
 
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1 Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1 azumakuniyuki 🐈
 
実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013azumakuniyuki 🐈
 
JSONでメール送信(Haineko) / KOF2013
JSONでメール送信(Haineko) / KOF2013JSONでメール送信(Haineko) / KOF2013
JSONでメール送信(Haineko) / KOF2013azumakuniyuki 🐈
 
Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」azumakuniyuki 🐈
 
bounceHammerその後、導入事例、これから。
bounceHammerその後、導入事例、これから。bounceHammerその後、導入事例、これから。
bounceHammerその後、導入事例、これから。azumakuniyuki 🐈
 

Mehr von azumakuniyuki 🐈 (16)

YAPC::Nagoya::Tiny 2019 | Makefile生活
YAPC::Nagoya::Tiny 2019 | Makefile生活YAPC::Nagoya::Tiny 2019 | Makefile生活
YAPC::Nagoya::Tiny 2019 | Makefile生活
 
NSEG勉強会(101)LT: 僕と長野県
NSEG勉強会(101)LT: 僕と長野県NSEG勉強会(101)LT: 僕と長野県
NSEG勉強会(101)LT: 僕と長野県
 
Email is Slack
Email is SlackEmail is Slack
Email is Slack
 
SendGridのない世界 | SendGrid Night in Osaka #2
SendGridのない世界 | SendGrid Night in Osaka #2SendGridのない世界 | SendGrid Night in Osaka #2
SendGridのない世界 | SendGrid Night in Osaka #2
 
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osaka
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 OsakaHokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osaka
Hokkaido.pm#13参加報告 | YAPC::Kansai 2017 Osaka
 
僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。僕と北海道とPerl、それとMakefileも。
僕と北海道とPerl、それとMakefileも。
 
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性自動構築と自動テスト〜インフラのコード化とクラウドの優位性
自動構築と自動テスト〜インフラのコード化とクラウドの優位性
 
Hachioji.pm #40 次のbounceHammer開発中
Hachioji.pm #40 次のbounceHammer開発中Hachioji.pm #40 次のbounceHammer開発中
Hachioji.pm #40 次のbounceHammer開発中
 
2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoring2013 11-30-mailqueue-monitoring
2013 11-30-mailqueue-monitoring
 
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1 Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1
Plackで実装したメールサーバ"Haineko"のその後/Shibuya.pl #1
 
Perlの書籍紹介/KOF2013
Perlの書籍紹介/KOF2013Perlの書籍紹介/KOF2013
Perlの書籍紹介/KOF2013
 
実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013実践的bounceHammer / KOF2013
実践的bounceHammer / KOF2013
 
JSONでメール送信(Haineko) / KOF2013
JSONでメール送信(Haineko) / KOF2013JSONでメール送信(Haineko) / KOF2013
JSONでメール送信(Haineko) / KOF2013
 
Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」Kansai.pm #15 LT資料「猫とPerl」
Kansai.pm #15 LT資料「猫とPerl」
 
Namba.pm #0 LT資料
Namba.pm #0 LT資料Namba.pm #0 LT資料
Namba.pm #0 LT資料
 
bounceHammerその後、導入事例、これから。
bounceHammerその後、導入事例、これから。bounceHammerその後、導入事例、これから。
bounceHammerその後、導入事例、これから。
 

Perl and Email #2/Kansai.pm第14回ミーティング@京都

  • 1. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Perl and Email #2 Perlの電子メール関係モジュールについてざっくりとした話 @azumakuniyuki Cubicroot Co. Ltd.
  • 2. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) 自己紹介 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 3. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) 自己紹介 - Azuma, Kuniyuki - (@|id:)azumakuniyuki - サーバ管理者(*BSD, Linux, 昔はSolarisも) - プログラマ(Perl, /bin/sh, たまにC, R) - 京都市中京区(六角室町) Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 4. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Perl - /bin/shで書きにくい場合はPerl - 2008年秋からモダンPerlを勉強 - モダンPerl入門+CPANモジュールガイド - YAPC::Asia(2回参加・登壇) - Kansai.pm(2回目の参加) Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 5. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Perlで作ったもの - bounceHammer(ばうんすはんまー) - バウンスメール解析専用 - コマンドラインツール+WebUI - OpenSource! 2010/03〜 - http://bouncehammer.jp/ Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 6. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) 本題 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 7. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Mail::*, MIME::* - 伝統的なメール関係のモジュール - 大量にある - どれを使ったらいいのやら Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 8. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Perl Email Project Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 9. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Perl Email Project(PEP) - Mail::*, MIME::*を刷新 - 軽量なEmail::* - http://emailproject.perl.org/ - 人手が足りない→Wiki閉じた(2009) - メーリングリストは流れている http://emailproject.perl.org/ Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 10. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Install PEP - cpan install Task::Email::PEP::All⏎ - ↑全部インストール(約40個ぐらい) - cpan install Task::Email::PEP::NoStore⏎ - ↑Class::DBI依存のEmail::Store以外 - cpan Email::Address⏎ - ↑個別にインストール Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 11. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) 作成・解析 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 12. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Simple - メール解析・作成モジュール - 単純なテキストメール用 - 添付ファイルとかmultipartなのは無理 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 13. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::MIME - メール解析・作成モジュール - Email::MIME->create(... - ヘッダの日本語部分はEncode使う - 'To' => encode( 'MIME-Header-ISO-2022-JP', - 添付ファイルもOK Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 14. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) 送信 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 15. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Send - 軽量なメール送信モジュール - 昔はMail::Sendmail - Envelope Fromの指定ができない - Return::Valueモジュール Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 16. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Sender - メール送信モジュール(Email::Sendの後継) - Envelope Fromの指定できる - Email::Sendより速い (65% faster) - Moose ←依存モジュールは多め - 速度が必要ならNet::SMTP (33% faster) http://search.cpan.org/~rjbs/Email-Sender/lib/Email/Sender/Manual/QuickStart.pm Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 17. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Net::SMTP - 伝統的なメール送信モジュール - Perl 5.7.3からコアモジュール - SMTPの手順に従って送信 - SMTPの知識が少し必要 - ->datasend( ${Email::MIMEで作ったメール} ); Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 18. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) メールアドレス Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 19. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Address - メールアドレス解析モジュール - @x = テキストからアドレスを抽出 - "ほげ" <hoge@example.jp> - Email::Address Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 20. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Address::Loose - 国内携帯電話のRFC違反アドレス対応 - RFC-ignored-localpart.@ - RFC..ignored..localpart@ - 今は取得できないけどまだ存在する Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 21. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Email::Valid - メールアドレスが正しいかどうか検査 - ->address() 正しい形式かどうか - ->mx() MXレコードがあるかどうか - ->address(… '-tldcheck' => 1); #TLD Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 22. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) サーバ Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 23. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) Net::Server::Mail - use Net::Server::Mail::SMTP; - ローカルに立ち上げるSMTPサーバ - 各SMTPコマンドに対応するsub {}を呼ぶ - HELO, MAIL, RCPT, DATA,… - 受信後のキュー処理とかは自前で実装 Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 24. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) qpsmtpd - Perl製SMTPサーバ - qmail-smtpdの拡張版的な位置付け - perl.org, apache,org, cpan.org - MTAを完全に置き換えるものではない - ↑Sendmail, Postfix, qmailとか http://smtpd.develooper.com/ Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.
  • 25. Kansai.pm 第14回ミーティング in 京都 2011/11/26(土) ご静聴 ありがとう ございました Perl and Email #2 @azumakuniyuki / Cubicroot Co. Ltd.