読者です 読者をやめる 読者になる 読者になる

会話を検出するAPI書いてみた。

公式とかでTwitterで続いた会話が検出されるみたいに
一連をJSONで返すやつ書いてみましたー
多分使わないけど。

実は非公開のAPIがあったりします。

f:id:rskull:20120411005324p:plain

URL欄の最後の数列がこのツイート固有のIDのステータスIDです。
これをstidにセットするだけです。
http://rskull.com/php/api/threader/?stid=168306358813339648
するとこんな情報が返ってきます。

[{"sname":"kai_Linux","name":"kai","id":"283438252","text":"test","stid":"168306261337702400","date":"Sat Feb 11 21:11:54 JST 2012","repid":null},{"sname":"r_skull","name":"R.SkuLL","id":"234781191","text":"@kai_Linux \u3078\u3044\u3086\u30fc\uff01","stid":"168306293201838080","date":"Sat Feb 11 21:12:01 JST 2012","repid":"168306261337702400"},{"sname":"kai_Linux","name":"kai","id":"283438252","text":"@r_skull \u3078\u3044","stid":"168306358813339648","date":"Sat Feb 11 21:12:17 JST 2012","repid":"168306293201838080"}]

まぁ最低限の項目しか含まれてませんが。。
展開すると

Array
(
    [0] => stdClass Object
        (
            [sname] => kai_Linux
            [name] => kai
            [id] => 283438252
            [text] => test
            [stid] => 168306261337702400
            [date] => Sat Feb 11 21:11:54 JST 2012
            [repid] => 
        )

    [1] => stdClass Object
        (
            [sname] => r_skull
            [name] => R.SkuLL
            [id] => 234781191
            [text] => @kai_Linux へいゆー!
            [stid] => 168306293201838080
            [date] => Sat Feb 11 21:12:01 JST 2012
            [repid] => 168306261337702400
        )

    [2] => stdClass Object
        (
            [sname] => kai_Linux
            [name] => kai
            [id] => 283438252
            [text] => @r_skull へい
            [stid] => 168306358813339648
            [date] => Sat Feb 11 21:12:17 JST 2012
            [repid] => 168306293201838080
        )

)

会話の終点から遡るので、会話の始まりから検出はできないです
公式と同じく上から下へと会話が流れて行きます
画像とか動画とか添付されてたときのやつは入ってないです(今は

上からスクリーンネーム、名前、ユーザーID(数字のやつ)、ツイート内容
ステータスID、作成日(日本時間に修正済)、リプライ元ID

なかんじです。

&callback=test
の様にコールバックをつけるとJSONP形式での出力になります。

そのうちGithubにでの上げようかな・・