久しぶりにRubyからGrowl for Windowsに通知するライブラリ(ruby_gntp)を更新。ネットワーク越しの通知、コールバックに対応とか...

ひさしぶりのruby_gntpの更新。
Gemcutterにアップしてるので、gem update ruby_gntpあるいはgem install ruby_gntpする前に..

$ gem install gemcutter 
$ gem tumble

するか

$ gem source -a http://gemcutter.org/

しといてください。

おもな変更点

ネットワーク越しの通知に対応しました
gntp = GNTP.new "App", "193.168.0.10", "password"
gntp.register :notification => [{:name => "hoge"}]
gntp.notify :name => "hoge"

というかんじでリモートのPCに対して通知を投げることができるようになりました。(やっと)
※リモートで通知を投げる場合はパスワード設定が必須になっているので注意。

コールバック通知に対応

Growl通知をクリックした場合、表示時間が過ぎて自動的に画面から消去された場合に、コールバック通知をうけとることができるようになりました。
以下のようにnotifyメソッドに対してブロックを渡すと、コールバックを受け取ると、そのブロックが実行されます。

gntp = GNTP.new "App", "193.168.0.10", "password"
gntp.register :notification => [{:name => "hoge"}]
gntp.notify(:name => "hoge") do |context|
  if context[:callback_result] == 'CLICKED'
    # 通知をクリックされた場合の処理
  else if context[:callback_result] == 'TIMEOUT'
    # 通知が自動的に消去された場合の処理
  end
end