#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>
MDNSResponder mdns;
/* Set these to your desired credentials. */
const char *ssid = "ESPap";
const char *password = "thereisnospoon";
String webPage = "";
int led1 = D8;
int led2 = D7;
int led3 = D6;
int led4 = D5;
ESP8266WebServer server(80);
/* Just a little test message. Go to http://192.168.4.1 in a web browser
* connected to this access point to see it.
*/
void handleRoot() {
server.send(200, "text/html", "<h1>You are connected</h1>");
}
void setup() {
webPage += "<h1>ESP8266 Web Server</h1><p>Socket #1 <a href=\"socket1On\"><button>ON</button></a> <a href=\"socket1Off\"><button>OFF</button></a></p>";
webPage += "<p>Socket #2 <a href=\"socket2On\"><button>ON</button></a> <a href=\"socket2Off\"><button>OFF</button></a></p>";
webPage += "<p>Socket #3 <a href=\"socket3On\"><button>ON</button></a> <a href=\"socket3Off\"><button>OFF</button></a></p>";
webPage += "<p>Socket #4 <a href=\"socket4On\"><button>ON</button></a> <a href=\"socket4Off\"><button>OFF</button></a></p>";
pinMode(led1, OUTPUT); digitalWrite(led1, LOW);
pinMode(led2, OUTPUT); digitalWrite(led2, LOW);
pinMode(led3, OUTPUT); digitalWrite(led3, LOW);
pinMode(led4, OUTPUT); digitalWrite(led4, LOW);
delay(1000);
Serial.begin(115200);
Serial.println();
Serial.print("Configuring access point...");
/* You can remove the password parameter if you want the AP to be open. */
WiFi.softAP(ssid, password);
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
Serial.println("HTTP server started");
server.on("/", [](){
server.send(200, "text/html", webPage);
});
server.on("/socket1On", [](){
server.send(200, "text/html", webPage);
digitalWrite(led1, HIGH);
delay(1000);
});
server.on("/socket1Off", [](){
server.send(200, "text/html", webPage);
digitalWrite(led1, LOW);
delay(1000);
});
server.on("/socket2On", [](){
server.send(200, "text/html", webPage);
digitalWrite(led2, HIGH);
delay(1000);
});
server.on("/socket2Off", [](){
server.send(200, "text/html", webPage);
digitalWrite(led2, LOW);
delay(1000);
});
server.on("/socket3On", [](){
server.send(200, "text/html", webPage);
digitalWrite(led3, HIGH);
delay(1000);
});
server.on("/socket3Off", [](){
server.send(200, "text/html", webPage);
digitalWrite(led3, LOW);
delay(1000);
});
server.on("/socket4On", [](){
server.send(200, "text/html", webPage);
digitalWrite(led4, HIGH);
delay(1000);
});
server.on("/socket4Off", [](){
server.send(200, "text/html", webPage);
digitalWrite(led4, LOW);
delay(1000);
});
server.begin();
Serial.println("HTTP server started");
}
void loop() {
server.handleClient();
}