XML

  <function name="rpcf_get_dhs_report" id="0x5015"> 
    <input> 
      <integer name="user_id" /> 
      <integer name="account_id" /> 
      <integer name="apid" /> 
      <integer name="t_start" /> 
      <integer name="t_end" /> 
    </input> 
    <output> 
      <integer name="dhs_log_size" /> 
      <for name="i" from="0" count="dhs_log_size"> 
        <integer name="id" array_index="i" /> 
        <integer name="account_id" array_index="i" /> 
        <integer name="slink_id" array_index="i" /> 
        <integer name="recv_date" array_index="i" /> 
        <integer name="last_update_date" array_index="i" /> 
        <string name="Called_Station_Id" array_index="i" /> 
        <string name="Calling_Station_Id" array_index="i" /> 
        <integer name="framed_ip" array_index="i" /> 
        <integer name="nas_port" array_index="i" /> 
        <string name="acct_session_id" array_index="i" /> 
        <integer name="nas_port_type" array_index="i" /> 
        <string name="uname" array_index="i" /> 
        <integer name="service_type" array_index="i" /> 
        <integer name="framed_protocol" array_index="i" /> 
        <integer name="nas_ip" array_index="i" /> 
        <string name="nas_id" array_index="i" /> 
        <integer name="acct_status_type" array_index="i" /> 
        <long name="acct_inp_pack" array_index="i" /> 
        <long name="acct_inp_oct" array_index="i" /> 
        <long name="acct_inp_giga" array_index="i" /> 
        <long name="acct_out_pack" array_index="i" /> 
        <long name="acct_out_oct" array_index="i" /> 
        <long name="acct_out_giga" array_index="i" /> 
        <long name="acct_sess_time" array_index="i" /> 
        <integer name="acct_term_cause" array_index="i" /> 
        <double name="total_cost" array_index="i" /> 
      </for> 
    </output> 
  </function>

PHP

   function rpcf_get_dhs_report($param) 
   { // 0x5015 
      $ret=array(); 
      if (!$this->connection->urfa_call(0x5015)) 
      { 
          print "Error calling function ". __FUNCTION__ ."\n"; 
          return FALSE; 
      } 
      $packet = $this->connection->getPacket(); 
      $packet->DataSetInt( $param['user_id'] ); 
      $packet->DataSetInt( $param['account_id'] ); 
      $packet->DataSetInt( $param['apid'] ); 
      $packet->DataSetInt( $param['t_start'] ); 
      $packet->DataSetInt( $param['t_end'] ); 
      $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++ ) 
         { 
             $ari = array();
             //$x = $this->connection->urfa_get_data(); //убрал, т.к. скрипт входил в бесконечный цикл
             $ari['id'] = $x->DataGetInt(); 
             $ari['account_id'] = $x->DataGetInt(); 
             $ari['slink_id'] = $x->DataGetInt(); 
             $ari['recv_date'] = $x->DataGetInt(); 
             $ari['last_update_date'] = $x->DataGetInt(); 
             $ari['Called_Station_Id'] = $x->DataGetString(); 
             $ari['Calling_Station_Id'] = $x->DataGetString(); 
             $ari['framed_ip'] = $x->DataGetIPAddress(); 
             $ari['nas_port'] = $x->DataGetInt(); 
             $ari['acct_session_id'] = $x->DataGetString(); 
             $ari['nas_port_type'] = $x->DataGetInt(); 
             $ari['uname'] = $x->DataGetString(); 
             $ari['service_type'] = $x->DataGetInt(); 
             $ari['framed_protocol'] = $x->DataGetInt(); 
             $ari['nas_ip'] = $x->DataGetIPAddress(); 
             $ari['nas_id'] = $x->DataGetString(); 
             $ari['acct_status_type'] = $x->DataGetInt(); 
             $ari['acct_inp_pack'] = $x->DataGetLong(); 
             $ari['acct_inp_oct'] = $x->DataGetLong(); 
             $ari['acct_inp_giga'] = $x->DataGetLong(); 
             $ari['acct_out_pack'] = $x->DataGetLong(); 
             $ari['acct_out_oct'] = $x->DataGetLong(); 
             $ari['acct_out_giga'] = $x->DataGetLong(); 
             $ari['acct_sess_time'] = $x->DataGetLong(); 
             $ari['acct_term_cause'] = $x->DataGetInt(); 
             $ari['total_cost'] = $x->DataGetDouble(); 
             $ret['dhs_log'][] = $ari; 
         } 
      } 
      return $ret; 
   }
 
/home/u18456/wiki.flintnet.ru/www/data/pages/function_admin/function_name_rpcf_get_dhs_report_id_0x5015.txt · Последние изменения: 2013/05/06 10:10 От 194.28.212.97
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki