'') { $mailbox = $v_numero; } else { $mailbox = $v_numero; } $disallow2 = ''; if (isset($disallow)) { foreach ($disallow as $dis) { $g++; $disallow2 .= $dis; if ((count($disallow) > 1)and ( count($disallow) > $g)) { $disallow2 .= ','; } } } $allow = $_POST["allow"]; $allow2 = ''; $g = 0; if (isset($allow)) { foreach ($allow as $al) { $g++; $allow2 .= $al; if ((count($allow) > 1)and ( count($allow) > $g)) { $allow2 .= ','; } } } $passa = true; $mes = 'OS SEGUINTES CAMPOS NÃO PODEM ESTAR VAZIOS!\n\t'; if ($nome == '') { $passa = false; $mes .= 'NOME' . '\n\t'; } if ($secret == '') { $passa = false; $mes .= 'SENHA'; } if ($passa == false) { echo ''; echo ""; } $sigameAtivo = $sigame_interno || $sigame_externo || $sigame_nao_atende || $sigame_ocupado; if ($passa && ($acao == 'edita') && $sigameAtivo && VerificaRamalConectado($nome)) { $passa = false; $mes = "Não é permitido configurar sigame para ramal conectado a uma fila"; echo ''; echo ""; } if ($acao == "inseri") { $qtde = $_POST["qtde"]; if (MaxRamaisPermite($dbcon, $qtde)) { $z++; $msg .= 'Não é possível realizar a operação! O número máximo de ramais permitidos já foi atingido!'; } else { for ($i = 1; $i <= $qtde; $i++) { $nomeRamal = $_POST['nome']; $qtd = strlen($nomeRamal); $qtd2 = strlen(ltrim($nomeRamal, "0")); $total = ($qtd - $qtd2); $nome2 = $_POST['nome'] + ($i - 1); if ($total >= 1) $nome2 = str_pad($nome2, $qtd, "0", STR_PAD_LEFT); $query2 = "select 1 from pbx_ramais where nome='$nome2'"; if (pg_num_rows(pg_query($dbcon, $query2)) >= 1) { $z++; $msg .= 'RAMAL ' . $nome2 . ' JÁ CADASTRADO' . '\n'; } else { if ($qtde > 1) { $senha_facilidade = $nome2; $mailbox = $nome2; $secret = "$prefixoSenha" . $nome2; $dispositivo = "IAX2/" . $nome2; $identificador = $nome2; } if ($qtde == 1) { $nome2 = $_POST['nome']; } if ((($_POST["gera_voice"] != '')or ( ($v_nome <> '')or ( $v_email <> ''))) and ( $qtde > 1)) { $mailbox = $nome2; } if (($_POST["gera_voice"] != '')or ( ($v_nome <> '')or ( $v_email <> ''))) { if ($v_numero <> '') { if ($i == 1) { $query = "INSERT INTO pbx_voicemail_usuarios (caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal) values ('$v_numero','$v_senha','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome2') "; //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'VOICE2', $nome2, $v_numero); } } else { $query = "INSERT INTO pbx_voicemail_usuarios (caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal) values ('$nome2','$nome2','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome2') "; //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'VOICE2', $nome2, $nome2); } pg_query($dbcon, $query); } $query = "INSERT INTO pbx_iax_pbx(type, host, secret, context, disallow, allow, deny, permit, nome,requirecalltoken,inkeys,outkeys, espera,sigame_interno,sigame_externo,sigame_naoatende,sigame_ocupado,gravacao_chamada,musica_espera,nao_pertube,cadeado,dispositivo,gravacao_saida,mailbox, senha_facilidade, identificador, identificador2, conta_senha, ramalSecretaria, habilita_prepago, ring_time, timeout) VALUES ('$type','$host','$secret','$context','all','$allow2','$deny','$permit','$nome2','$requirecalltoken' , '$inkeys','$outkeys', '$espera','$sigame_interno','$sigame_externo','$sigame_nao_atende','$sigame_ocupado','$gravacao','$musica_espera','$pertube','$cadeado','$dispositivo','$gravacao_saida','$mailbox','$senha_facilidade', '$identificador', '$identificador2', '$conta_senha', '$ramalSecretaria', '$habilita_prepago', '$ringTime', '$timeout')"; pg_query($dbcon, $query); InsereRotasRamais($dbcon, $rotas, $nome2); InsereRamaisChf($dbcon, $nome2); if ($sigame_interno == '') { $sigame_interno2 = 'F'; } else { $sigame_interno2 = $sigame_interno; } if ($sigame_externo == '') { $sigame_externo2 = 'F'; } else { $sigame_externo2 = $sigame_externo; } if ($sigame_nao_atende == '') { $sigame_nao_atende2 = 'F'; } else { $sigame_nao_atende2 = $sigame_nao_atende; } if ($sigame_ocupado == '') { $sigame_ocupado2 = 'F'; } else { $sigame_ocupado2 = $sigame_ocupado; } if ($musica_espera == '') { $musica_espera2 = 'default'; } else { $musica_espera2 = $musica_espera; } //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'ESPERA', $nome2, $espera); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $nome2, $sigame_interno2); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $nome2, $sigame_externo2); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $nome2, $sigame_ocupado2); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $nome2, $sigame_nao_atende2); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'GRAVACAO', $nome2, $gravacao); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $nome2, $gravacao_saida); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'MUSICA', $nome2, $musica_espera2); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'CADEADO', $nome2, $cadeado); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome2, $pertube); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SENHA', $nome2, $senha_facilidade); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome2, $dispositivo); CommandAsterisk2($dbcon, 'BINA-NOME', $nome2, $identificador); CommandAsterisk2($dbcon, 'BINA-EXTERNO', $nome2, $identificador2); // CommandAsterisk2($dbcon,'CONTA-SENHA',$nome2,$conta_senha); CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $nome2, $ringTime); CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $nome2, $timeout); } } } if ($z >= 1) { echo ""; echo ""; } } if ($passa && ($acao == "edita")) { $updPassRamal = $secret == MASCARA_PASSWORD ? '' : "secret='$secret',"; $updPassFacilidades = $senha_facilidade == MASCARA_PASSWORD ? '' : "senha_facilidade='$senha_facilidade',"; $numeroOld = $_POST['numero_old']; ApagaUrl($dbcon, $numeroOld); $oldNome = GetNumeroRamalFromId($id); if ($v_numero <> '') { $query = "UPDATE pbx_iax_pbx SET nome='$nome', type='$type', {$updPassRamal} permit='$permit', host='$host', context='$context', allow='$allow2', disallow='$disallow2',deny='$deny', requirecalltoken='$requirecalltoken' , inkeys='$inkeys',outkeys='$outkeys', espera='$espera', sigame_interno='$sigame_interno', sigame_externo='$sigame_externo', dispositivo='$dispositivo', sigame_naoatende='$sigame_nao_atende', sigame_ocupado='$sigame_ocupado', gravacao_chamada='$gravacao', musica_espera='$musica_espera', nao_pertube='$pertube', cadeado='$cadeado' ,gravacao_saida='$gravacao_saida', {$updPassFacilidades} mailbox='$v_numero', identificador = '$identificador', identificador2 = '$identificador2', conta_senha='$conta_senha', ramalSecretaria = '$ramalSecretaria', habilita_prepago='$habilita_prepago', ring_time='$ringTime', timeout='$timeout' WHERE id=$id"; } else { $query = "UPDATE pbx_iax_pbx SET nome='$nome', type='$type', secret='$secret', permit='$permit', host='$host', context='$context', allow='$allow2', disallow='$disallow2',deny='$deny', requirecalltoken='$requirecalltoken' , inkeys='$inkeys',outkeys='$outkeys', espera='$espera', sigame_interno='$sigame_interno', sigame_externo='$sigame_externo', dispositivo='$dispositivo', sigame_naoatende='$sigame_nao_atende', sigame_ocupado='$sigame_ocupado', gravacao_chamada='$gravacao', musica_espera='$musica_espera', nao_pertube='$pertube', cadeado='$cadeado' ,gravacao_saida='$gravacao_saida' ,senha_facilidade='$senha_facilidade',mailbox='$mailbox', identificador = '$identificador', identificador2 = '$identificador2', conta_senha='$conta_senha', ramalSecretaria = '$ramalSecretaria', habilita_prepago='$habilita_prepago', ring_time='$ringTime', timeout='$timeout' WHERE id=$id"; } //echo $query; exit; pg_query($dbcon, $query); InsereRotasRamais($dbcon, $rotas, $nome); InsereRamaisChf($dbcon, $nome); if ($sigame_interno == '') { $sigame_interno = 'F'; } if ($sigame_externo == '') { $sigame_externo = 'F'; } if ($sigame_nao_atende == '') { $sigame_nao_atende = 'F'; } if ($sigame_ocupado == '') { $sigame_ocupado = 'F'; } if ($musica_espera == '') { $musica_espera = 'default'; }//executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'ESPERA', $nome, $espera); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $nome, $sigame_interno); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $nome, $sigame_externo); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $nome, $sigame_ocupado); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $nome, $sigame_nao_atende); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'GRAVACAO', $nome, $gravacao); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $nome, $gravacao_saida); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'MUSICA', $nome, $musica_espera); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'CADEADO', $nome, $cadeado); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome, $pertube); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'SENHA', $nome, $senha_facilidade); //executa inser��o na base interna do asterisk CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $dispositivo); CommandAsterisk2($dbcon, 'BINA-NOME', $nome, $identificador); CommandAsterisk2($dbcon, 'BINA-EXTERNO', $nome, $identificador2); //CommandAsterisk2($dbcon,'CONTA-SENHA',$nome,$conta_senha); CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $nome, $ringTime); CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $nome, $timeout); $inseri_voice = $_POST['inseri_voice']; $gera_voice = $_POST['gera_voice']; if ($inseri_voice == 0) { if (($v_nome != '') || ($v_email != '')) { // Verifica se o ramal teve o numero alterado if ($oldNome != $nome) { $query = "update pbx_voicemail_usuarios set numero_ramal = '$nome' where numero_ramal = '$oldNome'"; //executa insersao na base interna do asterisk pg_query($dbcon, $query); } if ($v_numero == '') { $v_numero = $nome; } $query = "update pbx_voicemail_usuarios set caixa_postal='$v_numero',senha='$v_senha',email='$v_email',nome='$v_nome',attach='$attach',delete='$delete',saycid='$saycid',envelope='$envelope' where numero_ramal = '$nome'"; //executa insersao na base interna do asterisk CommandAsterisk2($dbcon, 'VOICE2', $nome, $v_numero); pg_query($dbcon, $query); } } else { if (($v_senha != '') && ($v_email != '') && ($v_nome != '')) { if ($v_numero == '') { $v_numero = $nome; } $query = "INSERT INTO pbx_voicemail_usuarios (caixa_postal,senha,email,nome,attach,delete,saycid,envelope, numero_ramal) values ('$v_numero','$v_senha','$v_email','$v_nome','$attach','$delete','$saycid','$envelope', '$nome') "; pg_query($dbcon, $query); //executa insersao na base interna do asterisk CommandAsterisk2($dbcon, 'VOICE2', $nome, $v_numero); } } }//gera arquivos e executa o reload dos dados no asterisk if ($passa) { gera_arquivos($dbcon, 'IAX_PBX', 1, 0); //gera arquivos e executa o reload dos dados no asterisk gera_arquivos($dbcon, 'VOICEMAIL', 0, 0); gera_arquivos($dbcon, 'QUEUES_GRUPOS', 1, 1); echo ""; } } if ($acao == "edita") { $id = $_GET["id"]; if (!$id) { $id = 0; } $query = "SELECT * FROM pbx_iax_pbx where id=$id"; $result = pg_query($dbcon, $query); } else { $query = "SELECT * FROM pbx_iax_pbx where id is null"; $allow = 'ulaw,alaw'; } $result = pg_query($dbcon, $query); while ($dados = pg_fetch_array($result)) { $id = $dados["id"]; $nome = $dados["nome"]; $type = $dados["type"]; $secret = MASCARA_PASSWORD; $senha_facilidade = MASCARA_PASSWORD; $permit = $dados["permit"]; $host = $dados["host"]; $context = $dados["context"]; $allow = $dados["allow"]; $disallow = $dados["disallow"]; $trunk = $dados["trunk"]; $requirecalltoken = $dados["requirecalltoken"]; $deny = $dados["deny"]; $inkeys = $dados["inkeys"]; $outkeys = $dados["outkeys"]; $espera = $dados["espera"]; $sigame_interno = $dados["sigame_interno"]; $sigame_externo = $dados["sigame_externo"]; $sigame_naoatende = $dados["sigame_naoatende"]; $sigame_ocupado = $dados["sigame_ocupado"]; $gravacao_chamada = $dados["gravacao_chamada"]; $gravacao_saida = $dados["gravacao_saida"]; $conta_senha = $dados["conta_senha"]; $musica_espera = $dados["musica_espera"]; $nao_pertube = $dados["nao_pertube"]; $cadeado = $dados["cadeado"]; $mailbox = $dados['mailbox']; $dispositivo = $dados['dispositivo']; $identificador = $dados['identificador']; $identificador2 = $dados['identificador2']; $ramalSecretaria = $dados['ramalsecretaria']; $saldo_prepago = FormataValor($dados["saldo_prepago"]); $habilita_prepago = !HabilitaPrepago() ? '0' : $dados["habilita_prepago"]; $ringTime = $dados["ring_time"]; $timeout = $dados["timeout"]; } //Gravação como default sim. if (!isset($gravacao_chamada)) { $gravacao_chamada = 'V'; } if (!isset($gravacao_saida)) { $gravacao_saida = 'V'; } ?>
0) { $inseri_voice = 0; $v_numero = $dados2['caixa_postal']; $v_nome = $dados2['nome']; $v_email = $dados2['email']; $v_senha = $dados2['senha']; $attach = trim($dados2["attach"]); $delete = trim($dados2["delete"]); $envelope = trim($dados2["envelope"]); $saycid = trim($dados2["saycid"]); $pager = trim($dados2["pager"]); } ?>
CADASTRO DE RAMAIS IAX
Qtde.:
Gera Voice :
Habilita Pré-pago />Sim />Não
Saldo Pré-pago:
Ramal:
Senha:
Senha Facilidades: " size="10" maxlength="20" />
Tempo Ring: " size="10" />
Timeout Ligação:
Codecs Utilizados : ', ++$numCodec, $codec, $check); echo ucfirst($codec); } ?> all
Tipo: /> Faz ligações /> Recebe Ligações /> Ambos
Servidor: " size="10" />
Contexto:
Dispositivo:
Bina:
Bina Externa :
Música de Espera:
Siga-me Interno:
Siga-me Externo:
Siga-me Não Atende:
Siga-me Ocupado:
Cadeado: /> Sim /> Não
Chamada em Espera: /> Sim /> Não
Não Pertube: /> Sim /> Não
Gravação de Entrada: /> Sim /> Não
Gravação de Saida: /> Sim /> Não
Monitorar : /> Sim /> Não
VOICEMAIL
Número da Caixa: " size="15" />
Nome: " size="30" />
Senha: " size="10" />
E-mail: " size="30" />
Reproduzir Data e Hora: /> Sim /> Não
Enviar Anexo: /> Sim /> Não
Reproduzir Identificação: /> Sim /> Não
Deletar após o envio: /> Sim /> Não
Clique para Exibir as Rotas
Rota Sim Não Conta/Senha Agente
/> />
Clique para Exibir Configurações Chefe Secretária
Ramal Secretária
"/>
Exceções
 
  Exceções