Browse Source

mudar o arquivos funcoes para escrever no asterisk as mudanças em horário

1.9-pjsip
bruno 2 months ago
parent
commit
a14c76fd1a
  1. 35
      admin/funcoes.php

35
admin/funcoes.php

@ -1444,13 +1444,13 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
fwrite($escreve, 'include => ext-horarios-custom' . "\n"); fwrite($escreve, 'include => ext-horarios-custom' . "\n");
fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(,${CONTEXT},${EXTEN}))' . "\n"); fwrite($escreve, 'exten => h,1,GoSub(macro-hangup,s,1,(,${CONTEXT},${EXTEN}))' . "\n");
$query = "SELECT distinct a.id, a.nome, a.discar, a.opcao_nao, a.acao_nao $query = "SELECT distinct a.id, a.id_asterisk, a.nome, a.discar, a.opcao_nao, a.acao_nao_asterisk
FROM pbx_horarios a, pbx_horarios_itens b FROM pbx_horarios a, pbx_horarios_itens b
where b.id_horario = a.id order by a.id"; where b.id_horario = a.id order by a.id";
$query1 = "select * from (SELECT b.id, b.id_horario, b.horario_inicio, b.horario_fim, b.todos_dias_semana, b.semana, b. $query1 = "select * from (SELECT b.id, b.id_horario, a.id_asterisk, b.horario_inicio, b.horario_fim, b.todos_dias_semana, b.semana, b.
semana_fim, b.todos_dias_mes, b.dias_mes, b.dias_mes_fim, b.todos_mes, b.mes, b. semana_fim, b.todos_dias_mes, b.dias_mes, b.dias_mes_fim, b.todos_mes, b.mes, b.
mes_fim, b.opcao, b.acao, case when(b.feriado = 'A')then 0 else 1 end as feriado mes_fim, b.opcao, b.acao, b.acao_asterisk, case when(b.feriado = 'A')then 0 else 1 end as feriado
FROM pbx_horarios a, pbx_horarios_itens b FROM pbx_horarios a, pbx_horarios_itens b
where b.id_horario = a.id where b.id_horario = a.id
and b.id_horario = '{ID}')as itens order by feriado asc, id desc"; and b.id_horario = '{ID}')as itens order by feriado asc, id desc";
@ -1458,11 +1458,12 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$result = pg_query($dbcon, $query); $result = pg_query($dbcon, $query);
while ($dados = pg_fetch_array($result)) { while ($dados = pg_fetch_array($result)) {
$x++; $x++;
$idHorario = $dados['id_asterisk']; $idHorario_asterisk = $dados['id_asterisk'];
$idHorario = $dados['id'];
fwrite($escreve, 'exten => ' . $idHorario . ',1,ExecIf($["${ISNULL(${CDR(direcao)})}" = "1"]?Set(CDR(direcao)=I))' . "\n"); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',1,ExecIf($["${ISNULL(${CDR(direcao)})}" = "1"]?Set(CDR(direcao)=I))' . "\n");
fwrite($escreve, 'exten => ' . $idHorario . ',n,ExecIf($["${CDR(direcao)}" != "E" && "${ISNULL(${CDR(ramal_origem)})}" = "1"]?Set(CDR(ramal_origem)=${CALLERID(num)}))' . "\n"); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',n,ExecIf($["${CDR(direcao)}" != "E" && "${ISNULL(${CDR(ramal_origem)})}" = "1"]?Set(CDR(ramal_origem)=${CALLERID(num)}))' . "\n");
fwrite($escreve, 'exten => ' . $idHorario . ',n,AGI(pbx_complemento.php,ext-horarios)' . "\n"); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',n,AGI(pbx_complemento.php,ext-horarios)' . "\n");
$sql = str_replace("{ID}", $idHorario, $query1); $sql = str_replace("{ID}", $idHorario, $query1);
$result1 = pg_query($dbcon, $sql); $result1 = pg_query($dbcon, $sql);
@ -1474,7 +1475,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
while ($dados1 = pg_fetch_array($result1)) { while ($dados1 = pg_fetch_array($result1)) {
$ln++; $ln++;
$opcao_ok = $dados1['opcao']; $opcao_ok = $dados1['opcao'];
$acao_ok = $dados1['acao']; $acao_ok = $dados1['acao_asterisk'];
$horaIni = $dados1['horario_inicio']; $horaIni = $dados1['horario_inicio'];
$horaFim = $dados1['horario_fim']; $horaFim = $dados1['horario_fim'];
$diaSemana = $dados1['todos_dias_semana'] ? '*' : $dados1['semana'] . ($dados1['semana'] == $dados1['semana_fim'] ? "" : '-' . $dados1['semana_fim']); $diaSemana = $dados1['todos_dias_semana'] ? '*' : $dados1['semana'] . ($dados1['semana'] == $dados1['semana_fim'] ? "" : '-' . $dados1['semana_fim']);
@ -1482,7 +1483,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$mes = $dados1['todos_mes'] ? '*' : $dados1['mes'] . ($dados1['mes'] == $dados1['mes_fim'] ? "" : '-' . $dados1['mes_fim']); $mes = $dados1['todos_mes'] ? '*' : $dados1['mes'] . ($dados1['mes'] == $dados1['mes_fim'] ? "" : '-' . $dados1['mes_fim']);
$strIntegra = $integraAtiva ? "integracao)\n" : ""; $strIntegra = $integraAtiva ? "integracao)\n" : "";
$linha = sprintf('exten => %s,n,GotoIfTime(%s-%s,%s,%s,%s?%s', $idHorario, $horaIni, $horaFim, $diaSemana, $diaMes, $mes, $strIntegra); $linha = sprintf('exten => %s,n,GotoIfTime(%s-%s,%s,%s,%s?%s', $idHorario_asterisk, $horaIni, $horaFim, $diaSemana, $diaMes, $mes, $strIntegra);
fwrite($escreve, $linha); fwrite($escreve, $linha);
if (!$integraAtiva) { if (!$integraAtiva) {
$dispAcao = GetOpcaoAcao($opcao_ok, $acao_ok, $tipo); $dispAcao = GetOpcaoAcao($opcao_ok, $acao_ok, $tipo);
@ -1494,7 +1495,7 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$opcNao = $dados['opcao_nao']; $opcNao = $dados['opcao_nao'];
$acaoNao = $dados['acao_nao']; $acaoNao = $dados['acao_nao_asterisk'];
$integraAtiva = strtoupper($opcNao) == "INTEGATIVA"; $integraAtiva = strtoupper($opcNao) == "INTEGATIVA";
@ -1504,14 +1505,14 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
$linha = sprintf('exten => %s,n,%s%s', $idHorario, $dispAcao, "\n"); $linha = sprintf('exten => %s,n,%s%s', $idHorario, $dispAcao, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = sprintf('exten => %s,n,Hangup()%s', $idHorario, "\n"); $linha = sprintf('exten => %s,n,Hangup()%s', $idHorario_asterisk, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
} else { } else {
//fwrite($escreve, 'exten => ' . $idHorario . ',n,Set(CDR(userfield)=fora-do-horario)' . "\n"); //fwrite($escreve, 'exten => ' . $idHorario . ',n,Set(CDR(userfield)=fora-do-horario)' . "\n");
fwrite($escreve, 'exten => ' . $idHorario . ',n,Set(CDR(fora_horario)=1)' . "\n"); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',n,Set(CDR(fora_horario)=1)' . "\n");
fwrite($escreve, 'exten => ' . $idHorario . ',n,Goto('); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',n,Goto(');
$dispAcao = GetOpcaoAcao($dados['opcao_nao'], $dados['acao_nao'], $tipo); $dispAcao = GetOpcaoAcao($dados['opcao_nao'], $dados['acao_nao_asterisk'], $tipo);
$dispAcao = sprintf('%s)%s', $dispAcao, "\n"); $dispAcao = sprintf('%s)%s', $dispAcao, "\n");
fwrite($escreve, $dispAcao); fwrite($escreve, $dispAcao);
} }
@ -1519,14 +1520,14 @@ function gera_arquivos($dbcon, $tipo, $reload = 1, $reloadUra = 1) {
//fwrite($escreve, 'exten => ' . $idHorario . ',n,Set(CDR(userfield)=fora-do-horario)' . "\n"); //fwrite($escreve, 'exten => ' . $idHorario . ',n,Set(CDR(userfield)=fora-do-horario)' . "\n");
fwrite($escreve, 'exten => ' . $idHorario . ',n,Hangup()' . "\n"); fwrite($escreve, 'exten => ' . $idHorario_asterisk . ',n,Hangup()' . "\n");
$integraAtiva = strtoupper($opcao_ok) == "INTEGATIVA"; $integraAtiva = strtoupper($opcao_ok) == "INTEGATIVA";
if ($integraAtiva) { if ($integraAtiva) {
$dispAcao = GetOpcaoAcao($opcao_ok, $acao_ok, $tipo); $dispAcao = GetOpcaoAcao($opcao_ok, $acao_ok, $tipo);
$linha = sprintf('exten => %s,n(integracao),%s%s', $idHorario, $dispAcao, "\n"); $linha = sprintf('exten => %s,n(integracao),%s%s', $idHorario_asterisk, $dispAcao, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
$linha = sprintf('exten => %s,n,Hangup()%s', $idHorario, "\n"); $linha = sprintf('exten => %s,n,Hangup()%s', $idHorario_asterisk, "\n");
fwrite($escreve, $linha); fwrite($escreve, $linha);
} }
} }

Loading…
Cancel
Save