*/
);
-// 以下、USE_KUROBON以外の定数は設定不要になりました
+
+// BSチューナーとして黒Friioを用いているのなら下のfalseをtrueに変えてください。
+
+define( "USE_KUROBON", false );
+
+
+
+//////////////////////////////////////////////////////////////////////////////
+// 以降の変数・定数はほとんどの場合、変更する必要はありません
+
define( "INSTALL_PATH", dirname(__FILE__) ); // インストールパス
-define( "USE_KUROBON", false ); // BSチューナーとしてFriio BS/CSを使うならtrue
// 以降は必要に応じて変更する
define( "COMPLETE_CMD", INSTALL_PATH . "/recomplete.php" ); // 録画終了コマンド
define( "GEN_THUMBNAIL", INSTALL_PATH . "/gen-thumbnail.sh" ); // サムネール生成スクリプト
+// BS/CSでEPGを取得するチャンネル
+// 通常は変える必要はありません
+// BSでepgdumpが頻繁に落ちる場合は、受信状態のいいチャンネルに変えることで
+// 改善するかもしれません
+
+define( "BS_EPG_CHANNEL", "211" ); // BS
+define( "CS1_EPG_CHANNEL", "CS8" ); // CS1
+define( "CS2_EPG_CHANNEL", "CS24" ); // CS2
+
// 地上デジタルチャンネルテーブルsettings/gr_channel.phpが存在するならそれを
// 優先する
"autorec_mode integer not null default '0',". // 自動録画のモード02/23/2010追加
"weekofday enum ('0','1','2','3','4','5','6','7' ) default '7'" // 曜日、同追加
);
-?>
\ No newline at end of file
+?>
include_once( INSTALL_PATH . '/Keyword.class.php' );
include_once( INSTALL_PATH . '/Settings.class.php' );
+ // 後方互換性
+ if( ! defined( "BS_EPG_CHANNEL" ) ) define( "BS_EPG_CHANNEL", "211" );
+ if( ! defined( "CS1_EPG_CHANNEL" ) ) define( "CS1_EPG_CHANNEL", "CS8" );
+ if( ! defined( "CS2_EPG_CHANNEL" ) ) define( "CS2_EPG_CHANNEL", "CS24" );
+
+
+ function check_file( $file ) {
+ // ファイルがないなら無問題
+ if( ! file_exists( $file ) ) return true;
+
+ // 1時間以上前のファイルなら削除してやり直す
+ if( (time() - filemtime( $file )) > 3600 ) {
+ @unlink( $file );
+ return true;
+ }
+
+ return false;
+ }
+
$settings = Settings::factory();
-
+
+ $temp_xml_bs = $settings->temp_xml."_bs";
+ $temp_xml_cs1 = $settings->temp_xml."_cs1";
+ $temp_xml_cs2 = $settings->temp_xml."_cs2";
+ $temp_xml_gr = $settings->temp_xml."_gr";
+
if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data );
// BSを処理する
if( $settings->bs_tuners != 0 ) {
// 録画重複チェック
$num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" );
- if( ($num == 0) && !file_exists($settings->temp_xml."_bs") ) {
- $cmdline = "CHANNEL=211 DURATION=180 TYPE=BS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
+ if( ($num == 0) && check_file($temp_xml_bs) ) {
+ $cmdline = "CHANNEL=".BS_EPG_CHANNEL." DURATION=180 TYPE=BS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
exec( $cmdline );
- $cmdline = $settings->epgdump." /BS ".$settings->temp_data." ".$settings->temp_xml."_bs";
+ $cmdline = $settings->epgdump." /BS ".$settings->temp_data." ".$temp_xml_bs;
exec( $cmdline );
- $cmdline = INSTALL_PATH."/storeProgram.php BS ".$settings->temp_xml."_bs";
+ $cmdline = INSTALL_PATH."/storeProgram.php BS ".$temp_xml_bs;
exec( $cmdline );
if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data );
}
// CS
if ($settings->cs_rec_flg != 0) {
$num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" );
- if( ($num == 0) && !file_exists($settings->temp_xml."_cs01") ) {
- $cmdline = "CHANNEL=CS8 DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
+ if( ($num == 0) && check_file($temp_xml_cs1) ) {
+ $cmdline = "CHANNEL=".CS1_EPG_CHANNEL." DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
exec( $cmdline );
- $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$settings->temp_xml."_cs01";
+ $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$temp_xml_cs1;
exec( $cmdline );
- $cmdline = INSTALL_PATH."/storeProgram.php CS ".$settings->temp_xml."_cs01";
+ $cmdline = INSTALL_PATH."/storeProgram.php CS ".$temp_xml_cs1;
exec( $cmdline );
if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data );
}
$num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" );
- if( ($num == 0) && !file_exists($settings->temp_xml."_cs02") ) {
- $cmdline = "CHANNEL=CS24 DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
+ if( ($num == 0) && check_file($temp_xml_cs2) ) {
+ $cmdline = "CHANNEL=".CS2_EPG_CHANNEL." DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
exec( $cmdline );
- $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$settings->temp_xml."_cs02";
+ $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$temp_xml_cs2;
exec( $cmdline );
- $cmdline = INSTALL_PATH."/storeProgram.php CS ".$settings->temp_xml."_cs02";
+ $cmdline = INSTALL_PATH."/storeProgram.php CS ".$temp_xml_cs2;
exec( $cmdline );
if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data );
}
foreach( $GR_CHANNEL_MAP as $key=>$value ){
// 録画重複チェック
$num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND type = 'GR' AND endtime > now() AND starttime < addtime( now(), '00:01:10')" );
- if( ($num == 0) && !file_exists($settings->temp_xml."_".$value."") ) {
+ if( ($num == 0) && check_file($temp_xml_gr.$value."") ) {
$cmdline = "CHANNEL=".$value." DURATION=60 TYPE=GR TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1";
exec( $cmdline );
- $cmdline = $settings->epgdump." ".$key." ".$settings->temp_data." ".$settings->temp_xml."_".$value."";
+ $cmdline = $settings->epgdump." ".$key." ".$settings->temp_data." ".$temp_xml_gr.$value."";
exec( $cmdline );
- $cmdline = INSTALL_PATH."/storeProgram.php GR ".$settings->temp_xml."_".$value."";
+ $cmdline = INSTALL_PATH."/storeProgram.php GR ".$temp_xml_gr.$value."";
exec( $cmdline );
if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data );
}