http://http://diytec.web.fc2.com/mark2r2/

Dependencies:   EthernetNetIf NTPClient_NetServices mbed ConfigFile

Committer:
mark2r2
Date:
Tue Sep 20 12:46:26 2011 +0000
Revision:
0:08a4d61cd84c
V1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
mark2r2 0:08a4d61cd84c 1 /***********************************
mark2r2 0:08a4d61cd84c 2
mark2r2 0:08a4d61cd84c 3 twitter.c
mark2r2 0:08a4d61cd84c 4
mark2r2 0:08a4d61cd84c 5 ***********************************/
mark2r2 0:08a4d61cd84c 6 #include "mbed.h"
mark2r2 0:08a4d61cd84c 7 #include "HTTPClient.h"
mark2r2 0:08a4d61cd84c 8 #include "TextLCD.h"
mark2r2 0:08a4d61cd84c 9
mark2r2 0:08a4d61cd84c 10 #define DEBUG
mark2r2 0:08a4d61cd84c 11
mark2r2 0:08a4d61cd84c 12 //LCD
mark2r2 0:08a4d61cd84c 13 extern TextLCD lcd;
mark2r2 0:08a4d61cd84c 14 extern HTTPClient commonClient;
mark2r2 0:08a4d61cd84c 15
mark2r2 0:08a4d61cd84c 16 extern void printable_msg(char*);
mark2r2 0:08a4d61cd84c 17 extern int GetStatus(char *, char *, char *);
mark2r2 0:08a4d61cd84c 18
mark2r2 0:08a4d61cd84c 19 char id[128];
mark2r2 0:08a4d61cd84c 20 char password[128];
mark2r2 0:08a4d61cd84c 21
mark2r2 0:08a4d61cd84c 22 /**************************************
mark2r2 0:08a4d61cd84c 23 * Output to Twitter *
mark2r2 0:08a4d61cd84c 24 ***************************************/
mark2r2 0:08a4d61cd84c 25 void twitter_output(void){
mark2r2 0:08a4d61cd84c 26 char msg[256];
mark2r2 0:08a4d61cd84c 27 msg[0]='\0';
mark2r2 0:08a4d61cd84c 28 printable_msg(msg);
mark2r2 0:08a4d61cd84c 29
mark2r2 0:08a4d61cd84c 30 HTTPMap h_msg;
mark2r2 0:08a4d61cd84c 31 h_msg["status"] = msg; //A good example of Key/Value pair use with Web APIs
mark2r2 0:08a4d61cd84c 32
mark2r2 0:08a4d61cd84c 33 commonClient.basicAuth(id, password); //We use basic authentication, replace with you account's parameters
mark2r2 0:08a4d61cd84c 34 #ifdef DEBUG
mark2r2 0:08a4d61cd84c 35 // printf("twitter\r\n");
mark2r2 0:08a4d61cd84c 36 printf("%s,%s\r\n",id,password);
mark2r2 0:08a4d61cd84c 37 #endif
mark2r2 0:08a4d61cd84c 38 //No need to retieve data sent back by the server
mark2r2 0:08a4d61cd84c 39 HTTPResult r = commonClient.post("http://api.supertweet.net/1/statuses/update.xml", h_msg, NULL);
mark2r2 0:08a4d61cd84c 40
mark2r2 0:08a4d61cd84c 41 #ifdef DEBUG
mark2r2 0:08a4d61cd84c 42 if( r == HTTP_OK ){
mark2r2 0:08a4d61cd84c 43 printf("%s",msg);
mark2r2 0:08a4d61cd84c 44 printf("Tweet sent with success!\n");
mark2r2 0:08a4d61cd84c 45 }else{
mark2r2 0:08a4d61cd84c 46 printf("Problem during tweeting, return code %d\n", r);
mark2r2 0:08a4d61cd84c 47 }
mark2r2 0:08a4d61cd84c 48 #endif
mark2r2 0:08a4d61cd84c 49 }
mark2r2 0:08a4d61cd84c 50
mark2r2 0:08a4d61cd84c 51 void twitter_setup(){
mark2r2 0:08a4d61cd84c 52 GetStatus("/local/TWITTER.CFG","ID",id);
mark2r2 0:08a4d61cd84c 53 GetStatus("/local/TWITTER.CFG","PASS",password);
mark2r2 0:08a4d61cd84c 54 printf("twitter ID=%s, password=%s\r\n",id,password);
mark2r2 0:08a4d61cd84c 55 lcd.cls();
mark2r2 0:08a4d61cd84c 56 lcd.locate(0,0);
mark2r2 0:08a4d61cd84c 57 lcd.printf("Twitter ID=%s",id);
mark2r2 0:08a4d61cd84c 58 wait(2);
mark2r2 0:08a4d61cd84c 59 }
mark2r2 0:08a4d61cd84c 60
mark2r2 0:08a4d61cd84c 61