新しくまとめてみよう

改めてソースだけをまとめてみようと思います。
確かに見にくい。

動かし方とかは変わらないので、それがわからない人は過去の記事を見ていただくということで。


定期ポストソース

= '30') :
$plist = $mes['rand2'];//おやすみ定期ポスト
break;

case ($now_g == '7')&&($now_i <= '30') :
$plist = $mes['rand1'];//おはよう定期ポスト
break;

default :
$plist = $mes['rand'];//それ以外
break;
};


if(! empty($plist)){
$key = array_rand($plist);
$post = $plist[$key];
}


//Service_Twitter設定
require_once "Twitter.phpのフルパス";


$user = 'あかうんと';
$pass = 'ぱすわーど';
$st =& new Services_Twitter($user,$pass);


if(! $st->setUpdate($post) ){
die('ERROR');//postされなかったときERRORをだす。
}

?>

よくご質問があるのですが、くれぐれも上記のソースをコピペして動かす時は
朝7時から夜中12時までにやってください。
それ以外の時間にやっても、たとえソースが完璧だとしてもERRORになってしまいますので。



replyソース

= $j) {
$var = $XML->status[$i]->text;
$com = ereg_replace("\@$username", "", $var);


$reply_name = $XML->status[$i]->user->screen_name;
$name = $XML->status[$i]->user->name;
$message = serif($reply_name,$name,$com);


tweet($message ,$username,$password);


$i--;
}


$string = $XML->status[0]->id;


if(!empty($string)){
$dat = (string)$string;
file_put_contents($filename,$dat,LOCK_EX);
}


function serif($reply_name,$name,$com){
$kiss=array("ちゅー",
"え、".$name."さんちゅーしてほしいの?ちゅっ");//これを最近発見しましたwびっくり!


$reply_name = "@$reply_name";


if(! empty($reply_name)){
if(stristr($com, "もちめり")){
$return =$reply_name.""." キャベツあげてえええええええ";
}


else if(stristr($com, "ちゅ")){
if(stristr($com, "首")){
$return =$reply_name." "."や〜くすぐったい><";}

else{
$key = array_rand($kiss);
$post = $kiss[$key];
$return =$reply_name." ".$post;}
}



else{
$mes = array("");//反応語以外スルー
$return = $mes;
}
return $return;
}
}


function tweet($message,$username,$password)
{
$message =urlencode($message);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://twitter.com/statuses/update.xml');
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "status=$message ");
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
$buffer = curl_exec($ch);
curl_close($ch);
}


?>

反応語以外スルーはエラーをわざと出させてスルーさせるようにしてるので、
動かすと反応語をいれてないリプライの数エラーが出ると思います。
反応語以外スルーさせたくない、またはエラーが気になるという方は

else{
$mes = array("");//反応語以外スルー
$return = $mes;
}

else{
$return =$reply_name." ".$name."よく分からない";
}

にするといいでしょう。


これでいいかな?