Twitterライブラリのテスト
Super Tweetを使う。 http://www.supertweet.net/about/documentation
railsでアプリを作った。(よくわかってなかったから 必要なのかと思ったら関係無かった) http://mbedautotweeter.heroku.com/
手順は、
(1)mbedがSuperTweetにPOST(SuperTweetはあらかじめTwitterアプリとして認証しておく)
(2)SuperTweetがBASIC認証(キーは登録画面で指定しておく)でTweet
ととてもシンプル。
ハードウェアの方の準備は、 イーサネットケーブルをスターオレンジボードに指すだけという無茶苦茶な手軽さ。
まず、ここの日本語のページを参考にした。
http://mbed.org/users/nxpfan/notebook/lets_try_twitter_jp/
このTwitterExampleというコードを使う。
http://mbed.org/users/donatien/programs/TwitterExample/5yhxk
パスワードだけ変えてコンパイルすると、こんなエラーが。
ググるとHTTPClientを使えと書いてあった。 http://mbed.org/forum/mbed/topic/1358/?page=1#comment-6632
(さっきのコードは作った人の環境に依存するコードみたい?) ここのHTTPClientExampleを拝借し、LCDのライブラリを追加。 http://mbed.org/users/AdamGreen/programs/HTTPClientExample/m9eeoe
#include "mbed.h" #include "EthernetNetIf.h" #include "HTTPClient.h" #include "TextLCD.h" TextLCD lcd(p24, p26, p27, p28, p29, p30); // rs, e, d0-d3 EthernetNetIf eth; int main() { printf("Init\n"); printf("\r\nSetting up...\r\n"); EthernetErr ethErr = eth.setup(); if(ethErr) { printf("Error %d in setup.\n", ethErr); return -1; } printf("\r\nSetup OK\r\n"); HTTPClient twitter; HTTPMap msg; msg["status"] = "Hello from ARM microcontroller!"; //A good example of Key/Value pair use with Web APIs twitter.basicAuth("username", "registered_key_to_supertweet"); //We use basic authentication, replace with you account's parameters //No need to retieve data sent back by the server HTTPResult r = twitter.post("http://api.supertweet.net/1/statuses/update.xml", msg, NULL); if( r == HTTP_OK ) { printf("Tweet sent with success!\n"); lcd.cls(); lcd.printf("Tweet sent with success!\n"); } else { printf("Problem during tweeting, return code %d\n", r); lcd.cls(); lcd.printf("Error code %d\n",r); } return 0; }
(補足)HTTPClientでauthできるみたい。SuperTweetを使わない方法。 http://shokai.org/blog/archives/5122
Please log in to post comments.