« March 2008 | Main | May 2008 »

2008.04.18

[iPod touch]iPod touchのlaunchdでコマンド/スクリプトの定期実行

cronの単独パッケージを作ってCydia環境でもコマンド/スクリプトの定期実行ができるようになりましたが、元々あるlaunchdでの定期実行をやったことがなかったので、実験をしてみました。

元々ある「/System/Library/LaunchDaemons/com.apple.daily.plist」が1日1回実行されるプロパティリストなので、基本的にはこれを自分用にカスタマイズすればいいだけです。
実行間隔/定期実行を決める項目は「StartInterval」で、単位は秒ですね。

10分に1回「/var/root/bin/wifistatus」というコマンド/スクリプトを実行するという内容のplistは以下のようになります。(utf-8 / LF)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>Label</key>
	<string>com.hitoriblog.wifistatus</string>
	<key>Nice</key>
	<false/>
	<key>OnDemand</key>
	<string></string>
	<key>ProgramArguments</key>
	<array>
		<string>/var/root/bin/wifistatus</string>
	</array>
	<key>StartInterval</key>
	<integer>600</integer>
</dict>
</plist>

これを例えば、com.hitoriblog.wifistatus.plistとして保存し、scp等で「/System/Library/LaunchDaemons/」にコピー。
Installer.appからインストールできるErica女史のUlctlを起動、項目として現れる「com.hitoriblog.wifistatus」をタップ、「load -w」ボタンを押すと定期実行が始まります。

やめたければ、同様にして「unload -w」ボタンを押せばOK。
案外簡単にできました。

|

2008.04.07

[iPod touch]safaribm2stdoutとwgetでMobile Safariのブックマークを巡回してダウンロード

2008.04.10追記:元マカーさんがsafaribm2stdoutに関するエントリを上げてくださってます。「iPod touchでローカルWeb閲覧&巡回環境を構築してみる」、「iPod touchでローカルWeb閲覧&巡回環境を構築してみる(その2)

野良リポジトリにsafaribm2stdoutというコマンドラインアプリを登録しておきました。

「Network>safaribm2stdout (1.1.3)」です。

Mobile SafariのBookmarkの、「crawling」というFolderに登録されたBookmarkのURLを標準出力(stdout)に出力するものです。

そんなことができて何がうれしいのか?
DownloaderであるWgetと併用すると幸せになれます。

#!/bin/sh
cd /var/mobile/Media/Downloads
/var/root/bin/safaribm2stdout | wget -i - -N -k -r -l 1 -np

こんな感じのシェルスクリプトをShell Script ApplicationなどにしてHome Screen Iconとして登録しておきます。

巡回したいページをMobile Safariの「crawling」というBookmarkのFolderに登録します。
「crawling」なんてFolderは無い? 最初は「crawling」などというFolderは存在しませんので、自分で作ります。(最初はRで後がLです。スペルを間違えると動かないので注意)



作ったShell Script Applicationを起動すればダウンロードが完了します。

lighttpdやiSpit、ApacheなどのLocal Web Serverを起動しておき、/var/mobile/Media/DownloadsをMobile Safariで見にいけばOK!
ダウンロード先のFolderをBookmarkしておくと楽だと思います。

Wgetに付いているoptionは以下の意味となります。

-Nタイムスタンプを見てダウンロードをするかどうか判断
-kリンクを絶対リンクから相対リンクへ書き換え
-rリンク先を再帰的に取得
-l 1再帰的に取得するリンクのホップ数を1に設定
-np上の階層のファイルをダウンロードしない

ページからリンクされた画像なども一括ダウンロードされますので、オフラインでも画像まで見られるようになります。(そのはずですが、なんかダメですね)
Wgetにはたくさんのオプションがありますので、自分の使用形態に合わせて調整してみるといいかと思います。

海上さんのOS Xハッキングでタイムリーに「いま敢えて「Wget」をリスペクト」という記事が。Wgetの素晴らしさを知らない人は読んでみてください。

http://tech.bayashi.net/svr/doc/wget.html

http://members.at.infoseek.co.jp/futora/wget153/option.html

cronで定期巡回を組むPureなCydia環境ならこちらも)のも一興かと思います。

野良リポジトリには、safarihist2stdoutというコマンドラインアプリも登録してあります。
同様にして、

#!/bin/sh
cd /var/mobile/Media/Downloads
/var/root/bin/safarihist2stdout | head -1 | wget -i - -N -k -r -l 1 -np

といったような処理内容のシェルスクリプトアプリケーションを用意すれば、Mobile Safariで最後に訪れたページをリンクされた画像等ごとダウンロードできます。

Notes/注意事項

iPod touch/iPhone用にポートされたWgetには、名前解決できるものと、できないものがあります。
野良リポジトリにある「Wget (name resolvable)」とCydia PackagerからインストールできるWgetは名前解決できます。

Erica's Ported Utilitiesに収録されているWgetは名前解決できないと思います。

|

2008.04.03

[iPod touch]iPod touch用新型Dock Connector内蔵型マイク

今までのiPod touch用Dock Connector内蔵型マイクのDock Connectorは、市販のiPod touch用USBケーブルを都度破壊してDock Connectorを調達し、作っていたんですが、今回からパーツとして取り寄せたもので頒布用のマイクを作ってみました。

ワイヤリングペンが出てきたので、配線はUEWにしてみました。

Cydia PackagerからインストールできるErica女史の音声メモアプリ、Voice Notes 0.35b5(VNotes)を試していますが、このバージョンはiPod touchでもリセットがかからないようですね。
録音/終了ボタンを連打するなど乱暴に扱ってみましたが、大丈夫そうです。
これでグっとマイクの実用性が上がりました。

2008.04.04追記:やっぱりリセットかかりました><惜しいなぁ

Voice Notes(VNotes)で録音したファイルはamrで、Erica's Ported Utilitiesに収録されているffmpegでmp3にエンコードできます。

ffmpeg -i in.amr out.mp3

確かこれでいけるはず。

[iPod touch]Dock Connector一体型iPod touch用マイク頒布















|

« March 2008 | Main | May 2008 »