Ruby 2.3.0 リファレンスマニュアル > ライブラリ一覧 > net/imapライブラリ > Net::IMAPクラス > add_response_handler

instance method Net::IMAP#add_response_handler

add_response_handler(handler) -> ()[permalink][rdoc]
add_response_handler(handler) {|resp| ...} -> ()

レスポンスハンドラを追加します。

レスポンスハンドラはサーバから応答を受け取るごとに 呼びだされます。ハンドラには Net::IMAP::TaggedResponse もしくは Net::IMAP::UntaggedResponse オブジェクトが 渡されます。

主にサーバからの非同期的なイベントを受け取るため に用います。例えば EXISTS 応答を受け取る (メールボックスに新たなメールが追加されたタイミングで発生します) ためなどに用いられます。

レスポンスハンドラはメインのスレッドとは別のスレッドで 呼びだされることに注意してください。

例:

imap.add_response_handler do |resp|
  p resp
end
[PARAM] handler:
追加するハンドラ(ProcMethod オブジェクト)

[SEE_ALSO] Net::IMAP#remove_response_handler