ツイッターAPIのベーシック認証は2010/6/30で終了するそうです。
ベーシック認証を使っているbotやその他アプリは、
OAuth認証
に切り替える必要があります!
◇
本件は私にも火の粉がかかっているので避けて通れません。
かといってOAuthが何かはっきり知らないし、やったこともないので、最初の一歩として「にゃーにゃーにゃー」とツイートするだけのbotを作って手順をまとめてみました。新しい言語を学ぶときの Hello World みたいなものですねー。
◇◇◇ 前提環境 ◇◇◇
(1)
PHP5以上・・・下記は確認方法
$ php --version
PHP 5.2.11 (cli) (built: Sep 21 2009 14:49:09)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies |
(2)
curlがPHPで使えること・・・下記は確認方法
$ php -i | grep cURL
cURL support => enabled
cURL Information => libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 |
◇◇◇ 手順 ◇◇◇
(1) bot用のアカウントでツイッターにログイン
(2) http://dev.twitter.com/apps/[*1] にアクセス
(3) 「新しいアプリケーションを登録する」をクリック
(3-1) 最低下記3つを入力
・
アプリケーション名・・・・・例えば「
にゃにゃにゃー」
・
アプリケーションの説明
・
アプリケーションのウェブサイトURL
(3-2) アプリケーションの種類を選択
今回はbotなので、「
クライアントアプリケーション」を選択
(3-3) Default Access typeを選択
今回は投稿botなので「
Read & Write」を選択
(4) 下記4種類のキーの値を控える
・ Consumer key
・ Consumer secret
・ Access Token (oauth_token)
・ Access Token Secret (oauth_token_secret)
(5) PHP用のOAuthプログラムを下記からダウンロード
http://github.com/abraham/twitteroauth/downloads
[*2] ※現時点で最新の 0.2.0-beta3 をダウンロードして解凍しておく
(6) PHPのコードを書く ※今回は
nyabot.phpという名前で保存
<?php
// ライブラリインクルード
require_once("twitteroauth.php");
// キー値の設定 ※手順(4)で控えた値を書く
$consumer_key = "内緒♪";
$consumer_secret = "内緒♪";
$access_token = "内緒♪";
$access_token_secret = "内緒♪";
// OAuthオブジェクト生成 (1行で)
$to = new TwitterOAuth($consumer_key,$consumer_secret,$access_token,$access_token_secret);
// メッセージ設定
$message = "にゃーにゃーにゃー " . date("H時i分s秒", time());
// ツイート実行 (1行で)
$to->OAuthRequest("https://twitter.com/statuses/update.xml","POST",array("status"=>"' . $message . '"));
?> |
(7) ファイルの配置
同一ディレクトリ内に下記3つのファイルを置きます
・ OAuth.php ・・・・・・・・・・手順5で取得したファイル
・ twitteroauth.php ・・・・・・手順5で取得したファイル
・ nyabot.php ・・・・・・・・・・手順6で作ったファイル
(8) botの実行!(テストとしてとりあえず手動で)
(9) ツイッターの画面で確認
※アプリケーション名に注目!ベーシック認証でのbotだと「APIから」というふうに固定でしたが、OAuth認証でのbotだとこの部分を好きなのにできます。