Copy <?php
require(__DIR__ . DIRECTORY_SEPARATOR . 'WebserviceClient.php');
$host = 'http://SEUIP/webservice/v1';
$token = 'SEUTOKEN';
$selfSigned = false;
$api = new IXCsoft\WebserviceClient($host, $token, $selfSigned);
// ---------------------------------------------------------------------------------
$params01 = array(
'qtype' => 'radpop_radio.id',//campo de filtro
'query' => '',//valor para consultar
'oper' => '=',//operador da consulta
'page' => '1',//página a ser mostrada
'rp' => '20',//quantidade de registros por página
'sortname' => 'radpop_radio.id',//campo para ordenar a consulta
'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente)
);
$api->get('radpop_radio', $params01);
$retorno = $api->getRespostaConteudo(true);// false para json | true para array
// Nessa requisição irá ser feito a consulta de todas as OLTs cadastradas
$id_olt[1] = $retorno["registros"][1]["id"];//salva o id da OLT que está na posição 1 do array
echo "<pre>";
var_dump("ID da OLT: ". $id_olt[1])."\n";
// ---------------------------------------------------------------------------------
$params02 = array(
'grid_param' => json_encode(array(array('TB' => 'id_olt', 'OP' => '=', 'P' => $id_olt[1])
)));
$api->get('fh_onu_nao_autorizadas', $params02);
$retorno_onu = $api->getRespostaConteudo(true);// false para json | true para array
//Na requisição acima é feito a consulta de ONUs desautorizadas na OLT que gravamos o ID na requsição anterior
$onu_auth[0] = $retorno_onu["rows"][0]["id"]; //Salva a String com o conteudo que irá ser passada na proxima requisição
echo "<pre>";
var_dump("Conteudo: ". $onu_auth[0])."\n";
// ---------------------------------------------------------------------------------
$params03 = array(
'get_id' => $onu_auth[0]
);
$api->post('fh_onu_nao_autorizadas_22396', $params03);//chama o botao que cria o registro de cliente fibra pré configurado, com MAC, ponid, etc da ONU
$retorno_auth = $api->getRespostaConteudo(true);// false para json | true para array
echo "<pre>";
var_dump($retorno_auth); //Imprime o retorno
$id_clientefibra = $retorno_auth["id"]; //guarda o ID do cliente fibra que foi criado
echo "<pre>";
var_dump("ID Registro: ". $id_clientefibra)."\n";
// ---------------------------------------------------------------------------------
//Nessa requisição irá listar os scripts
$params04 = array(
'qtype' => 'radpop_radio_cliente_fibra_perfil.id',//campo de filtro
'query' => '',//valor para consultar
'oper' => '=',//operador da consulta
'page' => '1',//página a ser mostrada
'rp' => '20',//quantidade de registros por página
'sortname' => 'radpop_radio_cliente_fibra_perfil.id',//campo para ordenar a consulta
'sortorder' => 'desc'//ordenação (asc= crescente | desc=decrescente)
);
$api->get('radpop_radio_cliente_fibra_perfil', $params04);
$retorno_perfil = $api->getRespostaConteudo(true);// false para json | true para array
$id_perfil[1] = $retorno_perfil["registros"][1]["id"];//salva o script que está na posição 1 do array
$comando_perfil[1] = $retorno_perfil["registros"][1]["comando"];
echo "<pre>";
var_dump("ID do Perfil: ". $id_perfil[1])."\n";
var_dump("Comando: ". $comando_perfil[1])."\n";
// ---------------------------------------------------------------------------------
//nessa requisição editamos o cliente fibra com todas as informações que são necessárias
$params05 = array(
'id_projeto' => '1',
'id_caixa_ftth' => '1',
'porta_ftth' => '3',
'id_transmissor' => '1',
'id_hardware' => '0',
'id_contrato' => '5',
'id_login' => '4 ',
'id_ramal' => '',
'nome' => 'TESTE_API',
'mac' => '4857544382A6526A',
'id_perfil' => $id_perfil[1],
'ponid' => '0/8/0',
'vlan' => '800',
'onu_numero' => '',
'gemport' => '',
'service_port' => '0',
'comandos' => $comando_perfil[1],
'vlan_pppoe' => '',
'vlan_dhcp' => '',
'vlan_tr69' => '',
'vlan_iptv' => '',
'vlan_voip' => '',
'vlan_outros' => '',
'ip_gerencia' => '',
'login_onu_cliente' => 'admin',
'senha_onu_cliente' => 'admin',
'porta_telnet_onu_cliente' => '23',
'perfil_onu_cliente' => '',
'script_onu_cliente' => '',
'onu_tipo' => 'HWTC',
'slotno' => '8',
'ponno' => '0',
'tipo_autenticacao' => 'MAC',
'versao' => '',
'sinal_rx' => '',
'sinal_tx' => '',
'temperatura' => '',
'voltagem' => '',
'data_sinal' => '',
'senorid' => '',
'distancia_onu' => '',
'id_onu_unms' => '',
'endereco_padrao_cliente' => 'S',
'condominio_cliente' => '',
'id_condominio' => '',
'bloco_cliente' => '',
'bloco' => '',
'apartamento_cliente' => '',
'apartamento' => '',
'cep_cliente' => '',
'cep' => '',
'endereco_cliente' => '',
'endereco' => '',
'numero_cliente' => '',
'numero' => '',
'bairro_cliente' => '',
'bairro' => '',
'cidade_cliente' => '',
'cidade' => '',
'referencia_cliente' => '',
'referencia' => '',
'complemento_cliente' => '',
'complemento' => '',
'latitude' => '',
'longitude' => ''
);
$id_reg = $id_clientefibra;
$api->put('radpop_radio_cliente_fibra', $params05, $id_reg);
$retorno = $api->getRespostaConteudo(true);// false para json | true para array
echo "<pre>";
var_dump($retorno); //Imprime o retorno
// ---------------------------------------------------------------------------------
//nessa requisição com tudo já pronto, só chamamos o botão de gravar no dispositivo passando o ID do cliente fibra desejado.
$params06 = array(
'id' => $id_reg
);
$api->post('botao_gravar_dispositivo_22408', $params06);
$retorno_autorizacao = $api->getRespostaConteudo(false);// false para json | true para array
echo "<pre>";
var_dump($retorno_autorizacao); //Imprime o retorno