$static_timer = int($settings{'ongtime'});
$timer = int($settings{'dynamicongtime'});
$last = int($settings{'last'});
-$frame = int($state {'last'})+1;
+$frame = int($state {'last'});
+
+if ($ongstate == STATE->{'ready'}) {
+ $frame += 1;
+ print 'next frame: '.$frame."\n";
+}
+else {
+ print 'not ready'."\n";
+}
if (($timer > 0) && ($frame < $last)) {
$timer = int($timer / ($last - $frame));
}
else {
- $timer=0;
+ $timer = 1;
}
-
if ($static_timer > $timer) {
$timer = $static_timer;
}
$next_ong = $ongtime + ($timer*3600);
+print 'next ongtime: '.$next_ong.' (+'.$timer.")\n";
if ($ongstate == STATE->{'ready'}) {
- print 'next frame: '.$frame."\n";
-
%default = read_default();
%frame_data = read_frame_data($frame);
# %goto_list = read_goto());
%new_state = %state;
- $new_state{'last'} = $frame;
- $new_state{'state'} = 1;
- $new_state{'ip1'} = '';
- $new_state{'ip2'} = '';
- $new_state{'ip3'} = '';
- $new_state{'ongtime'}= $timer;
+ $new_state{'last'} = $frame;
+ $new_state{'state'} = STATE->{'waiting'};
+ $new_state{'ip1'} = '';
+ $new_state{'ip2'} = '';
+ $new_state{'ip3'} = '';
+ $new_state{'ongtime'} = $timer;
+ $new_state{'nextong'} = $next_ong;
if ($frame >= 1) {
%frame_1_data = read_frame_data($frame-1);
$update_state = 1;
}
if ($update_state) {
- print 'not ready'."\n";
- print 'next ongtime: '.$next_ong.' (+'.$timer.")\n";
write_state($fh, \%state);
}
close ($fh);