Twitter API を使ったお仕事を卒業しようかと思います。

Twitter様、Facebook様におかれましては、御社ご提供のAPIを利用したWebキャンペーンのシステム開発などで大変お世話になりました。
ぼくの周辺には、APIを利用したシステム開発を好んでやる人がいなかったため、ありがたくお仕事として頂戴しておりました。

時世の流れが、キャンペーンなどにSNSを利用する機会が少なくなったため、ぼくへのお仕事発注の数も少なくなっておりましたが、ありがたいことに先月に2件ほどのお仕事をいただいたので、久方ぶりにAPIをこねくりまわしてゴニョゴニョやっておったのですが。

残念ながら2案件ともトラブルに見舞われました……。

その1:画像付きツイートを取得しても、Twitter APIから返ってくるJSONに画像情報が入っていない場合がある

理由はわかりません。条件もわかりません。

「画像つきでツイートしたのに、管理画面に表示されませんよ!!」
今まではなかったことです。もしかしたら気づいていなかっただけかもしれません。たまたま営業さんがそのキャンペーンのテストで画像付きのツイートをしたのに、そのキャンペーンの管理ページで画像が表示されないのです。
公式ドキュメントによると、画像つきのツイートの場合、mediaとかextended_entitiesとかいうパラメータがついてくるはずなのに、そのデータが取得できないのです。
もちろんその営業さんがいうとおり、TwitterのWebページを見ると、ちゃんと画像付きでツイートされています。

謎です。

APIがちゃんとしたJSONを返してくれない以上、ぼくもそれ以上何もできないのですが、今回は例外的にアレとかソレとかゴニョゴニョして、どうにかこうにか画像を取得することはできましたが、たぶんルール違反なのでここでは説明しません。

その2:ハッシュタグで検索した結果を取得するにも、検索結果に含まれないツイートが存在する

理由はわかりません。条件もわかりません。

ぼくのアカウントでログインしたTwitterのページでハッシュタグ検索した結果と、担当ディレクターさんのアカウントでログインした場合の検索結果が違うんですよね。
で、クライアントさんのアカウントでログインした場合の検索結果と、APIが返す検索結果が異なると、「バグです」ってなるわけです。
APIから取得できる検索結果は、Twitterのウィジェットと同じもので、クライアントさんが検索した結果とは違いますよ!って言っても納得してもらえる訳がない。

てなわけで、Twitter API を使った案件は、もうなんか無理なんじゃないかと。
てな感じの近況報告でした。

You must add your mobile phone to your Twitter profile before creating an application.だと!?

20140213_01

Twitterのアプリを登録しようとしたら、妙なアラートが出てきた。

You must add your mobile phone to your Twitter profile before creating an application. Please read https://support.twitter.com/articles/110250-adding-your-mobile-number-to-your-account-via-web for more information
Something went wrong during your application creation.

先月あたりにやった時には出てこなかったけどなぁ。
Recently Updated Documentationを流し読みしたけど、そんな記事ねぇし。

なんかちょっと面倒なことになった気がしてるのは俺だけかいな……。

【追記その1】

それが良いか悪いかは別にして、複数のTwitterアカウントを持っているので、100%個人使用のアカウントにsoftbank.ne.jpのアドレスを登録してみた。

んで、お遊び用に使っているアカウントにも同じsoftbank.ne.jpのアドレスを登録してみたところ、案の定。

20140213_02

i.softbank.jpアドレスもあるからいいんだけど、お仕事用でアカウント取得したいと思った時に詰んでしまうのが怖い……。

最近はケータイメアドを不要とする人が多くなってきたってニュースを読んだばかりだけど、大丈夫なんかな。

「100%フォロー返しいたします!」的なPHPスクリプト。

ちょっと実験的に悪い遊びに手を染めましてw

Twitterでよく見る「100%フォロー返しいたします!」な機能をPHPで実装しましたので、公開してみます。
それにしても久しぶりにTwitter API絡みの記事だわ。

Pearを使ってますので、利用できないかたは自分でアップロードするなり何なりと。

続きを読む 「100%フォロー返しいたします!」的なPHPスクリプト。

【メモ】Twitter Devからの手紙「32bitを超えるユーザーIDのテストアカウントについて」

@kurrikという人からメールが来たので、
「ん?あのやまもといちろう氏?」
と思ったら、ツイッターの開発者向けのメールだったよ。

# やまもといちろう氏は@kirik。似てるよね?似てねぇかw

メールの内容は、

For a variety of reasons, the numbers used to identify accounts via Twitter’s API grow faster than the actual number of accounts in the system. Currently, user IDs fit in 32 bits—a standard size for integers on many platforms. In January, we explained [1] that the current pace of Twitter user ID allocation meant that we’d exceed 32 bits sometime this year. All developers should make sure their code will handle the switch.

To help you update your code to use handle these bigger IDs, we’ve created two test accounts with large IDs: @64Flavors [2] (ID: 4503597479886593) and @Overflow64 [3] (ID: 4503599627370241). They’ve been set up to Tweet every 10 minutes, generating experimental data for both the REST and Streaming APIs.

てな感じ。全文はTwitter Developersというブログに掲載されています。

超要約すると、

TwitterのユーザーIDが32bit超えちゃうよ、マジで。
このペースだと、たぶん今年のうちに64bitになりそうだわ。
ちょちょちょ!そんな準備してねぇよ!というオメェらのために、テストアカウント作ったぜ。
@64flavors@Overflow64ってぇのが10分毎に適当につぶやくからよ、それで適当に検証してくれよ。

てな感じ。

備忘録的なエントリーでした。

Twitter API 1.1化するにあたっての最低限の押さえどころ。

TwitterのAPIバージョンが1.0から1.1になり、いろいろ仕様が変更となりました(公式ドキュメントはこちら)。

トークン(アプリ利用ユーザー)が10万を超える場合には許可が必要!という制限がついたことで、ディベロッパーがキャンキャン吠えてますが、Webサイトでキャンペーンを行うに当たってのアプリ程度ならなんのアタリもありません( ー`дー´)キリッ

でもまぁ仕様が変わるってんで、とりあえず自前のサービスであるtwitSandboxを1.1化してみて、おおよそココをチェックしておれば大丈夫!というところをまとめてみました。

続きを読む Twitter API 1.1化するにあたっての最低限の押さえどころ。