Example #1
0
function switch_off($i, &$in_states, &$in_programs, &$in_levels)
{
    $in_states = substr_replace($in_states, '00', $i * 2, 2);
    send_io_input_level_event_message($i, $in_states, $in_levels);
    send_io_input_program_event_message($i, $in_states, $in_programs);
    return 1;
}
Example #2
0
     //if($os!=$out_states) set_outputs($os); //set the hardware outputs
     for ($i = 0; $i < OUT_PINS; $i++) {
         if (substr($os, $i * 2, 2) != substr($out_states, $i * 2, 2)) {
             send_io_output_binary_event_message($i, $os);
             //light
             $outputs_changed = 1;
         }
     }
     for ($i = 0; $i < IN_PINS; $i++) {
         if (substr($is, $i * 2, 2) != substr($in_states, $i * 2, 2) or substr($il, $i * 2, 2) != substr($in_levels, $i * 2, 2)) {
             send_io_input_level_event_message($i, $is, $il);
             //switch state and level
             $inputs_changed = 1;
         }
         if (substr($ip, $i * 2, 2) != substr($in_programs, $i * 2, 2)) {
             send_io_input_program_event_message($i, $is, $ip);
             //switch program
             $inputs_changed = 1;
         }
     }
 }
 //update internal state variables after any changes
 if ($outputs_changed) {
     $out_states = $os;
 }
 if ($inputs_changed) {
     $in_states = $is;
     $in_programs = $ip;
     $in_levels = $il;
 }
 //if any internal state changed, either by hardware input or via shm then save state file