#include <ESP8266WiFi.h>
#include <WiFiClient.h> 
#include <ESP8266WebServer.h>
#include <ESP8266HTTPClient.h>
#include <DHT.h>

const char *ssid = "TP-Link_688A";
const char *password = "debarbamiguel";
const int http_port = 8080;

WiFiClient client;
#define D7    13 //dht
#define D1    5 //pushbuttom
#define D3    0 // LED

#define DHTTYPE DHT11 // DHT 11
#define DHTPIN 13 // leitura DHT11
DHT dht(DHTPIN, DHTTYPE, 50);


void setup() {
  pinMode(D3,OUTPUT);
  pinMode(D1,INPUT);
  digitalWrite(D3,LOW);  
  Serial.begin(115200);
  WiFi.mode(WIFI_OFF);delay(1000);
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, password);Serial.println(".");
  Serial.print("Conectando...");
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);Serial.print(".");}
    Serial.println ("");
    Serial.print ("Conectado a ");Serial.println (ssid);
    Serial.print ("Endereço IP: ");Serial.println (WiFi.localIP ());
    Serial.print("MAC: ");    Serial.println(WiFi.macAddress());    
}
void EnviaServer(String postData){
    HTTPClient http;
    http.begin(client,"http://modulo8.migueldebarba.com.br/pedroekarol/insertleitura.php");
    http.addHeader("Content-Type", "application/x-www-form-urlencoded");
    int httpCode = http.POST(postData);
    String payload = http.getString();
    Serial.println("httpCode:"+String(httpCode));
    Serial.println("payload:"+payload);
    http.end();
  }

 
void loop() {
  if (digitalRead(D1)==HIGH){
    digitalWrite(D3,HIGH);
    String idmac=WiFi.macAddress();    
    String from="ESP8266";    
    float temperatura=random(0,55);
    float umidade = random(0,100);
    float luz = random(0,1024);
    String postData = 
    "idmac="+String(idmac)
    +"&from="+String(from)
    +"&umidade="+String(umidade)
    +"&luz="+String(luz)
    +"&temperatura="+String(temperatura);
    EnviaServer(postData); 
    delay(500);
    digitalWrite(D3,LOW);
  }
}