Membuat Bot Auto Tweet Twitter dengan PHP

Pada post kali ini saya membahas membuat bot auto tweet twitter dengan PHP. Sebelumnya saya juga pernah memposting tentang update tweet twitter dengan PHP. Bot ini hanya untuk update tweet agar terjadwal.
  1. pertama buat apps pada twitter disini untuk mendapatkan consumer key, consumer secret, user token dan user secret.
  2. lalu download twitter library dari the mat harris disini kemudian ekstrak pada folder htdocs lalu rename menjadi tweetbot.
  3. kemudian buat file tweet.php, untuk isi tweet saya menggunakan array
    <?php
    
    chdir('/opt/lampp/htdocs/tweetbot/');
    
    $quote = array(1 =>'tweet pertama', 2 =>'tweet kedua', 3 =>'tweet ketiga',  );
    
    $f = fopen('data.txt', 'r');
    $i = fscanf($f, '%d');
    $b = $i[0];
    
    require 'tmhOAuth.php';
    require 'tmhUtilities.php';
    $tmhOAuth = new tmhOAuth(array(
      'consumer_key'    => '', // isi dengan consumer key
      'consumer_secret' => '', // isi dengan consumer secret
      'user_token'      => '', // isi dengan user token
      'user_secret'     => '', // isi dengan user secret
    ));
    
    $code = $tmhOAuth->request('POST', $tmhOAuth->url('1/statuses/update'), array(
      'status' => "$quote[$b]"
    ));
    
    if ($code == 200) {
      tmhUtilities::pr(json_decode($tmhOAuth->response['response']));
    } else {
      tmhUtilities::pr($tmhOAuth->response['response']);
    }
    
    $f = fopen('data.txt', 'r+' );
    $count = fread($f, filesize('data.txt'));
    rewind($f);
    $count++;
    fwrite($f, $count);
    ftruncate($f, ftell($f));
    fclose( $f );
    
  4. kemudian buat file count.txt yang isinya berguna untuk menjadi variabel pengulangan. Isinya file tersebut hanya angka satu.
  5. untuk menjalankannya saya menggunakan php cli. cara menjalankannya:
    jiskandar@cmyk:~$ php /opt/lampp/htdocs/tweetbot/tweet.php 
  6. lalu untuk menjadwalkannya bisa menggunakan crontab, contoh saya akan menjalankannya setiap satu jam sekali, mengenai crontab bisa dipelajari disini:
    * 1 * * * php /opt/lampp/htdocs/tweetbot/tweet.php 
Mungkin teman lainnya dapat mengembangkannya lagi agar menjadi lebih menarik mungkin dengan menggunakan mysql untuk isi tweetnya atau yang lainnya.

Source Code

7 comments:

  1. Gan, untuk point 5 dan 6 saya kurang ngerti, apa kita harus buat file baru? atau kita tinggal edit disalah satu file yang ada?

    ReplyDelete
  2. yang penting Script-nya di Load ya bro ?
    Kalo gitu bisa pakai setcronjob dong ?

    ReplyDelete
  3. Ada yang error bro, "Client must provide a 'status' parameter with a value."

    Kayaknya "$quote[$b]" belum benar ?
    Mohon dikoreksi ya bro, saya mau belajar ni..
    Makasih ..

    ReplyDelete
  4. bisa juga pake random quote masbero :D

    chdir('/opt/lampp/htdocs/tweetbot/');

    if(!empty($_GET['x'])){
    $status = $_GET['x'];
    } else {

    $quote = file("status.txt");
    $isine = $kata[array_rand($quote)];
    $statuse= $isine;

    }

    ReplyDelete
  5. ane masih bingung broo dilangkah 5, klo ngatur cronjobny sihh ane ngerti kok,, :D bisa ndak tutorialnya disertai gambar juga om,, makasih sebelumnya

    ReplyDelete