==== XML ==== ==== PHP ==== function rpcf_user5_dhs_report($start_date, $end_date) { //-0x4017 $ret=array(); if (!$this->connection->urfa_call(-0x4017)) { print "Error calling function ". __FUNCTION__ ."\n"; return FALSE; } $packet = $this->connection->getPacket(); $packet->DataSetInt($start_date); $packet->DataSetInt($end_date); $this->connection->urfa_send_param($packet); if ($x = $this->connection->urfa_get_data()) { $ret['dhs_log_size'] = $x->DataGetInt(); for ($i=0; $i<$ret['dhs_log_size']; $i++) { $x = $this->connection->urfa_get_data(); $session['id'] = $x->DataGetInt(); $session['account_id'] = $x->DataGetInt(); $session['slink_id'] = $x->DataGetInt(); $session['recv_date'] = $x->DataGetInt(); $session['last_update_date'] = $x->DataGetInt(); $session['framed_ip'] = $x->DataGetIPAddress(); $session['nas_port'] = $x->DataGetInt(); $session['acct_session_id'] = $x->DataGetString(); $session['nas_port_type'] = $x->DataGetInt(); $session['uname'] = $x->DataGetString(); $session['service_type'] = $x->DataGetInt(); $session['framed_protocol'] = $x->DataGetInt(); $session['nas_ip'] = $x->DataGetIPAddress(); $session['nas_id'] = $x->DataGetString(); $session['acct_status_type'] = $x->DataGetInt(); $session['acct_inp_pack'] = $x->DataGetLong(); $session['acct_inp_oct'] = $x->DataGetLong(); $session['acct_out_pack'] = $x->DataGetLong(); $session['acct_out_oct'] = $x->DataGetLong(); $session['acct_sess_time'] = $x->DataGetLong(); $session['dhs_sessions_detail_size'] = $x->DataGetInt(); $x = $this->connection->urfa_get_data(); for($j=0;$j<$session['dhs_sessions_detail_size'];$j++) { $session['dhs_sessions_detail_list'][$j]['trange_id'] = $x->DataGetInt(); $session['dhs_sessions_detail_list'][$j]['account_id'] = $x->DataGetInt(); $session['dhs_sessions_detail_list'][$j]['duration'] = $x->DataGetLong(); $session['dhs_sessions_detail_list'][$j]['base_cost'] = $x->DataGetDouble(); $session['dhs_sessions_detail_list'][$j]['sum_cost'] = $x->DataGetDouble(); } $ret['sessions'][]=$session; } } return $ret; }