botのTwitter API 1.1対応

今まで面倒なのもあって放置してきたんですが、いよいよTwitterのAPI v1が3/5から段々使えなくなるということで、うちのbotもそろそろ対応するかと重い腰を上げまして。
当初はふらっと思いつきで作って、次第につぎはぎしながら大きくなってきたのでソースコードがスパゲッティ化していることもあり、この際全部書き直すか!と決めたものの、最終的に足かけ1週間かかってしまった・・・
基本的にはAPIのエンドポイントURLを書き換えるだけだけど、うちのはPEARのServices_Twitterを使っていてそれが対応しない雰囲気なのでライブラリから・・・といってもOAuthのPEARもあるし、jsonデコードもあるのでそんなに時間はかからなかった気がする。
一番時間がかかったのは、今までなあなあにしてきたTwitterの細かい部分にも対応したところ・・・

  • 短縮URL(t.co)の文字数が増えるらしいので、今後も変化について行けるようにhelp/configurationから取るようにした
  • 文字数計算(生成した文がオーバーしないように)をtwitter-text-phpあたりを使ってやるようにした
  • API制限がAPIごとになるらしく、HTTPヘッダに入ってるらしいのでログに出すように
  • UserStreamの再接続処理をドキュメント通りに実装した(つもり)

大半が英文のドキュメントを読む時間に費やされたかと思います(ぁ
あとはニコニコアラートの生放送・動画解析部分をマルチプロセス化してみたり、発言解析の順番を変えてみたりちょこちょこ変わってます。
そして結構コピペして各所に散らばってたコードを関数化したのにこまめに書いたらソースの総量はあんまり減らなかった罠

追記:ソースコードはGitHubで公開したのでそちらを