twで写真をつけてtweetするやつを、crontabで定期的に動かしているんだけど
家にいる時は動かしたくなかった。

しかし「家にいるかどうか」を判定するのはけっこう面倒くさくて、まあwifiのAPや位置情報で判定すればいいんだけど、
crontabやservice内で使いやすい、手動でやりやすいツールを作ることにした。


ここにある
https://github.com/shokai/now

git cloneしてパスの通っている場所に置く。


仕様

$HOME/.now を読み書きするだけ。

使い方

now コンテキスト名 で登録、 now ‘コンテキスト名?’ で判定できる。

コマンド自体のexit statusで判定できる。赤い行は直前のコマンドがexit(1)を返している。


crontabやpipeと組み合わせる


0 * * * * now 'home?' &&  say '家にいます'    > /dev/null 2>&1
0 * * * * now 'home?' || (say '家にいません') > /dev/null 2>&1

&& や || でnowのexit statusを判定すればいいですね。


利用例

家にいない時だけ、写真を撮影してtweetするのはこうやる。
now 'home?' || (say 撮影します && imagesnap -w 2.0 capture.jpg && tw 定点観測 --user=shokai --file=capture.jpg --yes && rm capture.jpg)


現在のなうをtweetするとか
tw "`now`なう"