Twitter API 1.1 test program. (use SuperTweet.net)

Dependencies:   EthernetInterface HTTPClient mbed-rtos mbed mpl115a2

MPL115A2を使って気温と気圧をツイートするプログラムです。

Committer:
kanpapa
Date:
Sat Jun 22 11:01:14 2013 +0000
Revision:
0:b59b1315ae90
Release version.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kanpapa 0:b59b1315ae90 1 #include "mbed.h"
kanpapa 0:b59b1315ae90 2 #include "EthernetInterface.h"
kanpapa 0:b59b1315ae90 3 #include "HTTPClient.h" // basicauth enabled. http://mbed.org/users/kazushi2008/code/HTTPClient/
kanpapa 0:b59b1315ae90 4 #include "MPL115A2.h"
kanpapa 0:b59b1315ae90 5
kanpapa 0:b59b1315ae90 6 I2C i2c(p9, p10); // sda, scl
kanpapa 0:b59b1315ae90 7 Serial pc(USBTX, USBRX); // tx, rx
kanpapa 0:b59b1315ae90 8
kanpapa 0:b59b1315ae90 9 MPL115A2 p_sensor(&i2c);
kanpapa 0:b59b1315ae90 10
kanpapa 0:b59b1315ae90 11 EthernetInterface eth;
kanpapa 0:b59b1315ae90 12 HTTPClient twitter;
kanpapa 0:b59b1315ae90 13 char str[512];
kanpapa 0:b59b1315ae90 14
kanpapa 0:b59b1315ae90 15 int main()
kanpapa 0:b59b1315ae90 16 {
kanpapa 0:b59b1315ae90 17 char info[128];
kanpapa 0:b59b1315ae90 18
kanpapa 0:b59b1315ae90 19 p_sensor.begin();
kanpapa 0:b59b1315ae90 20 p_sensor.ReadSensor();
kanpapa 0:b59b1315ae90 21
kanpapa 0:b59b1315ae90 22 sprintf(info, "I am tweeting from my mbed! Pressure = %f, Temperature = %f", p_sensor.GetPressure(),p_sensor.GetTemperature());
kanpapa 0:b59b1315ae90 23 printf("%s",info);
kanpapa 0:b59b1315ae90 24
kanpapa 0:b59b1315ae90 25 eth.init(); //Use DHCP
kanpapa 0:b59b1315ae90 26
kanpapa 0:b59b1315ae90 27 eth.connect();
kanpapa 0:b59b1315ae90 28
kanpapa 0:b59b1315ae90 29 //POST data
kanpapa 0:b59b1315ae90 30 HTTPMap map;
kanpapa 0:b59b1315ae90 31 HTTPText inText(str, 512);
kanpapa 0:b59b1315ae90 32 map.put("status", info);
kanpapa 0:b59b1315ae90 33
kanpapa 0:b59b1315ae90 34 printf("\nTrying to post data...\n");
kanpapa 0:b59b1315ae90 35 twitter.basicAuth("myuser", "mypass"); //We use basic authentication, replace with you account's parameters
kanpapa 0:b59b1315ae90 36 int ret = twitter.post("http://api.supertweet.net/1.1/statuses/update.json", map, &inText);
kanpapa 0:b59b1315ae90 37 if (!ret)
kanpapa 0:b59b1315ae90 38 {
kanpapa 0:b59b1315ae90 39 printf("Executed POST successfully - read %d characters\n", strlen(str));
kanpapa 0:b59b1315ae90 40 printf("Result: %s\n", str);
kanpapa 0:b59b1315ae90 41 }
kanpapa 0:b59b1315ae90 42 else
kanpapa 0:b59b1315ae90 43 {
kanpapa 0:b59b1315ae90 44 printf("Error - ret = %d - HTTP return code = %d\n", ret, twitter.getHTTPResponseCode());
kanpapa 0:b59b1315ae90 45 }
kanpapa 0:b59b1315ae90 46
kanpapa 0:b59b1315ae90 47 eth.disconnect();
kanpapa 0:b59b1315ae90 48
kanpapa 0:b59b1315ae90 49 while(1) {
kanpapa 0:b59b1315ae90 50 }
kanpapa 0:b59b1315ae90 51 }