Speedy Alert

Koneksi Telkom Speedy dipengaruhi ketinggian laut? hmm, nggak ngerti deh bagaimana hubungannya. Tapi itu yang dibilang petugas Telkom saat menginstal Telkom Speedy di rumah saya kemarin. Memang jarak rumah cuma beberapa ratus meter dari pinggir laut. Tapi sejauh ini nggak ada masalah tuh. Dan cukup mengejutkan bagi saya, ternyata koneksinya lumayan cepat, hehe.

Eniwey, kalau anda seperti saya yang nggak pernah berhasil pake Speedy Alert, skrip berikut mungkin berguna untuk memantau penggunaan Speedy. Oya, pakai Zend Framework ya.

function getSpeedyUsage($username,$password)
{
  $url = "http://portal.telkomspeedy.com/index.php?flash=-1";

  $client = new Zend_Http_Client($url, array(
    'maxredirects' => 0,
    'timeout'      => 30));

  $client->setParameterPost(array(
    'username'       => $username,
    'password'      => $password,
    'login'             => '    Login    '
  ));

  $response = $client->request('POST');
  $body = $response->getBody();

  $html = str_replace("\n","",$body);
  preg_match_all("|<td class=\"data\"[^>]+>(.*)</td>|U",$html,$regs);

  $info = array();
  $info['pemakaian']['persen'] 	= $regs[1][1];
  $info['pemakaian']['besar'] 	= $regs[1][3];
  $info['limit'] = $regs[1][4];
  $info['kelebihan'] = $regs[1][5];

  return $info;
}

Penggunaannya seperti berikut:

<?php
require_once 'Zend/Http/Client.php';

/************** ubah di sini **************/
$username = "XXXXXXXXXXXX@telkom.net";
$password = "hewhomustnotbenamed";
/******************************************/

$info = getSpeedyUsage($username,$password);

print_r($info);

?>

Keluarannya kurang lebih seperti ini:

Array
(
    [pemakaian] => Array
        (
            [persen] => 17,93%
            [besar] => 179,28 MB
        )

    [limit] => 1.000 MB
    [kelebihan] => 0,00 MB
)