|
||
Twitter の発言を IM に流すとずっとポコポコうるさい。
TwitterIrcGateway をずっと使ってたんだけど、たまーに XML の parse でコケてるっぽくて、一定時間発言が取れなかったりする。
かと言って Twitter のサイトは妙に重いし、イチイチ最新のをあの件数で追うのがツラい。
仕事で Mac OS X も Windows も使うので、それぞれのプラットフォームで動く Twitter 専用クライアントも使ってたんだけど、それぞれにいいとこはあるんだけど、完全に自分好みではない上に操作方法がよくわからなかったり、かゆいところに手が届かなかったり、Windows のコレにあるやつが Mac OS X のコレにあったらいいのにとか、そういうの思えば思うほどイライラしてしまう。
なので、そんな呪縛から開放されようと、しばらくは cron で API 叩いて皆の発言を拾って DB にぶっこんで、それをファイルに吐きつつ、そのファイルを tail -f しながら読む毎日だった。
Twitter / nipotan: twitter のクライアントは tail -f です。
でも、まあぶっちゃけ tail -f はツライし、せっかく俺専用に DB にぶっこんでんだし、それを使わない手はないなってことで、昨日の晩、ちょっくら web 用にクライアントを作った。
皆のログは、JSON からレンダリングされて、一ページに一気に 200 件出してる。
画面に表示されている以降の最新の書き込みを、また別個 JSON で返すようにしておいて、setTimeout() 使って Ajax で 1 分おきに取ってきて、画面が定期的に更新されているようになってる。
画面上黄色で出ている人は、リアル知人や同僚、部下、あるいは Twitter で頻繁に面白発言をする人を適当に選んで、その人の発言は黄色で出るようになってる。
白い人は「何で俺は白いんだよ」とか思うかも知れないけど、多分リアルで会ったことないのでごめんなさい。あくまで俺用なので。
で、水色ってかグレーっぽいのが自分の発言。
あと、画面キャプってるタイミングではなかったんだけど、俺の名前が本文に含まれる発言は、画面上赤く出てくる。
あまりにログが多いので困ったもんだ (200 件にしている自分も悪いんだけど) ってんで、hide some silly messages のチェックボックスがトグルになってて、チェックしている限り白く出ている人のを隠すようになってる。
一応、Twitter だけじゃなく、フレパやら Wassr やら nowa も同時更新出来るようになってて、チェックボックスを入れて、ステータスを更新するサイトしないサイトが選べるようになってたり。
ちなみに更新するに際して nowa 以外は Net::Twitter で、nowa は Nowa::Nanishiteru で更新してる。
最近の Net::Twitter だと、仕様が変わったせいで Wassr が更新出来ないって問題があったんですが、それをボヤいてたら木村さんが Wassr でも更新出来るように対応してくれたよ。
もちろん @nipotan みたいな Twitter の記法に対応して、そこからリンクするようにしているんだけど、Twitter は何かと重くてリンクをはりたくなかったから、俺用に取ってきたデータを DB から表示するだけ用だから、Twitter に比べてかなり高速に表示可能。
もちろん自分以外も高速に表示出来る。
で、こういうのは元々適当に俺用に作ったやつをどんどん拡張していったので、作っておいてなんだが CodeRepos あたりに入れようと思ったけど、コードがアレすぎるので見送る。
というか、普通に思ったんだけど、web クライアントとしてはかなり使い易い部類だと思うので、これをサービスにしたらいいのかなとか思った。
でも、それってやっぱ ID/PASS 抜かないといけなかったりだから、そんなことしたらシュッシュッされちゃいそうでやだ。
いや、もちろん冗談で、そんな理由でやだって言ってるんじゃないけどさ。
やっぱやめた。
どうしたいんだ俺。