Xで「Wi-Fi接続をトリガーに(SSIDに応じて)何かを実行する」というのは容易に書ける。Wi-Fi接続ツールを起動するという機構を実現してみた。SSIDを判定してアプリを起動するスクリプトを書く。shが苦手なら他の言語でも良い。-gで前面に出てきてフォーカスを奪うのを抑制している。openしてもよさそうだが、-gが利かないアプリもあるので一般的にこうするのが望ましい。このスクリプトをcronに登録して定期実行しても動くといえば動くが、もうちょっとスマートな方法を考えよう。Unix系OSでは、ネットワークの接続・切断時には特定の設定ファイルが更新されることが多い。10.9の場合は、昔ながらの/etc/resolv.conf(実体は/var/run/resolv.conf)を含め、3つほどのファイルが、ネットワーク環境の変化に応じて更新されるようだ。Xにはファイルの更新を検知する機構が備わっており、launchd(8)を使えば一般ユーザでも手軽に更新をトリガーに何かを実行するということが可能だ。こんなplistを書けば良い。</plist>あとは、launchdに登録すれば完了。~/Library/LaunchAgents/org.idaemons.wifido.plistこれで、対応アクセスポイントにつながるや否や、接続ツールが起動して認証され、Wi-Fiが使えるようになるはず。うまく動いたら、他の接続サービスでも同様にするとか、特定のSSIDのときだけdaemonを起動するとか、応用してみよう。Wi-Fi接続ツールを自動起動する”工夫と趣向と分別と。