Forráskód Böngészése

erste config-seite am Webinterface (noch ohne Funktion)

FloKra 6 éve
szülő
commit
de838afbb7

+ 4 - 0
src/WiFiThermostat/WiFiThermostat.ino

@@ -387,6 +387,10 @@ void setup() {
     httpServerHandleRoot();
   });
 
+  httpServer.on("/config", []() {
+    httpServerHandleConfPage();
+  });
+
   httpServer.onNotFound([]() {
     httpServerHandleNotFound();
   }); //httpServer.onNotFound

+ 62 - 0
src/WiFiThermostat/data/conf - Copy.htm

@@ -0,0 +1,62 @@
+<h3>Configuration</h3>
+MQTT Server:
+<span id="mqtthost"></span>
+<br/> MQTT Port:
+<span id="mqttport"></span>
+<br/> MQTT User:
+<span id="mqttuser"></span>
+<br/> MQTT Password:
+<span id="mqttpass"></span>
+
+<h6>Last updated
+	<span id="ut"></span> seconds ago.
+	<span id="status"></span>
+</h6>
+
+<h3>Update Data</h3>
+<form id="xform" onsubmit="return transmit(this)">
+	x:
+	<input type="number" name="x" />
+	<input type="submit" />
+</form>
+<form id="yform" onsubmit="return transmit(this)">
+	y:
+	<input type="text" name="y" />
+	<input type="submit" />
+</form>
+<form id="zform" onsubmit="return transmit(this)">
+	z:
+	<input type="text" name="z" />
+	<input type="submit" />
+</form>
+
+<a href="wifi.htm">WiFi settings</a>
+
+<script>
+	function g(i) { return document.getElementById(i) };
+	var xhttp, updateTime;
+
+	function transmit(f) {
+		if (!xhttp) { //prevent simultaneous requests
+			g("status").innerHTML = "updating...";
+			xhttp = new XMLHttpRequest();
+			xhttp.open("POST", "/api");
+			xhttp.send(f ? (new FormData(f)) : "");
+			xhttp.onreadystatechange = function () {
+				if (xhttp.readyState === XMLHttpRequest.DONE && xhttp.status === 200) {
+					var data = JSON.parse(xhttp.responseText);
+					g("x").innerHTML = data.x;
+					g("y").innerHTML = data.y;
+					g("z").innerHTML = data.z;
+					xhttp = null;
+					g("status").innerHTML = "";
+					updateTime = 0;
+				}
+			}
+		}
+		return false; //prevent form redirect
+	}
+	transmit();
+	setInterval(function () { g("ut").innerHTML = ++updateTime; }, 1000);
+	setInterval(transmit, 5000); //autoupdate display every 5s
+</script>

+ 15 - 1
src/WiFiThermostat/httpServer.ino

@@ -36,7 +36,9 @@ static const char httpRoot[] PROGMEM =
   <span id='ut'></span> Sekunden.
   <span id='status'></span>
   </h6>
-  <br><a href='/wifi.htm'>WiFi-Einstellungen</a><br>
+  <br>
+  <a href='/wifi.htm'>WiFi-Einstellungen</a><br>
+  <a href='/config'>Einstellungen</a><br>
   <a href='/update'>Firmware Update</a>
   <script>
   function g(i) { return document.getElementById(i) };
@@ -104,10 +106,22 @@ static const char httpRoot[] PROGMEM =
 </script>
   </body></html>)";
 
+
+static const char httpConfPage[] PROGMEM = 
+R"(<html><body>
+  <h1>WiFi Thermostat</h1>
+  <h2>Configuration</h2>
+  <a href='/'>Home</a>
+  </body></html>)";
+
 void httpServerHandleRoot() {
   httpServer.send_P(200, "text/html", httpRoot);
 }
 
