録画に失敗した予約を消す

HS-DHGL

ハック de 録!! は、時々予約録画に失敗する。
予約録画に失敗すると、その番組は 「録画失敗」というステータスのまま予約リストに残ってしまう。

これまでは手操作で 「録画失敗」というステータスの番組を消していたのだが、 お休み中は不在にすることもでもあり、 これを機会に自動で消すようにスクリプトを書くことにした。

スクリプト

DbAcRap GetMergeListBottom で予約リストを取り出し、
「予約失敗」となっている番組を DbAcRap DelKey\{$DEVICE\}\{$KEY\} で消す。
sil:/usr/local/sbin# cat CheckList.sh
#!/bin/sh

TMPFILE=/tmp/CheckList.$$

/usr/local/PCast/DbAcRap GetMergeListBottom > $TMPFILE

sed -n -e 's/^.*Index=\([0-9]*\) Status=\([0-9]*\)$/\1 \2/p' $TMPFILE |
while read Index Status
do
        # echo $Index $Status
        case $Status in
        0)      # 待機中
                #echo '待機中'
                ;;
        1)      # 予約録画中
                #echo '予約録画中'
                ;;
        2)      # 録画停止中
                #echo '録画停止中'
                ;;
        3)      # 録画失敗
                echo '録画失敗'
                # [DATA]Index=0010 TittleName=【★】桑原征平のおもしろ京都検定
                sed -n -e 's/^.*Index='$Index' TittleName=\(.*\)$/\1/p' $TMPFILE
                # [DATA]Index=0010 DeviceId=0
                DEVICE=`sed -n -e 's/^.*Index='$Index' DeviceId=\(.*\)$/\1/p' $TMPFILE`
                # [DATA]Index=0010 DataKey=1210423200
                KEY=`sed -n -e 's/^.*Index='$Index' DataKey=\(.*\)$/\1/p' $TMPFILE`

                echo /usr/local/PCast/DbAcRap DelKey\{$DEVICE\}\{$KEY\}
                /usr/local/PCast/DbAcRap DelKey\{$DEVICE\}\{$KEY\}
                ;;
        *)
                #echo '不明'
                ;;
        esac
done
rm $TMPFILE
sil:/usr/local/sbin#

確認

『地球に暮らす子どもたち[再]イタリア』が録画失敗になっている状態で スクリプトを実行。
sil:/usr/local/sbin# sh CheckList.sh
録画失敗
地球に暮らす子どもたち[再]イタリア
/usr/local/PCast/DbAcRap DelKey{2}{1210423200}
sil:/usr/local/sbin# 
『地球に暮らす子どもたち[再]イタリア』が 予約一覧に出てこないことを確認。

cron への登録

sil:/usr/local/sbin# crontab -e
	:
	:
	:
sil:/usr/local/sbin# crontab -l
	:
	:
3,33 * * * * nice /bin/sh /usr/local/sbin/CheckList.sh
	:
	:
sil:/usr/local/sbin#
これで、自動的に消してくれるはず。

しかし、、、

しかし、これは「臭い物に蓋」的解決。
録画に失敗しないようにするのが、根本的解決方法。
しかし、クローズドソースの Buffalo 製 Link de 録!! を 利用している限りは、この品質で我慢することしかできなさそう(藁)。

悪あがきとして、
・毎朝 4:30 ~ 4:45 の間、オーディオタイマを使って キャプチャボックスの電源を落としてリセット
・毎朝 4:46 に cron で HS-DHGL をリブート
と毎朝リフレッシュしているが、、、
それでも録画失敗は発生する。

録画失敗が発生したらリブートするよう 上記スクリプトを修正した方が良いかも知れない。




HS-DH320GL
楽天市場
Yahoo!ショッピング
somap.com
TSUKUMO ネットショップ
ValuMore!
ムラウチドットコム
アット・ニフティストア icon
Joshin web icon


ファームウェア 1.13 のスリープ機能(2)
ハックの記録
LinkStation/玄箱 をハックしよう

業務連絡:お休みをいただきます

Copyright (C) 2003-2008 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp 山下康成@京都府向日市