|
|
|
@ -2374,7 +2374,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
|
|
|
|
|
fwrite($escreve, 'exten => ' . $modelo . ',n,GoSub(macro-chamada-a-cobrar,s,1,())' . chr(10)); |
|
|
|
|
|
|
|
|
|
if ($limite_ligacao) { |
|
|
|
|
$opcaoRota = GetAcaoOpcaoRotas($dados['limite_ligacao_pos_opcao'], $dados['limite_ligacao_pos_acao']); |
|
|
|
|
$opcaoRota = GetAcaoOpcaoRotas($dados['limite_ligacao_pos_opcao'], $dados['limite_ligacao_pos_acao'], $org_id); |
|
|
|
|
fwrite($escreve, 'exten => ' . $modelo . ",n,GoSub(macro-limite-ligacao-entrante,s,1,($idRota,$limite_ligacao,$opcaoRota))" . chr(10)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
@ -2921,19 +2921,19 @@ 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,${ORG_ID}${EXTEN},1,(${EXTEN})', $acaoText); |
|
|
|
|
} else { |
|
|
|
|
$ret = sprintf('%s,%s,1', $acaoText, $acao); |
|
|
|
|
$ret = sprintf('%s,${ORG_ID}%s,1,(%s)', $acaoText, $acao, $acao); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if ($useGoto) { |
|
|
|
|
$ret = sprintf('Goto(%s)', $ret); |
|
|
|
|
$ret = sprintf('Gosub(%s)', $ret); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return $ret; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
function GetAcaoOpcaoRotas($opcao, $acao) { |
|
|
|
|
function GetAcaoOpcaoRotas($opcao, $acao, $org_id) { |
|
|
|
|
|
|
|
|
|
// 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. |
|
|
|
@ -2953,9 +2953,9 @@ function GetAcaoOpcaoRotas($opcao, $acao) {
|
|
|
|
|
} else if (strtolower($opcao) == 'anuncios') { |
|
|
|
|
$ret = sprintf('%s,a%s,1', $acaoText, $acao); |
|
|
|
|
} else if (($opcao == 'rotaInterna') && (soTexto($acao) != '')) { |
|
|
|
|
$ret = sprintf('%s,${EXTEN},1', $acaoText); |
|
|
|
|
$ret = sprintf('%s,${ORG_ID}${EXTEN},1,(${EXTEN})', $acaoText); |
|
|
|
|
} else { |
|
|
|
|
$ret = sprintf('%s,%s,1', $acaoText, $acao); |
|
|
|
|
$ret = sprintf('%s,${ORG_ID}%s,1,(%s)', $acaoText, $acao, $acao); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return $ret; |
|
|
|
@ -3201,13 +3201,13 @@ function GeraSip($dbcon, $reload) {
|
|
|
|
|
$arq = $caminho_producao . "sip_ramais.conf"; |
|
|
|
|
$escreve = fopen($arq, 'w'); |
|
|
|
|
|
|
|
|
|
$query = "SELECT nome,type,secret,callerid,qualify,port,nat,host,dtmfmode,context,canreinvite,disallow,allow,\"call-limit\",videosupport,fromdomain,t38pt_udptl,mailbox,pickupgroup,callgroup,insecure,accountcode, extranet |
|
|
|
|
$query = "SELECT registro,type,secret,callerid,qualify,port,nat,host,dtmfmode,context,canreinvite,disallow,allow,\"call-limit\",videosupport,fromdomain,t38pt_udptl,mailbox,pickupgroup,callgroup,insecure,accountcode, extranet |
|
|
|
|
FROM pbx_sip_ramais order by id asc"; |
|
|
|
|
$result = pg_query($dbcon, $query); |
|
|
|
|
|
|
|
|
|
while ($dados = pg_fetch_array($result)) { |
|
|
|
|
for ($i = 0; pg_num_fields($result) > $i; $i++) { |
|
|
|
|
if (pg_field_name($result, $i) == "nome") { |
|
|
|
|
if (pg_field_name($result, $i) == "registro") { |
|
|
|
|
fwrite($escreve, "[" . $dados[pg_field_name($result, $i)] . "]" . "\n"); |
|
|
|
|
} else if (pg_field_name($result, $i) == "extranet") { |
|
|
|
|
$extranet = trim($dados['extranet']); |
|
|
|
@ -3239,7 +3239,7 @@ function GeraSip($dbcon, $reload) {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//GERA OS TRONCOS SIP DENTRO DO ARQUIVO DE RAMAIS |
|
|
|
|
$query = "SELECT nome, username, secret, type, context, callerid, host, |
|
|
|
|
$query = "SELECT nome_asterisk, username, secret, type, context, callerid, host, |
|
|
|
|
case when(coalesce(fromuser, '0')::int > 0)then username else '' end as fromuser, permit as fromdomain, port, deny, permit, qualify, |
|
|
|
|
case when nat = 'yes' then 'force_rport,comedia' else nat end as nat, canreinvite, disallow, allow, dtmfmode, 'port,invite' as insecure |
|
|
|
|
FROM pbx_troncos_sip order by id asc"; |
|
|
|
@ -3248,7 +3248,7 @@ function GeraSip($dbcon, $reload) {
|
|
|
|
|
|
|
|
|
|
while ($dados = pg_fetch_array($result)) { |
|
|
|
|
for ($i = 0; pg_num_fields($result) > $i; $i++) { |
|
|
|
|
if (pg_field_name($result, $i) == "nome") { |
|
|
|
|
if (pg_field_name($result, $i) == "nome_asterisk") { |
|
|
|
|
fwrite($escreve, "[" . $dados[pg_field_name($result, $i)] . "]" . "\n"); |
|
|
|
|
} else { |
|
|
|
|
if (trim($dados[pg_field_name($result, $i)]) != '') { |
|
|
|
|