index - Copy.htm 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <html><body>
  2. <h1>WiFi Thermostat</h1>
  3. <form id='minusBtn' onsubmit='return transmit(this)'>
  4. <input type='hidden' name='minusBtn' value='1'>
  5. <input type='submit' value='-'/>
  6. </form>
  7. <span id='setTemp'>22.5</span><br>
  8. <form id='plusBtn' onsubmit='return transmit(this)'>
  9. <input type='hidden' name='plusBtn' value='1'>
  10. <input type='submit' value='+'/>
  11. </form>
  12. Betriebsmodus: <span id='mode'></span><br>
  13. <br>
  14. Aktuell: <span id='temp'></span> °C&nbsp;&nbsp;&nbsp;<span id='hum'></span> %<br>
  15. <br>
  16. WiFi verbunden mit: <span id='ssid'></span><br>
  17. <h6>Letztes Update vor
  18. <span id='ut'></span> Sekunden.
  19. <span id='status'></span>
  20. </h6>
  21. <br><a href='/wifi.htm'>WiFi-Einstellungen</a><br>
  22. <a href='/update'>Firmware Update</a>
  23. <script>
  24. function g(i) { return document.getElementById(i) };
  25. var xhttp, updateTime;
  26. function transmit(f) {
  27. if (!xhttp) {
  28. g('status').innerHTML = 'lade...';
  29. xhttp = new XMLHttpRequest();
  30. xhttp.open('POST', '/api');
  31. xhttp.send(f ? (new FormData(f)) : '');
  32. xhttp.onreadystatechange = function () {
  33. if (xhttp.readyState === XMLHttpRequest.DONE && xhttp.status === 200) {
  34. var data = JSON.parse(xhttp.responseText);
  35. g('temp').innerHTML = data.temp;
  36. g('hum').innerHTML = data.hum;
  37. g('setTemp').innerHTML = data.setTemp;
  38. g('ssid').innerHTML = data.ssid;
  39. if(data.mode == '0') {
  40. g('mode').innerHTML = 'AUS';
  41. }
  42. else if(data.mode == '1') {
  43. g('mode').innerHTML = 'Normalbetrieb';
  44. }
  45. else if(data.mode == '2') {
  46. g('mode').innerHTML = 'Nachtabsenkung';
  47. }
  48. xhttp = null;
  49. g('status').innerHTML = '';
  50. updateTime = 0;
  51. }
  52. }
  53. }
  54. return false;
  55. }
  56. transmit();
  57. setInterval(function () { g('ut').innerHTML = ++updateTime; }, 1000);
  58. setInterval(transmit, 5000);
  59. </script>
  60. </body></html>