Twitterを復帰したんです.それまではあまり積極的に使っていなかったので,Webからpostすることが多かったんです.そのため,4403という名前を使っていても良いかなって思ってました.だって,オレ,4403だし.4423でも5234でもないし.
で,そんなこんなで,4403とTwitterで名乗っていたところ,TwitterFonとTwitKitで,4403=Bill Meis事件が発生しました.ノー!オレ4403だよ.というわけで,その原因を突き止めるべく調査してみた.実は4403と名乗っているだけで,中の人はBill Meisかもしれないし.TwitterFonで調べるのは困難なので,TwitKitがどういうリクエストをしているのかを調べてみた.こういう時,WebAPIって便利!システムフックとか書けなくても,HTTPを監視すれば良いんですもの.
原因判明.Bill MeisさんのユーザIDが4403っぽいのだ.これは,Twitter API仕様書で確認した.
friends 自分の friend の一覧を(各 friend の最新ステータス付きで)取得する 引数 id を指定すれば、その id のユーザの friend の一覧を取得できる ただし、この API で取得できるデータは最大100件(100人分)である URL: http://twitter.com/statuses/friends.format (format は xml, json のうちのいずれかを指定) 引数: id=ユーザID または id=スクリーン名 (オプション) 指定した ID またはスクリーン名のユーザの friend のステータスを取得する (この引数を指定しない場合は、自分の friend のステータスを取得する) 例: http://twitter.com/statuses/friends/12345.json ユーザID 12345 の friend の一覧を JSON 形式で取得する http://twitter.com/statuses/friends/bob.xml スクリーン名 bob の friend の一覧を XML 形式で取得する
原因はこれで,TwitKitはhttp://twitter.com/statuses/friends/4403.jsonをリクエストしていた.この4403はユーザIDか?スクリーン名か?どうやら,APIはこれをユーザIDと識別するらしい.数字だけだからだろう,きっと.数字だけのユーザIDってどうやって知るのか知らないけど,TwitKitはスクリーン名でリクエストしているようだから,http://twitter.com/statuses/friends.xml?screen_name=10101を使って欲しい.おそらく,TwitterFonの方も同じ理由だろう.
というわけで,Twitter API界隈において,数字だけのスクリーン名をつける輩はマイノリティーだということが分かった.今まで長いこと使われてきたであろうソフトウェアなのに,誰もレポートしていないということは,数字だけのスクリーン名はマイノリティーというか,Twitter業界ではタブーなのだろう.ふーんだふーんだ.いいもんいいもん!新参者でギョーカイの仕組みを理解してないもん!
というわけで,スクリーン名をk4403にしましたので,その辺,よろしく.