GUIでMediaTombを起動出来るアプリケーションを作ってみた

MediaTomb Starter

AppleScript の勉強用に GUI で MediaTomb を起動出来るアプリケーションを作ってみました。

最近、スターバックスの無線 LAN セキュリティが話題になっていましたが、DLNA は LAN から自由にアクセス出来てしまうので誤って起動しないようにダイアログを表示するようにしています。

MediaTomb Starter

複数のインターフェイスがある場合のためにインターフェイス選択画面が表示されます。ネットワークインターフェイス名だけを拾う方法がわからなかったので ifconfigen* のインターフェイスを拾うようにしています(一番重要な部分ですが、もしかしたら動作おかしいかも)。

MediaTomb Starter

ターミナルが開き、MediaTomb の実行コマンドが送られます。一応、終了方法のメッセージを表示。

MediaTomb Starter

ダウンロード

Google Code で配布しています。ご自由にどうぞ。

http://code.google.com/p/mattintosh4-devel/downloads/list

ソース

まだ覚えたてなのでしょぼくてすいません(´・ω・`)

AppleScript
display alert "mediatomb を起動します" message "公共無線LANなどの環境で利用するとデータ漏えいの危険性があります。mediatombを起動しますか?" buttons {"キャンセル", "OK"} cancel button 1 as warning
set aList to paragraphs of (do shell script "ifconfig | egrep -o  \"^en[0-9]\"")
set aRes to choose from list aList with prompt "インターフェイスを選択してください"
if aRes = false then return
tell application "Terminal"
    do script "mediatomb -e " & aRes
end tell
display alert "mediatomb を起動しました" message "終了する場合はターミナルで[Control+C]または[⌘+.]でプロセスを終了してください。上手くプロセスを終了できなかった場合はアクティビティモニタなどから終了できます。" as informational

Automator 使ってアプリケーション作ってましたが、ターミナルやシェルスクリプトから起動するような簡単なアプリケーションだと AppleScript 使ったほうがシンプルでいいですね。上書き保存してもアイコンファイルはそのままだし。記述を覚えるのはちょっと面倒ですが…。