Hatena::ブログ(Diary)

鯖屋の妄想書き連ね このページをアンテナに追加 RSSフィード

2012-05-08

rubyでメール受信について調べていた際に学んだ事のメモ

rubyでメール受信をどうするのか調査していた際に以下のサイトを拝見した

POP3によるメール受信 - Rubyの魔神 - はてなRubyグループ
http://ruby.g.hatena.ne.jp/garyo/20071213/1197529946

この中でPStoreというライブラリを使っており、仕組みを学んだので
備忘録に残しておく


参考サイトより一部抜粋
---------------------------------
maildir = './inbox'
Dir::mkdir(maildir) if not FileTest::directory?(maildir)

counter = PStore.new(maildir+'counter')
counter.transaction do
if counter['counter'].nil? then
counter['counter'] = 1
end
end

i = 0
counter.transaction do
i = counter['counter']
end
---------------------------------

この処理により./inbox/counterというファイルに
rubyオブジェクトが書き込まれる。
オブジェクトにはハッシュでcounterというキーで現在のメール受信カウンターの値が
格納されており、次回の処理はこの値の続きから処理される

なお、オブジェクトの中身は以下のようになっている
#<PStore:0x1425b9d0
@abort=false,
@filename="counter",
@rdonly=true,
@table={"counter"=>25},
@transaction=true>

こんな処理が簡単に書けるようにもっとrubyの理解を深めたい。

PStore - Rubyリファレンスマニュアル
http://www.ruby-lang.org/ja/old-man/html/PStore.html

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/rota_san/20120508/1336478485
リンク元