+void httpServerHandleConfPage() {
+  httpServer.send_P(200, "text/html", httpConfPage);
+}
+
 void httpServerHandleNotFound() {
   String message = "File Not Found\n\n";
   message += "URI: ";

+ 0 - 13
src/WiFiThermostat/lib/AS_BH1750/.gitignore

@@ -1,13 +0,0 @@
-# Compiled Object files
-*.slo
-*.lo
-*.o
-
-# Compiled Dynamic libraries
-*.so
-*.dylib
-
-# Compiled Static libraries
-*.lai
-*.la
-*.a

+ 0 - 46
src/WiFiThermostat/lib/DHT/.github/ISSUE_TEMPLATE.md

@@ -1,46 +0,0 @@
-Thank you for opening an issue on an Adafruit Arduino library repository.  To
-improve the speed of resolution please review the following guidelines and
-common troubleshooting steps below before creating the issue:
-
-- **Do not use GitHub issues for troubleshooting projects and issues.**  Instead use
-  the forums at http://forums.adafruit.com to ask questions and troubleshoot why
-  something isn't working as expected.  In many cases the problem is a common issue
-  that you will more quickly receive help from the forum community.  GitHub issues
-  are meant for known defects in the code.  If you don't know if there is a defect
-  in the code then start with troubleshooting on the forum first.
-
-- **If following a tutorial or guide be sure you didn't miss a step.** Carefully
-  check all of the steps and commands to run have been followed.  Consult the
-  forum if you're unsure or have questions about steps in a guide/tutorial.
-
-- **For Arduino projects check these very common issues to ensure they don't apply**:
-
-  - For uploading sketches or communicating with the board make sure you're using
-    a **USB data cable** and **not** a **USB charge-only cable**.  It is sometimes
-    very hard to tell the difference between a data and charge cable!  Try using the
-    cable with other devices or swapping to another cable to confirm it is not
-    the problem.
-
-  - **Be sure you are supplying adequate power to the board.**  Check the specs of
-    your board and plug in an external power supply.  In many cases just
-    plugging a board into your computer is not enough to power it and other
-    peripherals.
-
-  - **Double check all soldering joints and connections.**  Flakey connections
-    cause many mysterious problems.  See the [guide to excellent soldering](https://learn.adafruit.com/adafruit-guide-excellent-soldering/tools) for examples of good solder joints.
-
-  - **Ensure you are using an official Arduino or Adafruit board.** We can't
-    guarantee a clone board will have the same functionality and work as expected
-    with this code and don't support them.
-
-If you're sure this issue is a defect in the code and checked the steps above
-please fill in the following fields to provide enough troubleshooting information.
-You may delete the guideline and text above to just leave the following details:
-
-- Arduino board:  **INSERT ARDUINO BOARD NAME/TYPE HERE**
-
-- Arduino IDE version (found in Arduino -> About Arduino menu):  **INSERT ARDUINO
-  VERSION HERE**
-
-- List the steps to reproduce the problem below (if possible attach a sketch or
-  copy the sketch code in too): **LIST REPRO STEPS BELOW**

+ 0 - 26
src/WiFiThermostat/lib/DHT/.github/PULL_REQUEST_TEMPLATE.md

@@ -1,26 +0,0 @@
-Thank you for creating a pull request to contribute to Adafruit's GitHub code!
-Before you open the request please review the following guidelines and tips to
-help it be more easily integrated:
-
-- **Describe the scope of your change--i.e. what the change does and what parts
-  of the code were modified.**  This will help us understand any risks of integrating
-  the code.
-
-- **Describe any known limitations with your change.**  For example if the change
-  doesn't apply to a supported platform of the library please mention it.
-
-- **Please run any tests or examples that can exercise your modified code.**  We
-  strive to not break users of the code and running tests/examples helps with this
-  process.
-
-Thank you again for contributing!  We will try to test and integrate the change
-as soon as we can, but be aware we have many GitHub repositories to manage and
-can't immediately respond to every request.  There is no need to bump or check in
-on a pull request (it will clutter the discussion of the request).
-
-Also don't be worried if the request is closed or not integrated--sometimes the
-priorities of Adafruit's GitHub code (education, ease of use) might not match the
-priorities of the pull request.  Don't fret, the open source community thrives on
-forks and GitHub makes it easy to keep your changes in a forked repo.
-
-After reviewing the guidelines above you can delete this text from the pull request.

+ 0 - 1
src/WiFiThermostat/lib/pubsubclient/.gitignore

@@ -1 +0,0 @@
-tests/bin

+ 0 - 7
src/WiFiThermostat/lib/pubsubclient/.travis.yml

@@ -1,7 +0,0 @@
-sudo: false
-language: cpp
-compiler:
-  - g++
-script: cd tests && make && make test
-os:
-  - linux

+ 0 - 4
src/WiFiThermostat/lib/pubsubclient/tests/.gitignore

@@ -1,4 +0,0 @@
-.build
-tmpbin
-logs
-*.pyc