-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtagoio-shield.ino
78 lines (57 loc) · 1.69 KB
/
tagoio-shield.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <WiFiManager.h> //https://github.com/tzapu/WiFiManager
#include <OneWire.h>
#include <DHT.h>
#define DHT_DATA_PIN 4
#define DHTTYPE DHT11
WiFiManager wifiManager;
WiFiClient client;
DHT dht(DHT_DATA_PIN, DHTTYPE, 11);
float temp = 0.0;
String apiKey = "COPIE_O_TOKEN_AQUI"; //o token vai aqui
const char* server = "api.tago.io";
void setup() {
Serial.begin(115200);
sensors.begin();
wifiManager.autoConnect("SensorTemperatura");
}
void envia_dados(void){
sensors.requestTemperatures();
temp = sensors.getTempCByIndex(0);
Serial.println(temp);
//Inicia um client TCP para o envio dos dados
if (client.connect(server,80)) {
Serial.print("CONNECTED AT TAGO\n");
String postStr = "";
String postData = "variable=temp&value="+String(temp)+"\n";
postStr = "POST /data HTTP/1.1\n";
postStr += "Host: api.tago.io\n";
postStr += "Device-Token: "+apiKey+"\n";
postStr += "_ssl: false\n";
postStr += "Content-Type: application/x-www-form-urlencoded\n";
postStr += "Content-Length: "+String(postData.length())+"\n";
postStr += "\n";
postStr += postData;
client.print(postStr);
//Serial.print("%d", postStr);
unsigned long timeout = millis();
while (client.available() == 0) {
if (millis() - timeout > 5000) {
Serial.println(">>> Client Timeout !");
client.stop();
return;
}
}
while(client.available()){
String line = client.readStringUntil('\r');
Serial.print(line);
}
}
client.stop();
}
// the loop function runs over and over again forever
void loop() {
envia_dados();
delay(30000);
}