Browse Source

alterado o ramal que atende a rota de entrada

1.9-pjsip
daniel 4 months ago
parent
commit
df2b8d0aee
  1. 89
      admin/funcoes.php

89
admin/funcoes.php

@ -1,7 +1,7 @@
<?php
//função para para execução de comandos no servidor
//Função para converter as datas no formato dd/mm/YYYY
//fun<EFBFBD><EFBFBD>o para para execu<EFBFBD><EFBFBD>o de comandos no servidor
//Fun<EFBFBD><EFBFBD>o para converter as datas no formato dd/mm/YYYY
function arruma_data($data) {
return substr($data, 8, 2) . "/" . substr($data, 5, 2) . "/" . substr($data, 0, 4);
}
@ -11,7 +11,7 @@ function inverte_data($data) {
return substr($data, 6, 4) . "-" . substr($data, 3, 2) . "-" . substr($data, 0, 2);
}
//Função¿½o para limpar os relacionamentos do banco de dados
//Fun<EFBFBD><EFBFBD>o<EFBFBD><EFBFBD>o para limpar os relacionamentos do banco de dados
function Ajusta_ramais($nome, $conexao, $reload = false, $reloadUra = false) {
$query = "delete from pbx_agenda where tipo = 'R' and ramal = '$nome'";
$result = pg_query($conexao, $query);
@ -42,7 +42,7 @@ function Ajusta_ramais($nome, $conexao, $reload = false, $reloadUra = false) {
return true;
}
//Função¿½o para limpar os relacionamentos do banco de dados
//Fun<EFBFBD><EFBFBD>o<EFBFBD><EFBFBD>o para limpar os relacionamentos do banco de dados
function Ajusta_troncos($nome, $conexao) {
$query1 = "delete from pbx_rotas_entrada_troncos where id_tronco='$nome'";
$query2 = "delete from pbx_grupos_atendimento_ramais where ramal='$nome'";
@ -217,7 +217,7 @@ function CommandAsterisk($conexao, $tipo, $paramAdic = array()) {
/*
* Executa comandos via url do asterisk.
* Subistituida pela função acima que elimina o astman proxy
* Subistituida pela fun<EFBFBD><EFBFBD>o acima que elimina o astman proxy
*/
function _CommandAsterisk($conexao, $tipo) {
@ -260,7 +260,7 @@ function CommandAsterisk2($conexao, $tipo, $chave, $valor) {
/*
* Executa comandos via url do asterisk do tipo inser??o e delete de banco interno
* Substituido pela função acima
* Substituido pela fun<EFBFBD><EFBFBD>o acima
*/
function _CommandAsterisk2($conexao, $tipo, $chave, $valor) {
@ -415,7 +415,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$url_asterisk = $dados['url_asterisk'];
}
//GERAÇÃO DO ARQUIVO DE URA
//GERA<EFBFBD><EFBFBD>O DO ARQUIVO DE URA
if ($tipo == 'URA') {
$arq = $caminho_producao . "extensions_ura.conf";
$escreve = fopen($arq, 'w+');
@ -509,8 +509,8 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'exten => ' . $dados2['numero'] . ',n,Hangup()' . "\n");
} else {
/*
* Para evitar sobrescrita das variaveis digitas na ura com integração ativa
* não insere set ura para os outros casos.
* Para evitar sobrescrita das variaveis digitas na ura com integra<EFBFBD><EFBFBD>o ativa
* n<EFBFBD>o insere set ura para os outros casos.
*/
if ($setUra) {
fwrite($escreve, sprintf("exten => %s,n,set(URA=\${EXTEN})\n", $dados2['numero']));
@ -886,7 +886,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
while ($dados = pg_fetch_array($result)) {
//
// Se o ramal for marcado como PBX não escreve a linha no sip_ramais.conf
// Se o ramal for marcado como PBX n<EFBFBD>o escreve a linha no sip_ramais.conf
//
$ispbxTroncos = trim($dados['ispbx_tronco']);
@ -904,7 +904,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
if ($extranet) {
fwrite($escreve, "deny=0.0.0.0/0.0.0.0\n");
/*
* Escreve as redes permitidas para autenticação dos ramais.
* Escreve as redes permitidas para autentica<EFBFBD><EFBFBD>o dos ramais.
*/
$redes = $extranet;
$redes = preg_split('/[\\\ | - ; , \n]/', $redes, -1, PREG_SPLIT_NO_EMPTY);
@ -2305,7 +2305,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$bloq = $value[1];
/* Alan Pablo 2001-01-16
* O parametro do lista negra foi colocado antes do pbx_complemento para não bagunçar os relatorios
* O parametro do lista negra foi colocado antes do pbx_complemento para n<EFBFBD>o bagun<EFBFBD>ar os relatorios
*/
$modelo = (trim($modelo) == 's') ? trim($modelo) : '_' . trim($modelo);
@ -2339,12 +2339,13 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
}
if (($ativarDdr == 'V')) {
if ($exten[1]) {
fwrite($escreve, 'exten => ' . $modelo . ',n,Goto(ext-ramais,${EXTEN:-' . $exten[1] . '},1)' . chr(10));
fwrite($escreve, 'exten => ' . $modelo . ',n,Goto(ext-ramais,' . $org_id . '${EXTEN:-' . $exten[1] . '},1)' . chr(10));
} else {
fwrite($escreve, 'exten => ' . $modelo . ',n,Goto(ext-ramais,${EXTEN},1)' . chr(10));
fwrite($escreve, 'exten => ' . $modelo . ',n,Goto(ext-ramais,' . $org_id . '${EXTEN},1)' . chr(10));
}
} else {
$dispAcao = GetOpcaoAcao($dados['opcao'], $dados['acao'], '', $modelo);
$acao_rota_entrada = $org_id . $dados['acao'];
$dispAcao = GetOpcaoAcao($dados['opcao'], $acao_rota_entrada, '', $modelo);
$dispAcao = sprintf('exten => %s,n,%s%s', $modelo, $dispAcao, "\n");
// $dispAcao = GetOpcaoAcao($dados['opcao'], $dados['acao']);
@ -2592,7 +2593,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
/* Alan Pablo 2001-01-16
* Alterado o parametro de: select id,'IAX2/'||username para: select id,'IAX2/'||nome
* Devido a alteração no cadastro de troncos IAX
* Devido a altera<EFBFBD><EFBFBD>o no cadastro de troncos IAX
*/
$query3 = "select *
@ -2655,7 +2656,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreveCustom, sprintf("[%s_custom]\n", $nomeContexto));
/*
* Inicio da gravação do contexto
* Inicio da grava<EFBFBD><EFBFBD>o do contexto
*/
$linha = "[$nomeContexto]\n";
fwrite($escreve, $linha);
@ -2796,7 +2797,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$acao .= ',1';
}
/* Alan Pablo 2001-01-16
* O parametro do lista negra foi colocado antes do pbx_complemento para não bagunçar os relatorios
* O parametro do lista negra foi colocado antes do pbx_complemento para n<EFBFBD>o bagun<EFBFBD>ar os relatorios
*/
$linha = "exten => _$modelo,n,AGI(pbx_complemento.php,$nomeContexto)\n";
fwrite($escreve, $linha);
@ -2850,8 +2851,8 @@ function GetAcao($opcao) {
function GetOpcaoAcao($opcao, $acao, $tipo = '', $modelo = '') {
// A variável $tipo foi criadada para tratar retorno não padrao
// atualmente usado apenas na cofiguração dos horários.
// A vari<EFBFBD>vel $tipo foi criadada para tratar retorno n<EFBFBD>o padrao
// atualmente usado apenas na cofigura<EFBFBD><EFBFBD>o dos hor<EFBFBD>rios.
$opcao = trim($opcao);
$acao = trim($acao);
@ -2872,7 +2873,7 @@ function GetOpcaoAcao($opcao, $acao, $tipo = '', $modelo = '') {
//$ret = sprintf('AGI(${INTEGRACAO}|%s|${CALLERID(NUM):-11}|${UNIQUEID}|${IDORIGEM}|${URA})', $acao);
$ret = sprintf('AGI(${INTEGRACAO},%s,${IF($[ "X${CALLERID(NUM)}" = "X" ]? "-" : ${CALLERID(NUM):-11})},${UNIQUEID},${IDORIGEM},${URA})', $acao);
} else if (($opcao == 'rotaInterna') && (soTexto($acao) != '')) {
$ret = sprintf('%s,${EXTEN},1', $acaoText);
$ret = sprintf('%s,{EXTEN},1', $acaoText);
} else {
$ret = sprintf('%s,%s,1', $acaoText, $acao);
}
@ -2886,8 +2887,8 @@ function GetOpcaoAcao($opcao, $acao, $tipo = '', $modelo = '') {
function GetAcaoOpcaoRotas($opcao, $acao) {
// A variável $tipo foi criadada para tratar retorno não padrao
// atualmente usado apenas na cofiguração dos horários.
// A vari<EFBFBD>vel $tipo foi criadada para tratar retorno n<EFBFBD>o padrao
// atualmente usado apenas na cofigura<EFBFBD><EFBFBD>o dos hor<EFBFBD>rios.
$opcao = trim($opcao);
$acao = trim($acao);
@ -2963,19 +2964,19 @@ function GeraExtRamais($dbcon) {
try {
$conf = GetConfPadrao($dbcon);
if (empty($conf))
throw new Exception('Não foi possível obter as configurações!');
throw new Exception('N<EFBFBD>o foi poss<EFBFBD>vel obter as configura<EFBFBD><EFBFBD>es!');
$caminho_producao = $conf["caminho_producao"];
$arq = $caminho_producao . "extensions_ramais.conf";
$escreve = fopen($arq, 'w');
if (!$escreve)
throw new Exception('Não foi abrir o arquivo \"extensions_ramais.conf\"!');
throw new Exception('N<EFBFBD>o foi abrir o arquivo \"extensions_ramais.conf\"!');
//GERA O ARQUIVO DE DENTRO DO HINTS
$arq1 = $caminho_producao . "hints.conf";
$escreveHint = fopen($arq1, 'w');
if (!$escreveHint)
throw new Exception('Não foi abrir o arquivo \"hints.conf\"!');
throw new Exception('N<EFBFBD>o foi abrir o arquivo \"hints.conf\"!');
fwrite($escreve, '[ext-ramais]' . "\n");
fwrite($escreve, 'include => ext-ramais-custom' . "\n");
@ -3003,9 +3004,9 @@ function GeraExtRamais($dbcon) {
fwrite($escreveHint, 'exten => ' . $dados['org_id'] . $dados['nome'] . ',hint,' . $dados['dispositivo'] . "\n");
}
if (!fclose($escreve))
throw new Exception('Não foi possível salvar o arquivo \"extensions_ramais.conf\"!');
throw new Exception('N<EFBFBD>o foi poss<EFBFBD>vel salvar o arquivo \"extensions_ramais.conf\"!');
if (!fclose($escreveHint))
throw new Exception('Não foi possível salvar o arquivo \"hints.conf\"!');
throw new Exception('N<EFBFBD>o foi poss<EFBFBD>vel salvar o arquivo \"hints.conf\"!');
return true;
} catch (Exception $e) {
@ -3024,7 +3025,7 @@ function GeraException($source, $message, $silent = 0) {
function WriteFile($handle, $string, $silent = 0) {
$result = fwrite($handle, $string);
GeraException($result, "Não foi possível \"Gravar o Arquivo\"!", $silent);
GeraException($result, "N<EFBFBD>o foi poss<EFBFBD>vel \"Gravar o Arquivo\"!", $silent);
}
function GeraCallback($dbcon, $reloadUra = true, $silent = 0) {
@ -3036,7 +3037,7 @@ function GeraCallback($dbcon, $reloadUra = true, $silent = 0) {
$query = "select id, descricao, opcao, acao, opcao1, acao1 from pbx_callback";
$result = pg_query($dbcon, $query);
GeraException($result, "Não foi possível \"Selecionar os Registros\"!");
GeraException($result, "N<EFBFBD>o foi poss<EFBFBD>vel \"Selecionar os Registros\"!");
WriteFile($escreve, "[ext-callback-externo]\n", $silent);
WriteFile($escreve, "include => ext-callback-externo-custom\n", $silent);
@ -3133,8 +3134,8 @@ function GeraDisa($dbcon, $reload = true, $silent = 0) {
fclose($escreve);
if ($reload) {
//GeraException(CommandAsterisk($dbcon,"DISA"), "Não foi possível recarregar o \"Disa na Central\"!", $silent);
GeraException(CommandAsterisk($dbcon, "URA"), "Não foi possível recarregar a \"Ura na Central\"!", $silent);
//GeraException(CommandAsterisk($dbcon,"DISA"), "N<EFBFBD>o foi poss<EFBFBD>vel recarregar o \"Disa na Central\"!", $silent);
GeraException(CommandAsterisk($dbcon, "URA"), "N<EFBFBD>o foi poss<EFBFBD>vel recarregar a \"Ura na Central\"!", $silent);
}
}
@ -3158,7 +3159,7 @@ function GeraSip($dbcon, $reload) {
if (!$extranet) {
fwrite($escreve, "deny=0.0.0.0/0\n");
/*
* Escreve as redes permitidas para autenticação dos ramais.
* Escreve as redes permitidas para autentica<EFBFBD><EFBFBD>o dos ramais.
*/
$redes = $extranet;
$redes = preg_split('/[\\\ | - ; , \n]/', $redes, -1, PREG_SPLIT_NO_EMPTY);
@ -3437,7 +3438,7 @@ function GeraDahdi($dbcon, $reload) {
$value = trim($value);
/*
* somente escreve variáveis que esteja setadas.
* somente escreve vari<EFBFBD>veis que esteja setadas.
*/
if ($value != "") {
fwrite($escChanDahdi, sprintf("%s=%s\n", $key, $value));
@ -3478,7 +3479,7 @@ function GravaDispositivoDahdi($dbcon, $file) {
while ($dados = pg_fetch_array($result)) {
$interface = strtolower($dados['interface']);
$sinalizacao = strtolower($dados['sinalizacao_tipo']);
$nome = sprintf("#Nome: %s Interface: %s Sinalização: %s\n", $dados["nome"], $interface, $sinalizacao);
$nome = sprintf("#Nome: %s Interface: %s Sinaliza<EFBFBD><EFBFBD>o: %s\n", $dados["nome"], $interface, $sinalizacao);
fwrite($escSystemDahdi, "$nome");
//foreach($dados as $key => $value) $GLOBALS[$key] = $value;
/*
@ -3684,9 +3685,9 @@ function GetValueSystemDahdi($dados, $field) {
/* 'dynamic_mac', 'dynamic_span', 'dynamic_canais', 'dynamic_cascata'
ethmf = Modulo dahdi utilizado pelo redfone
em2 ou eth2 = Interface de rede conectada ao gateway redfone
00:50:c2:65:e1:48 = Endereço MAC do Redfone
00:50:c2:65:e1:48 = Endere<EFBFBD>o MAC do Redfone
/0 => Define o span igual na placa
31 => Define a quantidade de canais de comunicação
31 => Define a quantidade de canais de comunica<EFBFBD><EFBFBD>o
0 ou 1 => Em caso de mais de um equipamento define o Master (1) ou Slave (0)
#Redfone
@ -3698,8 +3699,8 @@ function GetValueSystemDahdi($dados, $field) {
/*
eth = Modulo dahdi utilizado pelo redfone
em2 ou eth2 = Interface de rede conectada ao gateway redfone
00:50:c2:65:e1:48 = Endereço MAC do Redfone
36 => Define a quantidade de canais de comunicação
00:50:c2:65:e1:48 = Endere<EFBFBD>o MAC do Redfone
36 => Define a quantidade de canais de comunica<EFBFBD><EFBFBD>o
0 ou 1 => Em caso de mais de um equipamento define o Master (1) ou Slave (0)
#Cianet
@ -4034,21 +4035,21 @@ function VerDependenciaTronco($id) {
$result = pg_query($query);
$row = pg_fetch_row($result);
if ($row[0]) {
GeraExcept("Este tronco não pode ser excluido, verifique sua associação as \"Rotas de Saída!\"");
GeraExcept("Este tronco n<EFBFBD>o pode ser excluido, verifique sua associa<EFBFBD><EFBFBD>o as \"Rotas de Sa<EFBFBD>da!\"");
}
$query = "select count(*) from pbx_rotas_entrada_troncos where id_tronco = '$id'";
$result = pg_query($query);
$row = pg_fetch_row($result);
if ($row[0]) {
GeraExcept("Este tronco não pode ser excluido, verifique sua associação as \"Rotas de Entrada!\"");
GeraExcept("Este tronco n<EFBFBD>o pode ser excluido, verifique sua associa<EFBFBD><EFBFBD>o as \"Rotas de Entrada!\"");
}
$query = "select count(*) from pbx_contextos_canais where canal = (select nome from pbx_troncos_sip where id = '$id')";
$result = pg_query($query);
$row = pg_fetch_row($result);
if ($row[0]) {
GeraExcept("Este tronco não pode ser excluido, verifique sua associação aos \"Contextos!\"");
GeraExcept("Este tronco n<EFBFBD>o pode ser excluido, verifique sua associa<EFBFBD><EFBFBD>o aos \"Contextos!\"");
}
return false;
@ -4059,7 +4060,7 @@ function VerDependenciaTronco($id) {
function GetDependenciaTronco($id) {
try {
$query = "select 'Rota de Saída' as dep, c.id, c.nome from pbx_rotas_saida_canais a, pbx_troncos b, pbx_rotas_saida c where a.canal = b.nome and a.id_rota = c.id and b.id = '$id'
$query = "select 'Rota de Sa<EFBFBD>da' as dep, c.id, c.nome from pbx_rotas_saida_canais a, pbx_troncos b, pbx_rotas_saida c where a.canal = b.nome and a.id_rota = c.id and b.id = '$id'
union
select 'Rota de Entrada' as dep, b.id, b.nome from pbx_rotas_entrada_troncos a, pbx_rotas_entrada b where b.id = a.id_rota and a.id_tronco = '$id'
union
@ -4070,7 +4071,7 @@ select 'Contextos' as dep, c.id, c.nome from pbx_contextos_canais a, pbx_tronco
return false;
}
$str = "<strong>Dependência(s):</strong>";
$str = "<strong>Depend<EFBFBD>ncia(s):</strong>";
while ($dados = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$str .= sprintf("<br/>%s: %s - %s ", $dados['dep'], $dados['id'], $dados['nome']);
}

Loading…
Cancel
Save