/* Dweet.io POST client for ArduinoHttpClient library Connects to dweet.io once every ten seconds, sends a POST request and a request body. Shows how to use Strings to assemble path and body note: WiFi SSID and password are stored in config.h file. If it is not present, add a new tab, call it "config.h" and add the following variables: char ssid[] = "ssid"; // your network SSID (name) char pass[] = "password"; // your network password created 15 Feb 2016 by Tom Igoe this example is in the public domain */ #include #include #include "config.h" const char serverAddress[] = "dweet.io"; // server address int port = 80; WiFiClient wifi; HttpClient client = HttpClient(wifi, serverAddress, port); int status = WL_IDLE_STATUS; int statusCode = 0; String response; void setup() { Serial.begin(9600); while(!Serial); while ( status != WL_CONNECTED) { Serial.print("Attempting to connect to Network named: "); Serial.println(ssid); // print the network name (SSID); // Connect to WPA/WPA2 network: status = WiFi.begin(ssid, pass); } // print the SSID of the network you're attached to: Serial.print("SSID: "); Serial.println(WiFi.SSID()); // print your WiFi shield's IP address: IPAddress ip = WiFi.localIP(); Serial.print("IP Address: "); Serial.println(ip); } void loop() { // assemble the path for the POST message: String dweetName = "scandalous-cheese-hoarder"; String path = "/dweet/for/" + dweetName; String contentType = "application/json"; // assemble the body of the POST message: int sensorValue = analogRead(A0); String postData = "{\"sensorValue\":\""; postData += sensorValue; postData += "\"}"; Serial.println("making POST request"); // send the POST request client.post(path, contentType, postData); // read the status code and body of the response statusCode = client.responseStatusCode(); response = client.responseBody(); Serial.print("Status code: "); Serial.println(statusCode); Serial.print("Response: "); Serial.println(response); Serial.println("Wait ten seconds\n"); delay(10000); }