名前¶
Net::POP3 - POP3(Post Office Protocol 3)クライアントクラス (RFC1939)
概要¶
use Net::POP3;
# コンストラクタ
$pop = Net::POP3->new('pop3host');
$pop = Net::POP3->new('pop3host', Timeout => 60);
説明¶
このモジュールは、POP3プロトコルへのクライアントインタフェースを実装し、 Perl5アプリケーションがPOP3サーバーと通信することを可能にします。 このドキュメントは、読者がRFC1939で記述されているPOP3プロトコルの概念に 精通しているものとします。
新しいNet::POP3オブジェクトはnewメソッドによって作られなければなりません。 一度作成すれば、このオブジェクトを通して全てのPOP3コマンドにアクセスすることが できます。
使用例¶
ここに、いくつか小さな使用例が必要 :-)
コンストラクタ¶
- new ( [ HOST, ] [ OPTIONS ] )
-
新しい Net::POP3 オブジェクトのコンストラクタです。
HOST
は POP3接続に必要とされるリモートホストの名前です。HOST
が指定されなかった場合、Net::Config
で指定されたPOP_Host
が使われます。OPTIONS
はキーと値の組を使ってハッシュのような形式で渡されます。 指定できるオプションは以下の通りです:ResvPort - 与えられると、
Net::POP3
オブジェクトのためのソケットは ソケットが作成されたときbind
を使って与えられたローカルポートに 結び付けられます。Timeout - POP3サーバーからの応答を待つ最大時間を秒単位で 指定します(デフォルト: 120)
Debug - デバッグ情報を利用できるようにします
メソッド¶
特に記述がなければ、全てのメソッドはtrueまたはfalseを返します。 trueが処理が成功したことを意味します。メソッドが値を返すと 宣言しているときには、失敗ではundefまたは空リストを返します。
- user ( USER )
-
USER コマンドを送信します。
- pass ( PASS )
-
PASS コマンドを送信します。メールボックスの中のメッセージ数を返します。
- login ( [ USER [, PASS ]] )
-
USER、PASSコマンドの両方を送信します。もし
PASS
が指定されなければ、Net::POP3
はNet::Netrc
を使って、使用中のホスト名、ユーザ名を使って パスワードを検索します。 もしusernameが指定されなければ、現在のユーザー名が使用されます。メールボックスのなかのメッセージ数を返します。しかしサーバーにメッセージが 何もなければ文字列
"0E0"
を返します。これはブール値コンテキストでは trueになりますが、数値コンテキストでは0です。指定したユーザがサーバーで認証できなければ、undefが返されます。
- apop ( [ USER [, PASS ]] )
-
サーバーでパスワード
PASS
を持ったUSER
で認証を行います。 "login"と似ていますが、パスワードはクリアなテキストで送信されません。このメソッドを使うためには、Digest::MD5 か MD5 モジュールがインストール しておかなければなりません。そうでなければ、このメソッドはundefを返します。
- top ( MSGNUM [, NUMLINES ] )
-
ヘッダおよびボディの先頭から
NUMLINES
行目以降のMSGNUM
行を取得します。 サーバーから読みこんだテキスト行が入った配列へのリファレンスを返します。 - list ( [ MSGNUM ] )
-
引数が指定されると、
list
は、そのメッセージの大きさをオクテット数で返します。引数を指定しなければ、ハッシュへのリファレンスを返します。 キーは削除されていない全てのメッセージ番号(
MSGNUM
)、 値はその大きさのオクテット数になります。 - get ( MSGNUM [, FH ] )
-
リモート・メールボックスから指定されたメッセージ番号
MSGNUM
のメッセージを 取得します。サーバーから読みこんだテキスト行が入った配列へのリファレンスを 返します。 もしFH
が与えられると、サーバーから返された行はファイルハンドルFH
に出力されます。 - getfh ( MSGNUM )
-
get()と同様。ただし結び付けられたファイルハンドルを返します。 このファイルハンドルから読み込むとリクエストされたメッセージを 返します。メッセージの終わりでファイルハンドルはEOFを返します。 そして再利用するべきではありません。
- last ()
-
アクセスされたメッセージのなかで一番大きなメッセージ番号(
MSGNUM
)を返します。 - popstat ()
-
2つの要素を持った配列を返します。それらは削除されていないメッセージ数と メールボックスの大きさのオクテット数になります。
- ping ( USER )
-
2つの要素を持った配列を返します。それらは新しいメッセージの数と
USER
のためのメッセージの合計数になります。 - uidl ( [ MSGNUM ] )
-
指定された
MSGNUM
のためのユニークな識別子を返します。MSGNUM
が 指定されなければ、uidl
はキーがメッセージ番号、値がユニークな識別子 というハッシュへのリファレンスを返します。 - delete ( MSGNUM )
-
MSGNUM
のメッセージがリモートメールボックスから削除されるように印をつけます。 サーバーとの接続が切れるとき、印をつけられた全てのメッセージは リモートメールボックスから削除されます。 - reset ()
-
リモートPOP3サーバーのステータスをリセットします。 これにはすべてのメッセージが削除されないよう状態をリセットすることも含みます。
- quit ()
-
リモートPOP3サーバーとの接続を切断し終了します。 削除されるように印がつけられたメッセージはすべてリモートメールボックスから 削除されます。
注意¶
Net::POP3
オブジェクトがquit
メソッドが呼ばれる前に スコープから外れると、接続が切られる前にreset
が呼び出されます。 これは削除されるように印がつけられたメッセージが削除されないことを 意味します。
参考資料¶
作者¶
Graham Barr <[email protected]>
著作権(COPYRIGHT)¶
Copyright (c) 1995-1997 Graham Barr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
$Id$