2013年8月19日月曜日

mbedでTwitterのタイムライン・リプライを取得する(Supertweet版)

mbedとSupertweetを利用してTwitterのタイムライン・リプライを取得できるようにしてみました。
と、言ってもHTTPClientStreamingExampleに少し手を加えてしてどんなデータが送られてくるのかをPCから見れるようにしただけです。 (サンプルを作っていただいた方に感謝)

Supertweetのデータを取得できるようにしたものがこちら
http://mbed.org/users/nameless129/code/SuperTweet_get/
Supertweetのユーザー名とパスワードを入力してコンパイル。mbedから実行するとタイムラインがシリアル通信を通してPCに送られるようになっています。ボーレートを921600bpsに設定しているので注意してください。

実行するとタイムラインのデータを見ることができます。
 タイムラインの本文となる部分は5行目の"text":以降のようです。Unicodeで日本語はエンコードされています。しかし、どういう訳か通常であれば%u3010のような形式でエンコードされるはずが\u3010とエンコードされています。(おかげで文字の正体を探るのに苦労させられました。。。)

SupertweetはTwitterのAPIすべてをサポートしているようなので、リプライの取得も試してみました。方法としてはTwitter APIのアドレスに倣い、Supertweetのアドレスを修正するだけです。私がアップしたソースの36行目にリプライを取得するためのアドレスをセットしています。
実行結果は以下の通りです。

先ほどのタイムライン取得と同様に5行目の"text":からリプライの本文(@en129_mbed test)となっています。リプライ元のユーザー名は10行目の"screen_name":"en129"のようです。

以上の実行結果より、Supertweetを用いることでTwitterのAPIにアクセスしたときと同じデータを受信できるようです。ただし、受信するデータが多く、扱いが面倒と思いました。

次は同じTwitterプロキシサービスで機能が簡素化された「StewGate U」を試してみる予定です。

0 件のコメント :