Mercurial > epgrec.yaz
annotate getepg.php @ 149:5b192e94f49d
fix: 予約済み定数を使ってしまったミスを修正。エラーレベルに警告を追加
author | epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp> |
---|---|
date | Sat, 27 Mar 2010 16:04:54 +0900 |
parents | 481e789605e3 |
children | 4afd353b4507 784e3c82926e |
rev | line source |
---|---|
1 | 1 #!/usr/bin/php |
2 <?php | |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
3 $script_path = dirname( __FILE__ ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
4 chdir( $script_path ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
5 include_once( $script_path . '/config.php'); |
1 | 6 include_once( INSTALL_PATH . '/DBRecord.class.php' ); |
7 include_once( INSTALL_PATH . '/Reservation.class.php' ); | |
8 include_once( INSTALL_PATH . '/Keyword.class.php' ); | |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
9 include_once( INSTALL_PATH . '/Settings.class.php' ); |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
10 include_once( INSTALL_PATH . '/storeProgram.inc.php' ); |
142
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
11 include_once( INSTALL_PATH . '/recLog.inc.php' ); |
1 | 12 |
85 | 13 // 緇剛 |
14 if( ! defined( "BS_EPG_CHANNEL" ) ) define( "BS_EPG_CHANNEL", "211" ); | |
15 if( ! defined( "CS1_EPG_CHANNEL" ) ) define( "CS1_EPG_CHANNEL", "CS8" ); | |
16 if( ! defined( "CS2_EPG_CHANNEL" ) ) define( "CS2_EPG_CHANNEL", "CS24" ); | |
17 | |
18 function check_file( $file ) { | |
19 // <ゃ≦馹 | |
20 if( ! file_exists( $file ) ) return true; | |
21 | |
22 // 1篁ヤ<ゃゃ眼 | |
23 if( (time() - filemtime( $file )) > 3600 ) { | |
24 @unlink( $file ); | |
25 return true; | |
26 } | |
27 | |
28 return false; | |
29 } | |
30 | |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
31 // 筝純桁慎羞宴顄帥鴻 |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
32 $use_para = false; |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
33 $use_para = (function_exists( "pcntl_fork" ) && function_exists( "posix_setsid" ) && function_exists( "pcntl_signal" ) && function_exists("pcntl_setpriority")); |
142
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
34 if( ! $use_para ) { |
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
35 reclog("getepg:: 筝絎茵茵PHP医с" ); |
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
36 } |
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
37 else { |
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
38 reclog("getepg:: 筝絎茵篏睡障" ); |
481e789605e3
mod: EPGの更新と同時に予約情報を更新するように変更、ログビューアの追加
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
111
diff
changeset
|
39 } |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
40 |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
41 $settings = Settings::factory(); |
85 | 42 |
43 $temp_xml_bs = $settings->temp_xml."_bs"; | |
44 $temp_xml_cs1 = $settings->temp_xml."_cs1"; | |
45 $temp_xml_cs2 = $settings->temp_xml."_cs2"; | |
46 $temp_xml_gr = $settings->temp_xml."_gr"; | |
47 | |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
48 if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data ); |
84
3ec5ca5e56ca
add: EPG取得並列化版を暫定的に標準に
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
82
diff
changeset
|
49 |
1 | 50 // BS |
57 | 51 if( $settings->bs_tuners != 0 ) { |
1 | 52 // 牙脂茲с |
70
1363ac056197
fix: getepg get program information duaring CS/BS recording.
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
67
diff
changeset
|
53 $num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" ); |
85 | 54 if( ($num == 0) && check_file($temp_xml_bs) ) { |
55 $cmdline = "CHANNEL=".BS_EPG_CHANNEL." DURATION=180 TYPE=BS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1"; | |
1 | 56 exec( $cmdline ); |
85 | 57 $cmdline = $settings->epgdump." /BS ".$settings->temp_data." ".$temp_xml_bs; |
1 | 58 exec( $cmdline ); |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
59 if( $use_para ) { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
60 $cmdline = INSTALL_PATH."/storeProgram.php BS ".$temp_xml_bs." >/dev/null 2>&1 &"; |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
61 exec( $cmdline ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
62 } |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
63 else { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
64 storeProgram( "BS", $temp_xml_bs ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
65 if( file_exists( $temp_xml_bs ) ) @unlink( $temp_xml_bs ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
66 } |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
67 if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data ); |
82
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
68 } |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
69 |
82
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
70 // CS |
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
71 if ($settings->cs_rec_flg != 0) { |
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
72 $num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" ); |
85 | 73 if( ($num == 0) && check_file($temp_xml_cs1) ) { |
74 $cmdline = "CHANNEL=".CS1_EPG_CHANNEL." DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1"; | |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
75 exec( $cmdline ); |
85 | 76 $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$temp_xml_cs1; |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
77 exec( $cmdline ); |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
78 if( $use_para ) { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
79 $cmdline = INSTALL_PATH."/storeProgram.php CS ".$temp_xml_cs1." >/dev/null 2>&1 &"; |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
80 exec( $cmdline ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
81 } |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
82 else { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
83 storeProgram( "CS", $temp_xml_cs1 ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
84 if( file_exists( $temp_xml_cs1 ) ) @unlink( $temp_xml_cs1 ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
85 } |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
86 if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data ); |
82
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
87 } |
330c83ae8c95
fix: CSのEPG取得時に予約重複チェックを行っていなかったのを修正
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
70
diff
changeset
|
88 $num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND (type = 'BS' OR type = 'CS') AND endtime > now() AND starttime < addtime( now(), '00:03:05')" ); |
85 | 89 if( ($num == 0) && check_file($temp_xml_cs2) ) { |
90 $cmdline = "CHANNEL=".CS2_EPG_CHANNEL." DURATION=120 TYPE=CS TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1"; | |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
91 exec( $cmdline ); |
85 | 92 $cmdline = $settings->epgdump." /CS ".$settings->temp_data." ".$temp_xml_cs2; |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
93 exec( $cmdline ); |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
94 if( $use_para ) { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
95 $cmdline = INSTALL_PATH."/storeProgram.php CS ".$temp_xml_cs2." >/dev/null 2>&1 &"; |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
96 exec( $cmdline ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
97 } |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
98 else { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
99 storeProgram( "CS", $temp_xml_cs2 ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
100 if( file_exists( $temp_xml_cs2 ) ) @unlink( $temp_xml_cs2 ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
101 } |
67
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
102 if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data ); |
a2c4665b310c
add: CS support (thanks to dakku)
Sushi-k <epgrec@park.mda.or.jp>
parents:
64
diff
changeset
|
103 } |
1 | 104 } |
105 } | |
106 | |
107 // 遺羈≪ | |
57 | 108 if( $settings->gr_tuners != 0 ) { |
1 | 109 foreach( $GR_CHANNEL_MAP as $key=>$value ){ |
110 // 牙脂茲с | |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
111 $num = DBRecord::countRecords( RESERVE_TBL, "WHERE complete = '0' AND type = 'GR' AND endtime > now() AND starttime < addtime( now(), '00:01:10')" ); |
85 | 112 if( ($num == 0) && check_file($temp_xml_gr.$value."") ) { |
37
e5f9aa34d06f
change: modify all script for web base setting
yoneda <epgrec@park.mda.or.jp>
parents:
7
diff
changeset
|
113 $cmdline = "CHANNEL=".$value." DURATION=60 TYPE=GR TUNER=0 MODE=0 OUTPUT=".$settings->temp_data." ".DO_RECORD . " >/dev/null 2>&1"; |
1 | 114 exec( $cmdline ); |
85 | 115 $cmdline = $settings->epgdump." ".$key." ".$settings->temp_data." ".$temp_xml_gr.$value.""; |
1 | 116 exec( $cmdline ); |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
117 if( $use_para ) { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
118 $cmdline = INSTALL_PATH."/storeProgram.php GR ".$temp_xml_gr.$value." >/dev/null 2>&1 &"; |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
119 exec( $cmdline ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
120 } |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
121 else { |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
122 storeProgram( "GR", $temp_xml_gr.$value ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
123 if( file_exists( $temp_xml_gr.$value ) ) @unlink( $temp_xml_gr.$value ); |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
124 } |
84
3ec5ca5e56ca
add: EPG取得並列化版を暫定的に標準に
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
82
diff
changeset
|
125 if( file_exists( $settings->temp_data ) ) @unlink( $settings->temp_data ); |
1 | 126 } |
127 } | |
128 } | |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
129 // 筝х |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
130 if( $use_para ) exit(); |
1 | 131 |
111
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
132 garbageClean(); // 筝荀違 |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
133 doKeywordReservation(); // 若若篋膣 |
3bed74eca373
change: EPG取得並列化が可能かどうかを判定するように変更
epgrec@park.mda.or.jp <yoneda@recorder.localnet.mda.or.jp>
parents:
86
diff
changeset
|
134 exit(); |
84
3ec5ca5e56ca
add: EPG取得並列化版を暫定的に標準に
yoneda <yoneda@recorder.localnet.mda.or.jp>
parents:
82
diff
changeset
|
135 ?> |