東京電力の電力状況をscreen のステータスに表示

IMGP0370.JPG
最近の作業中は大抵裏でTurntable のAnimeOnlyCoding Soundtrack 辺りを流しながらTerminal で作業しています.そこではByobu 経由でscreen が起動しています.
ということで,何時も作業しているここに東京電力の電力状況を表示できると便利かもしれないと思って表示してみました.

@ssciさんが東京電力電力供給状況API を提供してくれているので,これを利用させてもらいます.
おかげでscript は数行でかけました.

#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple;
use JSON qw/encode_json decode_json/;

my $data = decode_json(get('http://tepco-usage-api.appspot.com/latest.json'));

printf "%02dH %.1f", $data->{hour}, ( $data->{usage} / $data->{capacity} * 100 + 0.05 );
print '%';

これを,screen から呼び出します.
以下,~/.screenrc に追記した部分です.

backtick 0 900 1 /home/mk/.byobu/bin/denryoku.pl
caption always "%12`%?%-Lw%50L>%?%{=r}%n*%f %t%?(%u)%?%{-}%12`%?%+Lw%?%11` %=%12`%0` %110`%109`%122`%111`%10`%<"

#backtick のscript のpath に~/ を使ったら見てくれなくて少し嵌った.
backtick でID=0 で15分おきにscript を呼び出して,caption always で表示しています.caption always はbyobu のものをコピーして表示したい部分に %0` を書いています.0 部分はbacktick で指定したID です.

これで以下の様に表示されます.


分かりづらいですが,上の行のmk@x201s の左の22H 77.5% というのがそれです.
22H取得のデータで使用率77.5%のつもりですが一寸分かりづらいですね.良い表示方法はないかな….

- 東京電力電力供給状況API
http://tepco-usage-api.appspot.com/