2008年10月19日

お名前.com-DDNS自動更新(MacOSX)その2

自宅サーバのDDNS更新スクリプトを作り直しました



4月に-お名前.com-DDNS自動更新(MacOSX)-という日記を書いたのですが、この時はAutomator とウィジェット-Minutes(ミニッツ)-を利用して更新スクリプトを作成しました。

しかし、この時作成したスクリプトだと巧く更新出来なかったり、TV録画中に作動すると録画がエラーになったりして良くありませんでした。幸い?BBIQの回線も開通当初よりは安定して不意のIPアドレス変更はなくなりました(月に1回変更される程度)のでスクリプトを停止しておりました。

しかし、それでもやはり不意のIPアドレス変更は心配なのでスクリプトを見直す事にしたのです。

んで、今回利用させてもらったアプリは、まずはAutomator。
そしてタイマーソフトにはKyasu's Original Softさんの
-SimpleAlarmX-を。
前回更新する為のブラウザにはSafariを使っていましたが、今回はFirefoxを使うことにしました。



興味のある方は


まずFirefoxで新規のブックマークを作ります。
ブックマークの管理新規のブックマーク...を開き



URLの欄に
https://ddns.onamae.com/onamae/navi/Certify.jsp?account=******&password=******
(*****はIDとパスワード)
を入力して適当に名前をつけます。(ここでは『ddns』)

さらにもうひとつ新規ブックマークを作成します

URLの欄に
https://ddns.onamae.com/onamae/navi//qupdate/QupHost_comp.jsp?hstcnt=0
と入力して名前をつけて保存します。(ここでは『ddns更新』)

出来上がったブックマークを選択してディスクトップ上にドラックすると
WEBインターネットロケーションファイルが作成されます



使うのはこのロケーションファイルなので作成したFirefoxのブックマークは
削除してもオkです。

ロケーションファイルは任意の場所に移動して保管します

次にAutomatorを起動してライブラリのFinderを選択。
アクションから指定されたFinder項目を取得を選択します。
ウィンドウにロケーションファイルの『ddns』をドラックします。

次に同じくFinderのアクションから
Finder項目を開くを選択します。

このアプリケーションで開く:設定はそのまま
デフォルトのアプリケーションにします。
※FirefoxがデフォルトWebブラウザであればFirefoxで開きます。

次にライブラリのAutomatorを選択して、アクションから
一時停止を選択します。
一時停止する時間は20秒程が宜しいかと。
(ブラウザが起動する時間を稼ぐ為にスクリプトを一時停止させます)



『ddns更新』も同じように設定します

最後にAutomatorを選択してアクションから
AppleScriptを実行を選択して

tell application "Firefox"
quit
end tell

と入力します。(Firefoxを終了させるスクリプト)

出来上がったワークフローをアプリケーションとして保存します。

次にSimpleAlarmXを起動し、プリセットの設定...
IPアドレス更新を動作させたい時間を指定します



上記の設定ではTV録画の定期録画時間帯と
自分がマシンを使用している時間帯を避けて設定しています。
Minutesだと指定時間単位で動くのでTV録画や自分が使用している時でもスクリプトが動いてしまいましたが、SimpleAlarmXだとスクリプトを動かしたくない時間帯を外して個別に指定出来るので便利です。

ただ、バグなのか伝言のチェックをはずしても、しばらくすると再度チェックが入ってしまいます。その際は伝言の入力ボボックス内にあるメッセージを削除しておくと良いようです。
(伝言にチェックが入っているとタイマー作動時に確認ダイアログが出てしまいます)

起動にチェックを入れると開きたいファイルを訊いてきますので、先程作成したワークフローを指定します。

あとは起動項目にSimpleAlarmXを指定しておくと
指定時間にお名前.comのDDNS更新が可能になります。
(SimpleAlarmXの時報読み上げは解除しておく方が良いかも)


変更前:
・Safariの起動が遅く指定したURLを読み込む前に終了してしまった
・タイマーが動く時に確認のメッセージが表示されてしまう(Minutes)
・TV録画中にタイマーが動くとエラーになってしまう
・自分がマシンを操作している時にタイマーが動くとウザイ。
・再起動をするとタイマーが止まる

変更後:
・Firefoxの起動が早いのでURLの読み込みでエラーが起らない
・確認のメッセージが表示されない
・TV録画時間帯を外して指定できる
・自分が使ってる時間帯を外して指定出来る
・再起動してもタイマーが止まらない

うむ、IPが変更したらすぐに更新!というスクリプトではないけど
長時間のアクセス不能は回避できるようにはなりました

お名前.comがMac用のクライアントソフトを用意してくれるのが一番良いのですけどね


posted by ヘイゴ at 12:00 | Comment(0) | TrackBack(0) | 日記