[PHP] статус в ICQ

Класс для проверки статуса ICQ номера (запросы авторизации или удаления номера из КЛ не происходят).

<?php 
 
class ICQ { 
    private $_crc = array( 
        '253889085' => 'offline',  
        '3112354022' => 'offline', 
        '1182613274' => 'offline', 
        '311708376' => 'online', 
        '3117083760' => 'online', 
        '1177883536' => 'online', 
        '253889085' => 'invis', 
        '1182613274' => 'invis' 
    ); 
 
    //CRCs valid as long as the redirect-page does not change 
 
    private function getCrc($url) { 
        $ch = curl_init(); 
        curl_setopt ($ch, CURLOPT_URL, $url); 
        curl_setopt ($ch, CURLOPT_HEADER, 0); 
        ob_start(); 
        curl_exec ($ch); 
        curl_close ($ch); 
        $cache = ob_get_contents(); 
        ob_end_clean(); 
        return (string)abs(crc32($cache)); 
    } 
 
    public function status($number) { 
        $check = $this->getCrc( 'http://status.icq.com/online.gif?icq=' . $number . '&img=5'); 
        //print ($check); 
        if (in_array($check, array_keys($this->_crc))) { 
            return $this->_crc[$check]; 
        } 
        return false; 
    } 
} 
 
?>

Пример использования:

<?PHP
$icq = new ICQ(); 
$status = $icq->status($_GET['uin']); 
?>

, ,

Оставить комментарий

Top ↑ | Main page | Back