Path: | doc.ja/usage.html |
Last Update: | Fri Feb 20 01:45:52 CET 2004 |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja-JP"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-2022-jp"> <meta http-equiv="Content-Language" content="ja-JP">
<title>TMail $B$N;H$$J}(B</title> </head> <body>
<h1>TMail $B$N;H$$J}(B</h1>
<h2>TMail $B$N35MW(B</h2>
<p> TMail $B$OEE;R%a!<%k$r07$&$?$a$NAm9g%i%$%V%i%j$G$9!#%a!<%k$H%a!<%k(B $B%\%C%/%9$N%O%s%I%j%s%0$r1JC$7$^$9!#=i4|$NL\E*$,%a!<%i$N:n@.$@$C$?(B $B$?$a!"<g$J;H$$J}$H$7$F$O!V%a!<%k$+$i>pJs$rF@$k!W!V?7$7$$%a!<%k$r:n@.$9$k!W(B $B$NFs<oN`$,A[Dj$5$l$F$*$j!"%/%i%$%"%s%HB&$N=hM}$K6/$/$J$C$F$$$^$9!#(B </p>
<h2>$B%a!<%k$+$i>pJs$rF@$k(B</h2>
<p> $B$3$l$O0lHV:G=i$K<BAu$5$l$?ItJ,$G$"$j!"(BTMail $B$,:G$bF@0U$H$9$k=hM}$G$b(B $B$"$j$^$9!#(B </p>
<h3>TMail::Mail $B%/%i%9(B</h3>
<p> TMail::Mail $B%/%i%9$O%a!<%k0lDL$r1JC$9$k%*%V%8%’%/%H$G$9!#$^$:$I$&$K$+(B $B$7$F$3$N%*%V%8%’%/%H$r:n$i$J$$$H$$$1$^$;$s!#$3$N%*%V%8%’%/%H$r:n$kJ}K!$O(B $B;0DL$j$"$j$^$9!#(B </p>
<ol> <li>$BJ8;zNs$+$i$D$/$k(B</li> <li>$B%U%!%$%k(B($BL>(B)$B$+$i$D$/$k(B</li> <li>Port $B$+$i$D$/$k(B</li> </ol>
<p> $BJ8;zNs!"%U%!%$%k$O$=$l$>$l%a!<%k0lDLJ,$@$1$r4^$s$G$$$J$1$l$P$$$1$^$;$s!#(B $B$=$N$&$($G0J2<$N$h$&$K:n@.$7$^$9!#(B </p> <pre> require ‘tmail’ mail = TMail::Mail.parse(string) # from String mail = TMail::Mail.load(filename) # from file </pre> <p> $B$3$3$K$OFC$KLdBj$O$J$$$H;W$$$^$9!#(B </p>
<h3>Port $B$H(B Loader</h3>
<p> Port $B$H$$$&$N$O(B TMail $B$K$*$1$k%a!<%k%=!<%9$NCj>]I=8=$G$9!#$?$H$($P(B $B>e=R$7$?J8;zNs$d%U%!%$%kL>$b%a!<%k%=!<%9$G!"(BTMail::Mail#parse $B$d(B load $B$O(B $BJ8;zNs$d%U%!%$%k$r0lEY(B Port $B$G%i%C%W$7$?$&$($G(B Mail $B%*%V%8%’%/%H$r:n@.(B $B$7$F$$$^$9!#$3$N(B Port $B$G%i%C%W$9$k$3$H$GJ8;zNs!"%U%!%$%k(B ($B>-MhE*$K$O(B IMAP $B%W%m%H%3%k$b!)(B) $B$N0c$$$r1JC$7$F$$$^$9!#(B </p>
<p> $B$?$@$7!"(BPort $B$r%f!<%6$,D>@\:n$k$3$H$O$"$^$j$J$$$G$7$g$&!#<g$K%f!<%6$,(B Port $B$r$5$o$k$3$H$K$J$k$N$O!"%a!<%k%\%C%/%9$N%i%C%Q!<$G$"$k(B Loader $B$r(B $B;H$&$H$-$G$9!#$?$H$($P(B MH $B%a!<%k%\%C%/%9$NCf$K$"$k%a!<%k$r=gHV$K=hM}$9$k(B $B$?$a$K$O0J2<$N$h$&$K$7$^$9!#(B </p> <pre> require ‘tmail’
loader = TMail::MhLoader.new( ’/home/aamine/Mail/inbox’ ) loader.each_port do |port|
mail = TMail::Mail.new(port) # ....
end </pre>
<h3>TMail::Mail $B%*%V%8%’%/%H$+$i>pJs$rF@$k(B</h3>
<p> $B0J>e$N$h$&$J<jCJ$G(B TMail::Mail $B%*%V%8%’%/%H$r:n$C$?$i!"$"$H$O$=$N%a%=%C%I$r(B $B8F$V$@$1$G$?$$$F$$$N$3$H$O$G$-$^$9!#$?$H$($P(B To: $B%"%I%l%9$r<h$k$J$i(B </p> <pre> require ‘tmail’ mail = TMail::Mail.parse( ‘To: Minero Aoki <aamine@loveruby.net>’ ) p mail.to # => ["aamine@loveruby.net"] </pre> <p> Subject: $B$J$i$P(B </p> <pre> p mail.subject </pre> <p> $B%a!<%kK\BN$J$i$P(B $B$H$$$&$h$&$K!"$H$F$b4JC1$G$9!#(B </p>
<p> $B>\$7$/$O(B TMail::Mail $B%/%i%9$N%j%U%!%l%s%9$r!"(B $B$h$j<BMQE*$JNc$H$7$F$O(B sample/from-check.rb $B$r8+$F$/$@$5$$!#(B </p>
<h3>MIME $B%^%k%A%Q!<%H%a!<%k(B</h3>
<p> MIME $B%^%k%A%Q!<%H%a!<%k$K$bBP1~$7$F$$$^$9!#%^%k%A%Q!<%H$N$H$-$O(B Mail#multipart? $B$,??$K$J$j!"(Bparts $B$K(B TMail::Mail $B%*%V%8%’%/%H$N(B $BG[Ns$,F~$j$^$9!#(B </p> <pre> require ‘tmail’ mail = TMail::Mail.parse( multipart_mail_string ) if mail.multipart? then
mail.parts.each do |m| puts m.main_type end
end </pre> <p> $B$h$j6qBNE*$JNc$H$7$F$O(B sample/multipart.rb $B$r8+$F$/$@$5$$!#(B </p>
<h3>TMail $B$,$d$i$J$$$3$H(B</h3>
<p> TMail $B$O!"%X%C%@$O<+F0$G%G%3!<%I!&%(%s%3!<%I$7$^$9$,!"K\BN(B($BK\J8(B)$B$O(B $B0l@ZJQ99$7$^$;$s!#$?$@$76a$$>-Mh$K$O(B Base64 $B$N%G%3!<%I$O<+F0$G$d$k(B $B$+$b$7$l$^$;$s!#(B </p>
<h2>$B?7$7$$%a!<%k$r:n@.$9$k(B</h2>
<p> $B$3$A$i$b(B TMail::Mail $B%/%i%9$,<gBN$G$9!#$H$K$+$/%a!<%k$r:n$l$P$$$$(B $B>l9g$O6uJ8;zNs$+$i!"%a!<%k%\%C%/%9$K:n$j$?$$>l9g$O%m!<%@$r7PM3$7$F(B $B%]!<%H$r:n@.$7$F$=$3$+$i!"%a!<%k%*%V%8%’%/%H$r:n$j$^$9!#(B </p> <pre> require ‘tmail’
# Example 1: create mail on only memory mail = TMail::Mail.new
# Example 2: create mail on mailbox (on disk) loader = TMail::MhLoader.new(’/home/aamine/Mail/drafts’) mail = TMail::Mail.new( loader.new_port ) </pre> <p> $B:n$C$?$i!"Cf?H$rF~$l$^$9!#(B </p> <pre> mail.to = ‘test@loveruby.net’ mail.from = ‘Minero Aoki <aamine@loveruby.net>’ mail.subject = ‘test mail’ mail.date = Time.now mail.mime_version = ‘1.0’ mail.set_content_type ‘text’, ‘plain’, {‘charset’=>’iso-2022-jp’} mail.body = ‘This is test mail.’ </pre> <p> $B$I$N%X%C%@$r%;%C%H$7$?$i$$$$$+$J$I:Y$+$$ItJ,$b$b$&$A$g$C$H%+%P!<(B $B$7$?$$$N$G$9$,!"$^$@<BAu$7$F$$$^$;$s!#$H$j$"$($:>e5-$N%X%C%@$O(B $B%;%C%H$7$?$[$&$,$h$$$G$7$g$&!#$^$?JV?.!&E>Aw$N>l9g$O$^$?$=$l$>$l(B $B5,Ls$,$"$j$^$9!#$3$l$b%+%P!<$7$?$$$N$G$9$,$^$@<BAu$7$F$$$^$;$s!#(B $B%P!<%8%g%s(B 1.0 $B$K4|BT$7$F$/$@$5$$!#(B </p>
<p> $B:G8e$KJ8;zNs2=$7$^$9!#(B </p> <pre> str = mail.encoded </pre> <p> $B:n@.85%]!<%H$K=q$-La$9$J$i!"$+$o$j$K0J2<$N$h$&$K$7$^$9!#(B </p> <pre> mail.write_back </pre> <p> write_back $B$OCf4VJ8;zNs$r2p$9$k$3$H$J$/%U%!%$%k$KD>@\=q$-$3$_$^$9!#(B </p>
<p> $B$h$j<BMQE*$JNc$H$7$F$O(B sample/sendmail.rb $B$r8+$F$/$@$5$$!#(B </p>
</body> </html>