マンダリンオレンジ in hatenablog

esujiがアニメ・漫画について書くブログ。はてなダイアリーから引っ越してきました

修造bot(@SHUZO_M)の中身-ランダムに定形文をPOST編

修造bot(http://twitter.com/SHUZO_M)は

  1. 毎時30分になったらランダムで定形文をPOST
  2. Replyをもらったら発言内容を沿えてごちゃ混ぜな文章を返す

という2つの機能を持っています。

ここではまず1.の機能についてご説明します。
プログラムの内容は

  1. メッセージファイルを読み込む
  2. ランダムでメッセージを選択
  3. Twitterに選択したメッセージをPOSTする

となります。
制御として

  • 1時間に1回決まった時間に行う

という条件をつけます。
では、以下がコードになります。

<html>
<meta http-equiv="Refresh" content="59">
<?php
require_once 'HTTP/Client.php';
$username = 'SHUZO_M';
$password = '(省略)';

if(date(i) == '30'){ //毎時30分になったら実行する

	//メッセージを読み込み
	include'shuzo_mes.php';

	//メッセージをランダムで選択
	mt_srand((double) microtime() * 1000000);
	$status = $mes[mt_rand(0, count($mes)-1)];
	print $status;
	
	//メッセージをTwitterにPOST
	$auth = array('Authorization' => 'Basic '.base64_encode($username.':'.$password));
	$client =& new HTTP_Client(null, $auth);
	$http_status = $client->post("http://twitter.com/statuses/update.xml", array('status' => $status));
}
?>
</html>

次にメッセージを書いておくshuzo_mes.phpを作ります

<?php
$mes = array(
	"夢を持ってますか〜?そう!掴んでけ!Good Luck!",
	"はあーーーーーーー。焦らない焦らない。一休み一休み・・・・・・。",
	"なに鼻の下伸ばしてんだ?伸ばすのは、アキレス腱だけにしとけ!"
);
?>

実際はもっとありますが感じを掴んでもらうために3つだけ紹介。

"〜〜",

を追加していくことで発言のバリエーションを増やせます。
配列で扱うのは、個人的にそこそこ整理がしやすく、プログラムで扱いやすい形だからです。


久しぶりにブログを書いたらなんとも疲れました。
Replyの対応についてはまた次回に、私の、気力が、あれば・・・