f8g

まだ聴いてない曲を意識したい

友達や家族からCDを借りたり違法ダウンロードしたりしてると、あっという間にプレイリストの中の曲が膨らんできて、一体どの曲を聴いてないか困る、なんて事例がよくあります。自分もそうです。(違法ダウンロードしているという意味ではない) なので、
http://gyazo.com/f9e1c06683e7d6f73f633132be107d22.png
みたいなスマートプレイリストを作って聴いてるんですが、聴いてない曲が減ってる気がしない。いい加減ムカついてきたので、Twitterで知れるようにします。

var user = "username";
var pass = "password";

// iTunesが起動してるかチェック
var WMI       = GetObject("winmgmts:\\\\.\\root\\cimv2");
var processes = WMI.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'iTunes.exe'");

if(processes.Count != 1)
	WSH.Quit();

var iTunes    = WSH.CreateObject("iTunes.Application");
// ライブラリのdont_listenが聴いてない曲のプレイリスト
var playlists = iTunes.Sources.ItemByName("\u30E9\u30A4\u30D6\u30E9\u30EA").Playlists;
var playlist  = playlists.ItemByName("dont_listen");
var count     = playlist.Tracks.Count;

post(count);
//WSH.Echo(count);

function post(text){
	var XmlHttp = WScript.CreateObject('MSXML2.XMLHTTP');
	XmlHttp.open('POST', "http://twitter.com/statuses/update.json", false, user, pass);
	XmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	XmlHttp.send('status=' + encodeURIComponent(text));
}

音楽聴いてないのにクソ重いiTunesがいちいち起動するのも腹立たしいので、起動してるかチェックしてます。これをタスクスケジューラで毎日実行するようにします。拡張子jsをcscriptなどに関連付けておく必要があるかもしれないので、それが嫌な人はwsfで書いた方がいいかも。
専用のアカウントでも作ってXPathGraphなどでグラフにすれば音楽を聴く意欲が増しますね。