/* * Parametros necessarios para manter a paginação. */ $param = sprintf('&numRamal=%s&pgn=%s&bloco=%s&pg=%s', $_REQUEST['numRamal'], $_REQUEST['pgn'], $_REQUEST['bloco'], $_REQUEST['pg']); define("DISPOSITIVO_ETHMF", "ethmf"); define("DISPOSITIVO_ETH", "eth"); define("DISPOSITIVO_PLACA", "plc"); define("SINALIZACAO_ISDN", "isdn"); define("SINALIZACAO_R2", "r2"); define("SINALIZACAO_FXS", "fxs"); define("SINALIZACAO_FXO", "fxo"); $disabled = ''; $acao = $_REQUEST["acao"]; $acao2 = $_REQUEST["acao2"]; $salvar = isset($_POST['Submit']); $insere = ($acao == 'inseri'); $msg = ''; $ethmf = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'dynamic_cascata', 'framing', 'signalling', 'mfcr2_variant', 'timing', 'lbo', 'spannum', 'coding', 'crc4', 'mfcr2_get_ani_first', 'mfcr2_max_ani', 'mfcr2_max_dnis', 'mfcr2_category', 'mfcr2_allow_collect_calls', 'mfcr2_double_answer', 'echocancel', 'echocancelwhenbridged', 'echotraining', 'echocanceller', 'context', 'channel', 'cas', 'dchan', 'group', 'txgain', 'rxgain', 'loadzone', 'defaultzone', 'param_opc' ); $fields[DISPOSITIVO_ETHMF]['r2'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'timing', 'echocancel', 'echocancelwhenbridged', 'echotraining', 'echocanceller', 'channel', 'coding', 'cas', 'alaw', 'dchan'); $fields[DISPOSITIVO_ETHMF]['isdn'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'timing', 'coding', 'echocancel', 'echocancelwhenbridged', 'echotraining', 'echocanceller', 'channel', 'echocanceller', 'bchan', 'alaw', 'dchan'); $fields[DISPOSITIVO_ETHMF]['fxs'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'dynamic_cascata', 'echocanceller', 'channel', 'fxoks', 'fxsks'); $fields[DISPOSITIVO_ETHMF]['fxo'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'dynamic_cascata', 'echocanceller', 'fxsks'); $fields[DISPOSITIVO_ETH]['r2'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_canais', 'dynamic_cascata', 'crc4', 'echocancel', 'echocancelwhenbridged', 'echotraining', 'echocanceller', 'channel', 'coding', 'cas', 'dchan'); $fields[DISPOSITIVO_ETH]['isdn'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_canais', 'dynamic_cascata', 'echocancel', 'echocancelwhenbridged', 'echotraining', 'echocanceller', 'channel', 'echocanceller', 'bchan', 'alaw', 'dchan'); $fields[DISPOSITIVO_ETH]['fxs'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_canais', 'dynamic_cascata', 'echocanceller', 'channel', 'fxoks', 'fxsks'); $fields[DISPOSITIVO_ETH]['fxo'] = array('interface', 'sinalizacao_tipo', 'nome', 'dynamic_rede', 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'dynamic_cascata', 'echocanceller', 'fxsks'); $fields[DISPOSITIVO_PLACA]['r2'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'echocancel', 'echocancelwhenbridged', 'lbo', 'echotraining', 'echocanceller', 'channel', 'spannum', 'coding', 'crc4', 'cas', 'dchan'); $fields[DISPOSITIVO_PLACA]['isdn'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'coding', 'spannum', 'crc4', 'echocancel', 'echocancelwhenbridged', 'lbo', 'echotraining', 'echocanceller', 'channel', 'echocanceller', 'bchan', 'alaw', 'dchan'); $fields[DISPOSITIVO_PLACA]['fxs'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'echocanceller', 'channel', 'fxoks', 'fxsks'); $fields[DISPOSITIVO_PLACA]['fxo'] = array('interface', 'sinalizacao_tipo', 'nome', 'timing', 'echocanceller', 'channel', 'echocancel', 'fxsks', 'fxoks', 'dynamic_canais'); $notUpdate = array('interface', 'sinalizacao_tipo', 'nome'); $tipoDisp = isset($_POST['interface']) ? strtolower($_POST['interface']) : DISPOSITIVO_ETHMF; $sinalizacao_tipo = isset($_POST['sinalizacao_tipo']) ? strtolower($_POST['sinalizacao_tipo']) : SINALIZACAO_R2; if (IsPostBack() && $salvar) { $id = $_POST["id"]; $nome = trim($_POST["nome"]); $chn = trim($_POST["channel"]); if ($nome == false) { $msg = "Informe um nome para o cadastro!"; } else if (!$chn) { $msg = "Informe um \"Canal de Comunicação\" para o cadastro!"; } else { $arSql = $fields[$tipoDisp][$sinalizacao_tipo]; /* * Captura os valores para a query. */ $arQuery = array(); foreach ($_POST as $key => $value) { if (array_search($key, $arSql) !== false) { $arQuery[$key] = $value; } } /* * Prepara a query para insersão ou atualização. */ $fields = ''; $values = ''; if ($acao == "inseri") { $arQuery['tipo_cadastro'] = 'D'; foreach ($arQuery as $key => $value) { $fields .= !$fields ? "\"$key\"" : ",\"$key\""; $values .= !$values ? QuotedStr($value) : ("," . QuotedStr($value)); } $query = "insert into pbx_troncos_dahdi($fields)values($values)"; } if ($acao == "edita") { foreach ($arQuery as $key => $value) { if (array_search($key, $notUpdate) === false) { $fields .= !$fields ? sprintf("\"%s\" = %s", $key, QuotedStr($value)) : sprintf(",\n\"%s\" = %s", $key, QuotedStr($value)); } } $query = "update pbx_troncos_dahdi set $fields where id = '$id'"; } pg_query($dbcon, $query); //echo $query; //exit; GeraDahdi($dbcon, 1); if (!$msg) { echo ""; } } } if ($msg) { echo ""; $dados = array(); foreach ($_POST as $key => $value) $dados[$key] = $value; } else if (IsPostBack() && !$salvar) { $dados = array(); foreach ($_POST as $key => $value) $dados[$key] = $value; if ($sinalizacao_tipo == SINALIZACAO_R2) { $dados['crc4'] = 'no'; } $dados['dynamic_cascata'] = '1'; } else { if ($acao == "edita") { $id = $_GET["id"]; $query = "SELECT * FROM pbx_troncos_dahdi where tipo_cadastro = 'D' and id=$id"; $result = pg_query($dbcon, $query); $dados = pg_fetch_array($result); $dados["tipoDisp"] = $dados["interface"]; //$dados["sinalizacao_tipo"] = $dados["sinalizacao_tipo"]; $disabled = 'disabled="disabled"'; } else { $query = "SELECT * FROM pbx_troncos_dahdi where 1=2"; $result = pg_query($dbcon, $query); $dados = pg_fetch_array($result); $dados['timing'] = 1; $dados['crc4'] = ($sinalizacao_tipo == SINALIZACAO_R2) ? 'no' : 'crc4'; $dados['dynamic_cascata'] = '1'; } } foreach ($dados as $key => $value) $GLOBALS[$key] = $value; ?>
CADASTRO DE DISPOSITIVO DAHDI
Interface
\n"; echo "
\n"; echo "
\n"; } ?>
>
>ETH
>ETHMF
>PLACA
Sinalização
>
>R2
>ISDN
Interface Analógica"; } if ($tipoDisp == DISPOSITIVO_PLACA) { if ($sinalizacao_tipo == 'fxo') $sel = 'selected="selected"'; echo "
Interface Analógica
"; } ?>
Nome
/>
Interface Rede
Mac
Span
Qtde Canais
Cascata
>Master
>Slave
Canais/Troncos
Canais/Ramais
Framing
>cas
>ccs
Signalling
Mfcr2 Variant
Fonte de Sincronismo
>Externo
>Primário
>Secundário
>Terciário
>Quaternário
Line Built-Out
>0: 0 db (CSU) / 0-133 feet (DSX-1)
>1: 133-266 feet (DSX-1)
>2: 266-399 feet (DSX-1)
>3: 399-533 feet (DSX-1)
>4: 533-655 feet (DSX-1)
>5: -7.5db (CSU)
>6: -15db (CSU)
>7: -22.5db (CSU)
Spannum
Checagem Erros(crc4)
>Sim
>Não
ANI antes DNIS
>Sim
>Não
Digitos ANI
Digitos DNIS
Cat. Chamador
>Assinante Nacional
>Assinante Nacional Prioritario
>Assinante Internacional
>Ligação a cobrar
Chamada a cobrar
>Sim
>Não
Duplo Atendimento
>Sim
>Não
Cancelamento de Eco
>Sim
>Não
>16
>32
>64
>128
>256
>512
Cancelamento Eco/Bridged
>Sim
>Não
Treino de Eco
>Sim
>Não
Módulo Cancelamento/Eco
>mg2
>oslec
>kb1
>sec2
>sec
Canais de Comunicação
size="40" maxlength="80" />
Canal de Sinalização
Codec Alaw
Grupo Span
Ganho Tx
Ganho Rx