読者です 読者をやめる 読者になる 読者になる

ウェブサービスを作っています。

Brandnew-J で放送中の曲を Growl で通知するスクリプト

ruby

最近は、VMWare Fusion で XP を常時起動させて、Brandnew-J をよく聴いています。
で、現在放送中の曲が growl でわかったら便利かなー、とか思って書いたけど、あんまり便利ではありませんでした。

#!/usr/bin/env ruby

require 'json_parser'  # http://webos-goodies.jp/archives/51019710.html
require 'open-uri'
require 'rubygems'
require 'meow'

uri = 'http://www.j-wavemusic.com/Player/DATA/song.json'
parser = JsonParser.new
meep = Meow.new('brandnewj')
current_id = nil

loop do
  song = parser.parse(open(uri) { |f| f.read }).first

  unless song['ID'] == current_id
    current_id = song['ID']

    if song['Title'] and song['Artist']
      sleep 30  # json の更新がフライング気味なので待機
      meep.notify song['Title'], "#{ song['Artist'] }\n#{ song['Title'] }"
    end
  end

  sleep 6
end