ぜんぶなんとかなる

ふしみの雑文

pearのServices_Twitterを用いて、受け取ったDMの内容をtweetして、あるタグがついたtweetをretweetするスクリプト

5分くらいで書いた

<?php
require_once("HTTP/OAuth.php");
require_once("HTTP/OAuth/Consumer.php");
require_once("Services/Twitter.php");

define("CONSUMER_KEY","");
define("CONSUMER_SECRET","");

define("ACCESS_TOKEN","");
define("ACCESS_TOKEN_SECRET","");

$oauth   = new HTTP_OAuth_Consumer(CONSUMER_KEY,CONSUMER_SECRET,ACCESS_TOKEN,ACCESS_TOKEN_SECRET);
$twitter = new Services_Twitter();
$twitter->setOAuth($oauth);

//ダイレクトメールを取得
$DMs = $twitter->direct_messages();

foreach($DMs as $DM){
    $twitter->statuses->update($DM->text);
    $twitter->direct_messages->destroy($DM->id);
}

if(file_exists('since_id')){
    $maxID = file_get_contents('since_id');
}else{
    $maxID = 0;
}

$response = $twitter->search(array("q" => "#kenbunden","since_id" => $maxID));

foreach ($response->results as $result) {
    //RTは除く
    if(preg_match('/^RT/',$result->text) == 0){
        $twitter->statuses->retweet($result->id);
    }
    $maxID = max($result->id,$maxID);
}

file_put_contents('since_id',$maxID);