Twitter ver1.1 仕様変更なのか?トルネのライブ機能休止

Easter Nutella Twitter Figolla

Easter Nutella Twitter Figolla by MaltaGirl, on Flickr

Twitter ver1.1 トルネのライブ機能は、テレビを見ながら、その番組に関するツイートをテレップのように流す機能です。3月4日に休止になってしまいました。
TwitterがリリースしているAPI(アプリケーションプログラミングインターフェス)の仕様が去年変更になり、3月5日に前のバージョンが廃止になりました。
そこで、今回はどのようにTwitter APIが変更したのかまとめてみます。

APIは、プログラムする手間を省き、簡単にプログラムを使えるように設定されたもので、共通して使える機能(関数)を提供することが目的になります。Twitter APIを使えば、なにかアプリケーションをプログラムする時に、Twitterの機能を簡単に利用する事ができます。

レートリミットの改良

レートリミッツとは、Twitterからデータを読み込む数の制限値です。ほとんどのAPIが15分に15回、中には180回のものがあります。検索は、15分に180回です。
https://dev.twitter.com/docs/rate-limiting/1.1/limits

ver1.0では、60分1ブロックで350回/1時間まででした。ver1.1では、15分1ブロック(これをwindowと呼びます。)に間隔が変更になり、ほとんどのAPIが15回/15分なので、225回/1時間になりました。

Twitter側は、サーバの負担が減りましたが、使う側は、呼び込める回数が減りました。
レートリミッツを超えると、「HTTP 429 レートリミット超えました」というヘッダ情報とメッセージが返されるようになりました。

<

h3>対策方法

  • キャッシュを利用する
  • ユーザーに優先順位をつける(コンテンツへのユーザーを制限する)
  • 稀にしか使わないAPIを削除するなど、プログラムを最適化する
  • ストリーミングAPIを使う

JSONのみサポート

Twitterからの返される情報の形式ですが、XML、Atom、RSSは廃止になり、JSONのみで返ってきます。これは、Twitter APIを使ってプログラミングはしていない人にも影響がでてくる変更です。TwitterをRSSリーダーでチェックしている人は、Twitterの内容が読めなくなっていると思います。

<

h3>対策方法
JSONを使う
RSS読み込みの一時的な解決方法:http://www.lifehacker.jp/2012/10/121017twitterrss.html

OAuth 1.0a.を使った認証

すべての認証方法は、OAuthになりました。情報としては、コンシュマーID、コンシュマーパスワード、アクセストークン、シークレットアクセストークンの四つが必要になります。セキュリティの強化が、最初の設定がちょっとめんどくさい。仕様変更を知らないとなぜ認証してくれないんだと、APIをプログラマーがはまるポイントだと思います。

「http://urls.api.twitter.com/1/urls/count.json」からGETで任意のURLのつぶやき数を取得する方法も動作停止します。これの対応策は、RESTとStreaming APIsに「retweet_count」があるので、そこから呼び込み可能ですが、手軽にはデータを読み込めなくなると思います。

開発ルールの更新

主なものは、

  • ディスプレイの要件(Twitterからのデータを規則正しく表示する)に従う
  • 100万トークン以上必要な場合は、Twitterと相談する
  • スパムとして使わない
  • ユーザのプライバシーを尊重する。個人情報や機密情報の公開を促進または奨励しない
  • レートリミッツを回避しない

https://dev.twitter.com/docs/terms/summary

ディスプレイ要件

  • ツイート作成者のアバター(作成者のプロフィール画像)が常に表示されなければならない
  • @ユーザー名は常に “@”マークが付いて表示されなければならない
  • アバター(作成者のプロフィール画像)、名前、@ usernameは、すべてのユーザーのTwitterのプロフィールにリンクする必要がある
  • ツイートの内容は、一定の条件以外は変更しない
  • ツイート作成者のアバターが常に表示されなければならない
  • ツイートのタイムスタンプが常に表示され、日付と時刻を含める必要がある
  • 常にツイートと対話すること手段ですが、返信、リツイート、お気に入りのアクションアイコンをユーザにとってみえるようにしないといけない

などなどです。これはサイトの閲覧者のためです。ハッシュタグの処理がめんどくさいです。

新しいTwitterクライアントポリシー

もしアプリケーションが、100万を超えるユーザーで使われていたり、ツイートやタイムラインが1000万ビュー超える場合は、twitterと相談する必要があります。Twitterを再現するようなアプリケーションには、10万ユーザー超える場合、Twitterの許可と規約条項が増えます。

あとは、ver1.0とかdev.twitter.com のドキュメントの上にver1.1かver1.0なのか明確にバージョンを書くとかです。

参考:https://dev.twitter.com/docs/api/1.1/overview

コメントを残す