計画停電の最新情報をチェックする

計画停電が始まって以来、既に5日、停電を経験した。つまり、すべての計画停電の実施に引っかかっているのだ。計画停電中は、鉄道を除いて、自分の周りのすべての送電が停止される。

  • ADSL光回線ルーターが稼働しないのでオフライン。
  • iPhoneの3G回線は使えるので、それがWebに接続する唯一の方法になる。
  • 信号機も消灯した。(にもかかわらず、事故もなく、紳士的に流れている道路を見て、日本人て素晴らしいと思った)
  • 夜の停電では、街灯やネオン等すべての光が消えて、暗闇の世界になる。
  • 明かりは、時折通過する車のヘッドライトとテールランプのみ。

そんなことが許されるのか、という思いだ。しかし、電力供給が需要を下回っているのだから仕方ない。大規模停電になってしまったら、さらに生活しにくくなるだろう。(但し、計画停電がベストな対策かどうかは疑問)

ところで、計画停電と言いながら、その予定は直前まで実施されるかどうかは未知である。電力需要はリアルタイムに変化しており、その瞬間までどれくらいの需要になるか予測するのが難しいのは理解できる。しかし、実施かどうかを告知する手段が、どれも今イチ。

  • 新聞ではリアルタイム性がないのでNG。
  • TV・ラジオでは、常に視聴している必要があり、聞き耳を立てなくてはならないのでNG。
  • 東京電力のTwitterでは、計画停電の実施についてもツイートされる。しかし、自分で頃合いを見てチェックする必要があり、最新のタイミングでは確認できない。(ツイートされた瞬間を知る方法ってあるのかな?)

日常は、仕事も生活もかなり電気に依存していて、計画停電が実施されるかどうかで、当日の予定や事前準備で行動が大きく変化する。なるべく早いタイミングで計画停電の最新情報が欲しいのだ!
理想は、iPhoneにメールで着信してくれると嬉しい。しかし、そんなこと今の東京電力がやってくれそうもない。ならば、いつものAppleScriptで、自分のMacBookをサーバーにして、やってみる。

仕組み

  • 東京電力のトップページを定期的にダウンロードして、前回と差異があったら、内容をメールで送信するようにしてみた。
  • 勘違いの誤認逮捕は嫌なので、30分に一回だけチェックするようにした。
  • OSXUNIX)には便利なコマンドが充実していて、AppleScriptと組み合わせると、かなりシンプルに実現できそう。

AppleScript


property index_html : ""
property target_url : "http://www.tepco.co.jp/index-j.html"

on run
set index_html to my get_page(target_url) my message("計画停電", "監視します。") end run

on idle
my page_check(target_url) return 1800
end idle

on reopen
my page_check(target_url) end reopen

on page_check(an_url) set current_html to my get_page(an_url) if current_htmlindex_html then
send_mail("計画停電", ¬ "差出人@mail.com", ¬ "宛先@mail.com", ¬ target_url & return & current_html) set index_html to current_html
end if
my message("計画停電", "チェックしました。") end page_check

on get_page(an_url) "curl " & an_url & "|textutil -convert txt -stdin -inputencoding Shift_JIS -stdout"
do shell script result
end get_page

--send_mail(件名, 差出人アドレス, 宛先アドレス, 本文)
on send_mail(a_subject, a_sender, a_recipient, a_body) tell application "Mail"
set new_msg to make new outgoing message ¬ with properties {subject:a_subject, sender:a_sender, content:a_body} tell new_msg
make new to recipient at end of to recipients ¬ with properties {address:a_recipient} send
end tell
end tell
end send_mail

on message(title, msg) try
do shell script "/usr/local/bin/growlnotify " & title & " -m " & quoted form of msg & " 2>&1"
if result is not "" then error -128
on error
activate
display alert title message msg giving up after 4
end try
end message

使い方

  • Mail.app(OSX付属のメーラー)でメールを送信できる設定になっている必要がある。
  • on page_check(an_url)ハンドラ内の"差出人@mail.com"、"宛先@mail.com"を自分のMail.appの設定に合わせて修正する。
  • 上記AppleScriptは、ファイルフォーマット:アプリケーション、オプション:「実行後、自動的に終了しない」チェックあり、で保存する。

  • 計画停電チェック.appを起動すると監視が始まる。
    • 30分おきにチェックする。
    • Dockのアイコンをクリックすると、その都度チェックする。
  • http://www.tepco.co.jp/index-j.html が更新されると、以下のようなメールが届く。
http://www.tepco.co.jp/index-j.html

	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
	•	
東京電力からのお願い
地震情報
                                        
3月19日午後6時56分頃、茨城県北部を震源地とする地震が発生いたしましたが、現在のところ、この地震による当社の原子力発電所を含む主な電力設備への影響は確認されておらず、当社サービスエリア内での停電も確認されておりません。

需給逼迫による計画停電の実施と一層の節電のお願いについて

■プレス発表:3月20日(日)計画停電は実施いたしません。

■3/19(土)〜3/26(土)の計画停電(実施)予定

■地域別の詳細な資料は、お住まいのエリアにてご覧ください。(3月19日19時更新)
 【 PDF 】
      栃木/茨城/群馬/千葉/神奈川/東京/埼玉/山梨/静岡 (PDF )
 【 Excel 】
      栃木/茨城/群馬/千葉/神奈川/東京/埼玉/山梨/静岡 (Excel )
※PDFファイルをご覧いただくには、Adobe Reader(無料)が必要です。
お持ちでない方はAdobeのサイト(外部リンク)からダウンロードしてください。
...(中略)...


今のところ、ちゃんと機能している。いい感じ。

開発環境