Library for writing and reading on ThingSpeak with ethernet
ThingSpeak.h
- Committer:
- mpuric
- Date:
- 2017-06-28
- Revision:
- 2:5191c0e163d6
- Parent:
- 1:ea7f0ef29ef5
File content as of revision 2:5191c0e163d6:
#ifndef THINGSPEAK_H #define THINGSPEAK_H #define HOSTNAME "mbed" #include "mbed.h" #include "EthernetNetIf.h" #include "HTTPClient.h" /** Class for sending data to ThingSpeak over ethernet, * Class is using old mbed library revision and SensorsThingSpeak from * https://developer.mbed.org/teams/TVZ-Mechatronics-Team/code/SensorsThingSpeak/ * Example: * @code * #include "mbed.h" * #include "ThingSpeak.h" * * ThingSpeak thingSpeak("XXXXXXXXXXXXXXXX"); * * int main() { * int i = 1; * flot value = 3.14; * thingSpeak.connect(); * thingSpeak.setField(value,i) * thingSpeak.putUp(); * } * @endcode */ class ThingSpeak { public: /** Write api key provided from ThingSpek channel. * @param: write api key provided from ThingSpeak channel. */ ThingSpeak(char*); /** * Establishing ethernet connection until connected. * */ void connect(); /** * Funkcion for pulling data from ThingSpeak. * @param readKey Channel feed number * @param Field number. */ float pull(long int, int); void putUp(); /** *Setting values to the field, they should be set in order. * It's not required to set them all (example: you can set 1, 2, 3 or 1, 3) * @param Field value to store on. * @param i number of a field. */ void setField(float field, int i); private: char* thingSpeakUrl; char* thingSpeakRead; char* thingSpeakKey; char urlBuffer[1023]; char fieldBuffer[1023]; EthernetNetIf eth; EthernetErr ethErr; HTTPClient http; IpAddr ethIp; HTTPText resp; HTTPResult res; }; #endif