Наконец то дошли руки перевести свое хозяйство на новую urfa_get_data().
Основная масса функций отлично заработала, но есть и затыки:
вызываю функцию
Код: Выделить всё
$start_date = strtotime("01.07.2009");
$end_date = strtotime("01.08.2009");
$report = $urfa_user5->rpcf_user5_traffic_report($start_date, $end_date); //-0x4012
print_r($report);
после долгого ожидания получаю ошибку
Код: Выделить всё
Fatal error: Uncaught exception 'Exception' with message 'Error code 35' in /var/www/html/stat/urfa/URFAClient_Packet.php:27
Stack trace:
#0 /var/www/html/stat/urfa/URFAClient_Connection.php(125): URFAClient_Packet->read()
#1 /var/www/html/stat/urfa/URFAClient_User5.php(86): URFAClient_Connection->urfa_get_data()
#2 /var/www/html/stat/urfa/index.php(52): URFAClient_User5->rpcf_user5_traffic_report(1247947200, 1249329600)
#3 {main}
thrown in /var/www/html/stat/urfa/URFAClient_Packet.php on line 27
код самой функции идентичен
http://wiki.flintnet.ru/doku.php?id=fun ... id_-0x4009
urfa_get_data() :
Код: Выделить всё
function urfa_get_data() {
$packet = $this->getPacket();
$packet->clean();
while(true) {
if (!feof($this->socket)) {
$packet->read();
if ($packet->AttrGetInt(4))
break;
}
}
if (count($packet->data)==0)
return FALSE;
return $packet;
}
ошибку выдает здесь:
Код: Выделить всё
function read()
{
$this->code = ord(fread($this->sock, 1));
if ($this->version != ord(fread($this->sock, 1))) {
[b] throw new Exception("Error code " . ord(fread($this->sock, 1)));[/b]
} else {
list(, $this->len) = unpack("n", fread($this->sock, 2));
$this->parse_packet_data();
}
}
В логах билинга все нормально:
Код: Выделить всё
Info : Aug 04 21:20:45 RPCConn: Card user <kayfolom@127.0.0.1> is connecting
Info : Aug 04 21:20:45 RPCConn<kayfolom@127.0.0.1>: Access granted to <kayfolom@127.0.0.1> (UID: 1)
?Debug : Aug 04 21:20:45 RPCConn<kayfolom@127.0.0.1>: Call: 0xffffbff7 (__rpcs_user5_traffic_report)
?Debug : Aug 04 21:20:45 RPCConn<kayfolom@127.0.0.1>: Real Call: 0xffffbff7 (__rpcs_user5_traffic_report)
?Debug : Aug 04 21:21:57 RPCConn<kayfolom@127.0.0.1>: Call 0xffffbff7 (__rpcs_user5_traffic_report) finished...
?Debug : Aug 04 21:21:57 RPCConn<kayfolom@127.0.0.1>: Stream cleared
Warn : Aug 04 21:21:57 RPCConn<kayfolom@127.0.0.1>: Session closed
?Debug : Aug 04 21:21:57 RPCConn<kayfolom@127.0.0.1>: Session stored for UID 1 from <127.0.0.1>
?Debug : Aug 04 21:21:57 RPCConn<kayfolom@127.0.0.1>: Session closed...
Причем php продолжает висеть еще минуту после появления в логах Call 0xffffbff7 (__rpcs_user5_traffic_report) finished...
Что может быть?