diff -r a21865cb1ef4 -r 173b4480c4a0 www-thermferm/index.php --- a/www-thermferm/index.php Mon Aug 18 20:00:30 2014 +0200 +++ b/www-thermferm/index.php Wed Aug 20 12:02:49 2014 +0200 @@ -35,108 +35,38 @@ * Handle the post events */ if (isset($_POST['mode']) && isset($_POST['UUID'])) { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'MODE,'.$_POST['mode'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'MODE,'.$_POST['mode'], '.')); unset($_POST['UUID']); unset($_POST['mode']); } if (isset($_POST['HeaterState']) && isset($_POST['UUID'])) { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'HEATER_STATE,'.$_POST['HeaterState'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'HEATER_STATE,'.$_POST['HeaterState'], '.')); unset($_POST['UUID']); unset($_POST['HeaterState']); } if (isset($_POST['CoolerState']) && isset($_POST['UUID'])) { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'COOLER_STATE,'.$_POST['CoolerState'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'COOLER_STATE,'.$_POST['CoolerState'], '.')); unset($_POST['UUID']); unset($_POST['CoolerState']); } if (isset($_POST['FanState']) && isset($_POST['UUID'])) { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'FAN_STATE,'.$_POST['FanState'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'FAN_STATE,'.$_POST['FanState'], '.')); unset($_POST['UUID']); unset($_POST['FanState']); } + if (isset($_POST['Fridge']) && isset($_POST['key']) && isset($_POST['UUID'])) { if ($_POST['key'] == "Set") { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'FRIDGE_SET,'.$_POST['Fridge'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'FRIDGE_SET,'.$_POST['Fridge'], '.')); } - unset($_POST['Fridge']); unset($_POST['key']); unset($_POST['UUID']); @@ -146,21 +76,7 @@ if (isset($_POST['Beer']) && isset($_POST['key']) && isset($_POST['UUID'])) { if ($_POST['key'] == "Set") { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - socket_write($sock, 'BEER_SET,'.$_POST['Beer'], 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } + send_array(array('UNIT PUT '.$_POST['UUID'], 'BEER_SET,'.$_POST['Beer'], '.')); } unset($_POST['Beer']); unset($_POST['key']); @@ -170,39 +86,54 @@ if (isset($_POST['SetProfile']) && isset($_POST['key']) && isset($_POST['UUID'])) { - $sock = open_socket(); - if ($sock != false) { - socket_write($sock, 'UNIT PUT '.$_POST['UUID'], 4096); - usleep(20000); - if ($_POST['key'] == "Set") - socket_write($sock, 'PROFILE,'.$_POST['SetProfile'], 4096); - else if ($_POST['key'] == "Start") - socket_write($sock, 'PROF_STATE,RUN', 4096); - else if (($_POST['key'] == "Pause") || ($_POST['key'] == "Resume")) - socket_write($sock, 'PROF_STATE,PAUSE', 4096); - else if ($_POST['key'] == "Abort") - socket_write($sock, 'PROF_STATE,ABORT', 4096); - else if ($_POST['key'] == "Off") - socket_write($sock, 'PROF_STATE,OFF', 4096); - usleep(20000); - socket_write($sock, '.', 4096); - /* Absorb response */ - while (1) { - $line = socket_read($sock, 4096); - if ($line === '') - break; - } - socket_close($sock); - } - + $cmd = array('UNIT PUT '.$_POST['UUID']); + if ($_POST['key'] == "Set") + $cmd[] = 'PROFILE,'.$_POST['SetProfile']; + else if ($_POST['key'] == "Start") + $cmd[] = 'PROF_STATE,RUN'; + else if (($_POST['key'] == "Pause") || ($_POST['key'] == "Resume")) + $cmd[] = 'PROF_STATE,PAUSE'; + else if ($_POST['key'] == "Abort") + $cmd[] = 'PROF_STATE,ABORT'; + else if ($_POST['key'] == "Off") + $cmd[] = 'PROF_STATE,OFF'; + $cmd[] = '.'; + send_array($cmd); unset($_POST['SetProfile']); unset($_POST['key']); unset($_POST['UUID']); } +/* + * Get initial room temperature and humidity + */ +$answer = send_cmd('GLOBAL GET'); +$arr = explode("\r\n", $answer); + $temp_value = "NA"; +$temp_state = "NA"; $hum_value = "NA"; +$hum_state = "NA"; + +if (startsWith($arr[0], "213")) { + $j = 1; + while (1) { + if (strcmp($arr[$j], ".") == 0) + break; + $f = explode(",", $arr[$j]); + + if ($f[0] == "TEMP_STATE") + $temp_state = $f[1]; + if (($f[0] == "TEMP_VALUE") && ($temp_state == "OK")) + $temp_value = $f[1].' °C'; + if ($f[0] == "HUM_STATE") + $hum_state = $f[1]; + if (($f[0] == "HUM_VALUE") && ($hum_state == "OK")) + $hum_value = $f[1].' %'; + $j++; + } +} $outstr = ''.PHP_EOL; $outstr .= ''.PHP_EOL;