feature image

2018年8月16日 | ブログ記事

2018年8月16日は何の日?

この記事はtraP夏のブログリレー20188月16日(木)の記事です。


はじめに

みなさん、夏休みいかがお過ごしでしょうか。nagatechです。
僕はdアニメストア for prime videoを契約してアニメにどっぷりつかった夏休みを送っています。(申し訳程度の日記要素)


さて(唐突)、みなさんにクイズですが、2018年8月16日は何の日でしょう??

.


..


...


....


.....


答えは、TwitterのUserStreamsAPIの廃止日です。簡単ですね!!!!!


というわけで、いちBot製作者としてTwitterBot開発の今後について語ってみようかなと思います。

そもそもUserStreamsAPIとは

ざっくり言うと、「何もしなくても勝手にTLのツイートが取得できる機能」です。

開発者的にこのAPIのなにが嬉しかったかと言うと、

などの恩恵がありました。

Twitterの非公式クライアントにはこのUserStreamsAPIを使って、いちいちTL更新をしなくてもツイートが取得できるようにしていたクライアントもありました。


しかし、Twitter社はこのUserStreamsAPIを2018年8月16日に廃止することを決定しました。

本日全ての開発者の皆さんにAccount Activity APIを公開しました。なお、User StreamsとSite Streamsとともに、ダイレクトメッセージの使われていないエンドポイントは本日から3ヶ月後の2018年8月16日(米国時間)に廃止されるよう変更になります。詳細は以下ブログをご覧ください。

— Twitter Dev Japan (@TwitterDevJP) 2018年5月16日

各非公式クライアントはその対応に追われ、ストリーミング接続の機能を廃止したりサービス自体を終了することになりました。

[悲しい] [お知らせ] 現在申請作業を進めている次のバージョンの feather (v3.11.1) では Twitter が User Stream API を廃止するのに伴いそれに関連する機能の削除を行います. 😢 API が削除されるギリギリの 8/16 にリリース予定です. ご了承ください 🙇 pic.twitter.com/9WGebyhL7P

— feather公式@(13~17日は夏季休暇) (@feather_ios) 2018年8月8日

【重要なお知らせ】2018年8月16日にTwitterから開発者に提供される機能が一部廃止される事に伴い、TheWorldの機能が一部利用できなくなります。利用できなくなるのは、自動更新機能、DM、通知機能になります。ご不便をおかけしますが、ご了承ください。

— TheWorld_JP (@TheWorld_JP) 2018年8月13日

2018年8月16日に、Twitter社がUserStreamを含めた複数の機能を廃止します。https://t.co/KVOAkzHm6M

従いまして、8月16日以降はSobaChaの以下の機能がご利用頂けなくなります。予めご了承下さい。
・リアルタイム更新
・通知
・DM

— SobaChaDev (@SobaChaDev) 2018年8月13日

【再告知】8月16日(米国時間)をもってUserStreamと旧DM APIの提供が終了するため、Yukariでもこれらに依存する下記機能が使用できなくなります。
*TLのリアルタイム受信
*通知
*DMの送受信
終了後は該当する操作で通信エラーが表示されると思われます。予めご了承ください。#yukari4a

— Yukari for Android (@yukari4a) 2018年8月13日

ツイやつシリーズ終焉のお知らせ
google+に投稿しました!https://t.co/liHVIdCxVK

— ツイッターするやつ (@suruyatu) 2018年8月14日

(えっ...ツイやつのサービス提供終了するのか...僕一時期使ってたのに...)


UserStreamsAPIは非公式クライアントだけでなくUserStreamsAPIを使ったBotにも影響が及びました。

かくいう自分もいくつかのBotにUserStreamsAPIを使っていたので、Botの稼働を停止せざるを得ない状況になりました。

このままだと@_nagatea の命日は8/17

— ながてち (@syobon_titech) 2018年7月25日
(8月16日に廃止されるので8月17日以降動かなくなるという意味)

じゃあこれからどうするの

自分の作ってるBotは別にリアルタイム更新しないといけないわけではないので、8月16日以降も提供を続けるREST APIを使って無理やり1分に1回呼び出すようにして何かTLに更新があったら処理という方法を使ってBotの運用を続けていこうと思います。

しかし、UserStreamsAPIの一番の利点であった制限なしにTLを読み込むことができるという機能がなくなった影響でこれからの開発が大幅に制限されることになるのは事実です。

