TODOS /* $query = "select (select count(*) from pbx_queues_grupos where nome = '$nome') + (select count(*) from pbx_campanha where upper(cmp_descricao) = upper('$nome') ) as fila_exist, (select count(*) from pbx_queues_grupos where numero = '$numero' and status = 'A') as numero_exist"; * */ $query = "select (select count(*) from pbx_queues_grupos where nome = '$nome') as fila_exist, (select count(*) from pbx_queues_grupos where numero = '$numero' and status = 'A') + (select count(*) from pbx_ramais where nome = '$numero') as numero_exist"; $result = pg_query($dbcon, $query); $row = pg_fetch_row($result); GetDataClassifica($exige_classificacao); if (!$row[0] && !$row[1]) { $query = "INSERT INTO pbx_queues_grupos(nome, musicclass, strategy, servicelevel, timeout, retry, maxlen, joinempty, eventwhencalled, eventmemberstatus, ringinuse, periodic_announce_frequency,wrapuptime,autofill,autopause,\"announce-frequency\",\"announce-holdtime\",\"announce-round-seconds\",\"monitor-format\",\"monitor-type\",reportholdtime,timeoutrestart ,numero,timeout2,m_espera,opcao,acao,setinterfacevar,anuncio, id_transbordo, max_agente_pausa, tempo_ring, exige_classificacao, justificativa_pausa, context, retornar_abandonadas,status $dataClass,modo_atendimento,id_pesquisa_liberacao, disponivelfila) VALUES ('$nome', '$musicclass', '$strategy', $servicelevel, $timeout, $retry, $maxlen, '$joinempty', '$eventwhencalled', '$eventmemberstatus', '$ringinuse', $periodic_announce_frequency, '$wrapuptime','$autofill','$autopause','$announce_frequency','$announce_holdtime','$announce_round_seconds','$monitor_format', '$monitor_type','$reportholdtime','$timeoutrestart','$numero','$timeout2','$m_espera','$opcao','$acao_opcao','$setinterfacevar','$som_ura', $idTransbordo, $max_agente_pausa, $tempoRing, $exige_classificacao, $justificativa_pausa, '$context', $retornar_abandonadas,'$ativaFila' $dateClass,'$modoAtendimento',$pesquisaLiberacao, '$disponivelfila')"; pg_query($dbcon, $query); $query2 = "select id from pbx_queues_grupos order by id desc limit 1"; $result2 = pg_query($dbcon, $query2); while ($dados2 = pg_fetch_array($result2)) { $id_ult = $dados2['id']; } $idGrupoUser = GetIdGrupoUser($dbcon, GetIdUser()); if ($id_ult && $idGrupoUser) { $query = " insert into pbx_fila_grupos(gp_id, id)values('$idGrupoUser', '$id_ult')"; pg_query($dbcon, $query); } } else { $filaExiste = 1; $msgValida = $row[0] ? "Fila ou Campanha já existe!" : 'Número já cadastrado para outra Fila ou Ramal!'; } } else { $filaExiste = 1; $msgValida = "Favor selecionar outro nome para a Fila!"; } } if ($acao == "edita") { $query = "select (select count(*) from pbx_queues_grupos where numero = '$numero' and status = 'A' and id <> $id) + (select count(*) from pbx_ramais where nome = '$numero') as numero_exist"; $result = pg_query($dbcon, $query); $row = pg_fetch_row($result); if (!$row[0]) { GetDataClassifica($exige_classificacao, 1); $query = "UPDATE pbx_queues_grupos SET musicclass='$musicclass', strategy='$strategy', servicelevel='$servicelevel', timeout='$timeout', retry='$retry', maxlen='$maxlen', joinempty='$joinempty', eventwhencalled='$eventwhencalled', eventmemberstatus='$eventmemberstatus', ringinuse='$ringinuse', periodic_announce_frequency='$periodic_announce_frequency',wrapuptime='$wrapuptime',autofill='$autofill',autopause='$autopause',\"announce-frequency\"='$announce_frequency',\"announce-holdtime\"='$announce_holdtime',\"announce-round-seconds\"='$announce_round_seconds',\"monitor-format\"='$monitor_format', \"monitor-type\" ='$monitor_type',reportholdtime='$reportholdtime',timeoutrestart='$timeoutrestart',numero='$numero',timeout2='$timeout2',m_espera='$m_espera',opcao='$opcao',acao='$acao_opcao',setinterfacevar='$setinterfacevar', anuncio='$som_ura', id_transbordo = '$idTransbordo', max_agente_pausa = '$max_agente_pausa', tempo_ring = '$tempoRing', exige_classificacao = '$exige_classificacao', justificativa_pausa = '$justificativa_pausa', context = '$context', retornar_abandonadas = '$retornar_abandonadas', modo_atendimento = '$modoAtendimento',id_pesquisa_liberacao = $pesquisaLiberacao,disponivelfila = '$disponivelfila',status = '$ativaFila' $dataClass WHERE id=$id"; pg_query($dbcon, $query); $query = "delete from pbx_queues_membros where id_fila=$id"; pg_query($dbcon, $query); } else { $filaExiste = 1; $closeWin = 1; $msgValida = 'Número já cadastrado para outra Fila ou Ramal!'; } } $ramais = $_POST["ramais"] ?? []; $prio = 0; //prioridade do ramal $ramalSel = ''; for ($i = 0; $i < count($ramais); $i++) { $valueSel = explode(':', $ramais[$i]); $ramalSel = trim($valueSel[0]); $prio = trim($valueSel[1]); $paramRamal = explode('/', $ramalSel); $num = ($paramRamal[0] == "KHOMP") ? $paramRamal[2] : $paramRamal[1]; $a = 0; $sql = "select count(*) from pbx_supervisor_agentes where ramal = '$num'"; $result = pg_query($dbcon, $sql); $qtde = pg_fetch_row($result); if ($qtde[0] >= 1) { $log .= $log ? ", $num" : "$num"; $a++; } else { if ($acao == "edita") { $query = "insert into pbx_queues_membros (id_fila,dispositivo, prioridade) values ($id,'$ramalSel', '$prio')"; } else { $query = "insert into pbx_queues_membros (id_fila,dispositivo, prioridade) values ($id_ult,'$ramalSel', '$prio')"; } pg_query($dbcon, $query); } } if ($log) { $filaExiste = 1; $closeWin = 1; $msgValida = ($a > 1) ? "Os ramais \"$log\" já estão sendo utilizados por um agente logado!" : "O ramal \"$log\" já está sendo utilizado por um agente logado!"; } //gera arquivos e executa o reload dos dados no asterisk gera_arquivos($dbcon, 'QUEUES_GRUPOS'); ?> alert('$msgValida');"; if ($closeWin) { echo ""; } } else { echo ""; } ?>
CADASTRO DE FILAS
Nome:
" />
Número:
Música de Espera:
/> Sim
/> Não
Classe de Música:
------------
"; ?>
>
Estratégia:
> Simultaneo - Chama todos os agentes disponíveis
>Tempo Livre - Chama o agente que está a mais tempo sem receber ligações
> Numero de Ligações - Chama o agente com o menor numero de ligações atendidas
>Randomico - Chama os agentes de forma aleatoria
>Sequencial - Chama o agente respeitando a ordem cadastrada (Membros Estáticos)
Modo Atendimento
DEFAULT
AUTOMATICO
MANUAL
Pesquisa Satisfação
Ligações sem Agentes?:
/> Sim
/> Não
Aguardar Próxima Chamada:
" size="10" />
Frequência do Anúncio:
" size="20" />
Nível de Serviço:
" size="10" />
Ring use:
/>
Chamadas em Fila:
" size="20" />
Formato das Gravações:
---------
>GSM
>WAV
>WAV 49
Contexto:
>--------------
>padrao
>
Informar Tempo de Espera ao Agente:
/> Sim
/> Não
Anúncio do Tempo de Espera:
/> Sim
/> Não
Anunciar Agentes:
-----SEM SOM ------
>
Info. Posição da Fila:
" />
Max Agente/Pausa(%):
" size="15" />
Timeout da Fila:
Ação de Timeout :
Transbordo Assistido:
>-----------------------
'$idFila'"; $result = pg_query($dbcon, $query); while ($row = pg_fetch_array($result)) { $idDac = $row["id"]; $nomeDac = $row["nome"]; if ($acao == 'edita') { if ($idTransbordo == $idDac) { $sel = "selected"; } else { $sel = ""; } } echo "
$nomeDac
"; } ?>
Tempo Ring:
" size="15" maxlength="3" />
Exigir Classificação:
/> Sim
/> Não
Justificativa na Pausa Produtiva:
/> Sim
/> Não
Retornar Abandonadas:
/> Sim
/> Não
Disponível Fila
/> Sim
/> Não
Status Fila
/> Ativar
MEMBROS ESTÁTICOS
Dispositivos Disponíveis
Prioridade
Dispositivos Selecionados
0
1
2
3
4
5
6
7
8
9