パソコンで作業をする時にradikoでラジオを聴きながらって方も多いのではないでしょうか?
お気に入りのラジオ局のURLをブラウザのブックマークやデスクトップのショートカットに登録しておくと比較的簡単にradikoを起動しすることができます。
起動したら再生ボタンを押さないといけない。
再生ボタンを押せばいいのですが、地味にめんどくさい。
今回は左手デバイスのLoupeDeckとApple Scriptを駆使して、一発選局・再生を実現しましたのでその方法をご紹介したいと思います。
Apple Scriptでコーディング
まずはApple Scriptを使ってコーディングから始めます。プログラムが苦手な方はこのスクリプトをコピペしてお使いくだい。
適切なフォルダーにxxxxxxxx.scptと名前で保存します。
tell application "Google Chrome"
activate
tell window 1
set ct_tabs to get number of tabs
set target_tab to 0
set targetLink to "https://radiko.jp/"
set targetStation to "YFM"
set StationURL to targetLink & "#!/live/" & targetStation
repeat with i from 1 to ct_tabs
if (length of (get URL of tab i) ≥ 17) and (strings 1 thru 18 of (get URL of tab i)) = targetLink then
set active tab index to i
set target_tab to i
exit repeat
end if
end repeat
if (target_tab = 0) then
make new tab at after (get active tab) with properties {URL:StationURL}
delay 2
else
tell active tab
execute javascript "window.location.href='" & StationURL & "';"
end tell
delay 1
end if
tell active tab
repeat
if (execute javascript "document.getElementsByClassName('live-detail__play')[0].children[0].innerText;") = "再生する" then
execute javascript "document.getElementsByClassName('live-detail__play')[0].children[0].click();"
delay 0.5
else
exit repeat
end if
end repeat
end tell
end tell
end tell
8行目:ラジオ局の指定する 例えば FMヨコハマの場合はhttps://radiko.jp/#!/live/YFM TOKYO FMの場合はhttps://radiko.jp/#!/live/FMT 赤文字の部分を指定する
11−17行目 既にGoogle Chromeでradikoを開いているtabがないかを調べる
19-21行目 radikoを開いているタブがなかった場合は、radikoで指定のラジオ局の表示する 2秒待機する
22-26行目 radikoを既に開いているタブがあった場合は、指定のラジオ局を表示する 1秒待機する
29-37行目 指定のラジオ局が表示されて『再生する』ボタンが現れたらクリックしする。 0.5秒待機する
スクリプト中に数秒待機する設定をしていますが、パソコン、ネットワーク環境によってうまく動作しない場合があるので、その際は時間を伸ばすなど調整してみください。
Lopedeckのボタンに割り当て
今回使うのはこちらの左手デバイスであるLoupedeck Liveです。
Loupedeckアプリから『カスタム』→『Applescript』の順に選択して、『名前』『Applescript file』を設定します。
お好みでアイコンなども変更してみてください。
本当なら同じAppleScriptファイルを汎用的にしていろんなラジオ局を選局・再生したかったのですが、Loupedeckの設定画面(Arguments)からパラメタとして渡したかったのですが、渡すことができなかった(指定してもAppleScriptに受け渡しされない)ので、ラジオ局ごとにAppleファイルを作成する必要があります。
まとめ
今回Applescriptで初めてコーディングしてみました。Googleで検索しながら試行錯誤しながら一応動作するようにはできました。
これでLoupedeckのボタンをクリックすればラジオ局が選局されて・自動再生されようになりました。
今回はMac環境でしたが、時間があればWindows版にもチャレンジしてみたいと思います。