そこでTwitter社は2018年8月16日にUser Streams APIを廃止する代わりに新たにAccount Activity APIを提供開始することを発表しています。

Account Activity APIとは

UserStreamsAPIは何もしなくても情報が受け取れるAPIでしたが、AccountActivityAPIはある特定の操作(Activity)があったときに情報のPOST送信が行われる(Webhook)というAPIです。

ここでいう特定の操作とは、

などです。

例えば、誰かが自分のツイートをいいねすると、
「○○さんが△△というツイートをいいねした」
という情報がTwitterからこちらが指定したURLに届くといった感じです。

UserStreamsAPIと比較したメリットデメリットについてですが、

メリット

デメリット

などがあります。

特に、TLは読み込めないということから、UserStreamsAPIの代わりにはならないということでだいぶ不評のようです。


ちなみにDeveloper Accountがないと今後開発を続けていくことが困難になります。(現状Developer Accountがないと新しいアプリが作成できないため)

今後TwitterBot作りたいと思ってる人はまずはDebeloper Accountを作成することがまず最初にやることになります。

最後にDeveloper Accountの取得方法について説明したいと思います。

Devoloper Account 取得方法

まず、https://developer.twitter.com/ にアクセスします。
(ちなみに今まではhttps://apps.twitter.com/ でアプリを作成することができました。しかし、今は新しいアプリが作成できなくなっているうえに、今後使えなくなることがお知らせされてます。)

---6

こんなページに飛ぶと思います。

右上のApplyを押します。


---7

「Apply for a developer account」を押します。


0816-2

「Continue」を押します。(アカウント名は気にしないでください...)


0816-3

「I am requesting access for my own personal use」を選択したのちに自分の名前を「Japan」を選択して「Continue」


0816-4

Developer Accountを取得する目的を300単語以上の英語で記入します。

できたら下の質問のYes/Noどちらかを選択して「Continue」


0816-5

すると登録したメールアドレスにこのような認証メールが届くので、「Confirm your email」を押します。


これで申請は終了です!
しばらく待つとTwitter社から審査の結果が送られてきます!



...とはならず、いつまで待っても審査結果は届きません。

何故かと言うと、今まで作成したアプリ(Botなど)の個別の説明文を書いてないからです。
次に作成したアプリの個別の説明文を書きましょう。

先ほどのhttps://developer.twitter.com/ にアクセスします。
すると「Apply」となっていた部分が自分の名前になっているはずです。
そこを選択して「Apps」を押します。


0816-6

作成したアプリの一覧に飛びます。
(どこかで見たことあるアプリ名だなあ...)

「Details」を押します。


0816-7

詳細画面に飛びます。
「Edit」で編集しましょう。


必要事項を埋めていくと最後にアプリの説明文を記入する欄があります。

0816-8

100単語以上の英語で書く必要があります。


同じ作業を自分が持っているすべてのアプリにする必要があります。考えるだけでもつらい。


0816-9

不備があると、このようにメールが飛んできます。
要約すると、「もうちょっと詳しいことをこのメールに返信してね」ってことです。



これらの作業を繰り返していってようやくTwitter社からDeveloper Account取得の許可が下りるということです。

おわりに

とにもかくにも、この記事が投稿された2018年8月16日は良くも悪くもTwitterにとって大きな転機となる日でした。

ちなみにこんな記事を書いておいて、僕はまだDebeloper Accountを取得できていません。


世知辛いのじゃー

nagatech icon
この記事を書いた人
nagatech

ながてちです Rubyが好きです 最近興味がWeb寄り

この記事をシェア

このエントリーをはてなブックマークに追加
共有

関連する記事

2021年8月12日
CPCTFを支えたWebshell
mazrean icon mazrean
2021年9月21日
ISUCON11 traP CM制作についての小話
dan_dan icon dan_dan
2021年9月12日
本番環境のローカルデータを全部吹き飛ばしました
temma icon temma
2021年9月8日
五度圏⊃自然音階って…コト!?
kotoki_bis icon kotoki_bis
2021年9月3日
部活青春系エロゲで涙腺崩壊した話
mera icon mera
2021年8月30日
【夏休み自由研究】実例で学ぶ画像処理【Python】
d_etteiu8383 icon d_etteiu8383
記事一覧 タグ一覧 Google アナリティクスについて