@ -1,15 +1,7 @@
<?php
/*
remover
$_SESSION[AGT_ID_LOGIN];
AGT_CONECT $prm_classifica_municipio; $municipios; CarregaMunicipios(); SetaMunId(this);
*
*/
/*
* Agente
* Satus:
* Status:
* $_SESSION[AGT_EM_PAUSA] Agente em Pausa = 1 e 0 fora de pausa;
* $_SESSION[AGT_PAUSA_MOTIVO] Motivo da pausa setado pelo agente;
* $_SESSION[AGT_DAC_CONECT_DESC] Nome do dac
@ -30,11 +22,11 @@
abandonadas -> Chamadads Abandonadas na fila
tme -> Tempo médio de espera na fila
tma -> tempo médio de atendimento
atendidasPa -> N úmero de chamadas atendidas pelo agente
atendidasPa -> n úmero de chamadas atendidas pelo agente
Infoemacoes gerais
motivoPausa -> Combo com os motivos de pausa disponiveis
numProtocolo -> N úmero do protocolo de atendimento
numProtocolo -> n úmero do protocolo de atendimento
dacs -> Lista com os dacs Disponiveis
valueBtConectar -> Label refletindo o status do agente no botao conecar ao dac
msg_sis -> Mensagens para o usuarios
@ -46,9 +38,9 @@
Classificação
useClassifica -> Mostra controles para classificação de chamadas qdo verdadeiro
useContrib -> Mostra controles para identificaça o de clientes qdo verdadeiro
useContrib -> Mostra controles para identificaçã o de clientes qdo verdadeiro
classifica -> Lista com classificacoes cadastradas para o dac
clasItem -> Listas com itens relacioanados a classificaça o da chamada
clasItem -> Listas com itens relacioanados a classificaçã o da chamada
*/
/*
@ -151,7 +143,6 @@ $alertaAgente = array();
$matricula = GetMatricula();
$clasAtende = '';
//$dac = IsPostBack() ? (AgenteON() ? $_SESSION[SS_DAC_CODIGO] : $_POST["listaDacs"] ) : ( AgenteON() ? $_SESSION[SS_DAC_CODIGO] : (isset($_GET["dac"]) ? $_GET["dac"] : GetIdDacPadrao($dbcon, $_SESSION["SSidUser"])) );
if (AgenteON()) {
$dac = $_SESSION[SS_DAC_CODIGO];
@ -170,12 +161,11 @@ if (!$dac) {
$_SESSION[SS_DAC_CODIGO] = $dac;
}
$ufForm = ""; //IsPostBack() ? $_POST["listaUfs"] : "";
$ufForm = "";
/*
* Mostra erros na aplicação
*/
$displayError = 0;
//$heightMasterContent = 265;
if (!IsAjax()) {
@ -215,18 +205,6 @@ if (!IsAjax()) {
}
else if (DesconectarDac()) {
DesConectaAgenteRt($dbcon);
/*
$jaConnectado = strtoupper($_POST["btConDac"]) == 'CONECTAR';
if($jaConnectado)
{
$msg = "Este usuário já esta conectado!";
$jsStartup[] = sprintf("alert('%s');", $msg);
SetMsgAgente($msg);
}
else
{
DesConectaAgenteRt($dbcon);
} */
} else if (SairDePausa()) {
SairPausa($dbcon);
} else if (EntrarPausa()) {
@ -234,8 +212,8 @@ if (!IsAjax()) {
$dadosMonitorCompl["msg_sis"] = "Selecione uma Pausa!";
$jsStartup[] = "alert('Selecione uma Pausa!')";
} else if (VerificaMaxAgentePausa($dac)) {
$dadosMonitorCompl["msg_sis"] = "N úmero Máximo de Agente/Pausa Excedido, Aguarde!";
$jsStartup[] = "alert('N úmero Máximo de Agente/Pausa Excedido, Aguarde!')";
$dadosMonitorCompl["msg_sis"] = "n úmero Máximo de Agente/Pausa Excedido, Aguarde!";
$jsStartup[] = "alert('n úmero Máximo de Agente/Pausa Excedido, Aguarde!')";
} else {
$codMotivo = explode('|', $_POST["listaMotivo"]);
EntraPausa($dbcon, $codMotivo[0]);
@ -264,12 +242,16 @@ if (!IsAjax()) {
if ($_SESSION[SS_PRM_AGENTE_CLASSIFICA]) {
$clasAtende = CarregaClassificacao($dbcon, $dac);
}
}else{
$_SESSION[SS_MODO_ATENDIMENTO_COD] = $_SESSION['prm_atende_preferencial'] === "0" ? ATENDIMENTO_AUTOMATICO : ATENDIMENTO_MANUAL;
$_SESSION[SS_MODO_ATENDIMENTO] = $_SESSION[SS_MODO_ATENDIMENTO_COD] === ATENDIMENTO_MANUAL ? "Manual" : "Automático";
}
var_dump($_SESSION[SS_MODO_ATENDIMENTO_COD], $_SESSION[SS_MODO_ATENDIMENTO]);
$jsStartup[] = "window.setInterval(\"GetAgenteRt()\", " . GetTempoAgente() . ");";
$jsStartup[] = "window.setInterval(\"SetDataAtual()\", 1000);";
// $jsJQuery[] = "\$(document).bind(\"keydown keypress\", function (event) { if (event.which == 116 || event.which == 8) { return false; }});";
$jsJQuery[] = "\$(document).bind(\"keydown keypress\", function (event) { if (!ativaBackspace & & (event.which == 8)) { return false; }});";
$jsJQuery[] = "\$('#txtDiscar').focus(function(){ ativaBackspace = true; }) ";
$jsJQuery[] = "\$('#txtDiscar').blur(function(){ ativaBackspace = false; }) ";
@ -279,12 +261,10 @@ if (!IsAjax()) {
$jsJQuery[] = " \$('#contentAgente').height($(document).height() - 4);";
$jsJQuery[] = "\$(window).resize( function(){ ResizeAgente(); } ); ";
}
//$jsJQuery[] = "\$(document).ajaxStart(function(){\$('#loading').show();}).ajaxStop(function(){\$('#loading').hide();});";
if ($clasAtende) {
$GLOBALS["jsStartup"][] = $clasAtende;
}
//$GLOBALS["jsStartup"][] = "\$(window).bind('beforeunload', function() { return SaidaPausaLogoffRt();});";
$useContribuinte = $_SESSION[SS_PRM_AGENTE_CONTRIBUINTE];
$useClassificacao = $_SESSION[SS_PRM_AGENTE_CLASSIFICA];
$dadosMonitorCompl["habilitaConectar"] = true;
@ -344,7 +324,6 @@ if (!IsAjax()) {
$smarty->assign('sZbtPesquisa', $sZbtPesquisa);
$smarty->assign('sZbtConDac', $sZbtConDac);
$smarty->assign('sZListaFones', $sZListaFones);
// $smarty->assign('sZbtDiscador',$sZbtDiscador);
$smarty->assign('sZListaStatus', $sZListaStatus);
$smarty->assign('sZbtRegStatus', $sZbtRegStatus);
$smarty->assign('sZbtPausa', $sZbtPausa);
@ -373,18 +352,12 @@ if (!IsAjax()) {
$smarty->assign('linkaudio', '...');
$smarty->assign('ativaComplementoCampanha', ComplementoCampanhaAtivo());
$clienteOperacao = GetClientOperacao($matricula)['cont_identificador'];
if ($clienteOperacao) {
$smarty->assign('clienteoperacao', sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=45&formAction=4&id=%s&refresh=1', ' clienteOperacao ' , ' 760 ' , ' 600 ' , ' resizable = NO,scrollbars=NO');\" > < img src = \"imgSite/usuarios.gif\" alt = \"Ir para a Tela do Cliente \ " width = \"25\" border = \"0\" title = \"Visualiza as informações do cliente ! \ " / > < / a > ", $clienteOperacao));
}
$clienteOperacao = GetClientOperacao($matricula)['cont_identificador'] ?? "";
/*
$dados = RetornaAbandon($dbcon);
$linkAbandonadas = !$dados ? $dados : sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=230', ' agtRelSupAbandonada ' , ' 900 ' , ' 500 ' , ' scrollbars = YES');\" > < span style = \"font-size:9px;\" > abandonadasRet< / span > %s< / a > ", $dados);
$smarty->assign('abandonadasRet',$linkAbandonadas);
*
*/
if ($clienteOperacao) {
$smarty->assign('clienteoperacao', sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=45&formAction=4&id=%s&refresh=1', ' clienteOperacao ' , ' 760 ' , ' 600 ' , ' resizable = NO,scrollbars=NO');\" > < img src = \"imgSite/usuarios.gif\" alt = \"Ir para a Tela do Cliente \ " width = \"25\" border = \"0\" title = \"Visualiza as Informações do cliente ! \ " / > < / a > ", $clienteOperacao));
}
GetTemplate($smarty, $tplAgente);
} else {
/*
@ -451,7 +424,7 @@ if (!IsAjax()) {
$clienteOperacao = GetClientOperacao($matricula)['cont_identificador'];
if ($clienteOperacao) {
$dadosMonitor['clienteoperacao'] = sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=45&formAction=4&id=%s&refresh=1', ' clienteOperacao ' , ' 760 ' , ' 600 ' , ' resizable = NO,scrollbars=NO');\" > < img src = \"imgSite/usuarios.gif\" alt = \"Ir para a Tela do Cliente \ " width = \"25\" border = \"0\" title = \"Visualiza as i nformações do cliente ! \ " / > < / a > ", $clienteOperacao);
$dadosMonitor['clienteoperacao'] = sprintf("< a href = \"javaScript:NovaJanela('index.php?idProg=45&formAction=4&id=%s&refresh=1', ' clienteOperacao ' , ' 760 ' , ' 600 ' , ' resizable = NO,scrollbars=NO');\" > < img src = \"imgSite/usuarios.gif\" alt = \"Ir para a Tela do Cliente \ " width = \"25\" border = \"0\" title = \"Visualiza as I nformações do cliente ! \ " / > < / a > ", $clienteOperacao);
}
//
@ -537,7 +510,7 @@ if (!IsAjax()) {
/*
* Ajusta o status dispnivel_atendimento com base na variavel de sessao SS_CK_DISPO, que tem seu valor modificado
* na funça o DisponivelAtendimento().
* na funçã o DisponivelAtendimento().
*/
if ($_SESSION["SS_CK_DISPO"] & & !$dadosMonitor["disponivel_atendimento"]) {
$dadosMonitor["disponivel_atendimento"] = 1;
@ -567,7 +540,7 @@ if (!IsAjax()) {
/*
* $dispIntegracao -> Indica que dados obtidos de uma integração serão mostrados no campo do discador.
* $dispIntegracao -> Indica que dados obtidos de uma integração seriam mostrados no campo do discador.
*/
if (!$dispIntegracao) {
$dadosMonitor['disp_param0'] = 'Identificador';
@ -671,7 +644,7 @@ function TransfPesquisa($db) {
$query = "select canal, uniqueid, dac from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($db, $query);
if (!$result || !pg_num_rows($result)) {
GeraExcept("Não foi possível obter i nformações da chamada!");
GeraExcept("não foi possível obter I nformações da chamada!");
}
$row = @pg_fetch_row($result);
@ -684,20 +657,20 @@ function TransfPesquisa($db) {
*/
GravaFull($idProgPesquisa, $uid, 'O agente clicou em transferir pesquisa!');
if (!$canal) {
GeraExcept("N ão foi possível recuperar o canal para realizar a transferencia!");
GeraExcept("n ão foi possível recuperar o canal para realizar a transferencia!");
}
$_SESSION[AGT_CHANNEL_TRANSF] = $canal;
if (!GetUrl(AST_TRANSF_PESQUISA)) {
GeraExcept("N ão foi possível realizar a transferencia!");
GeraExcept("n ão foi possível realizar a transferencia!");
}
$sql = sprintf("INSERT INTO pbx_pesquisa_log (uniqueid, id_dac, fila, matricula, pl_id, plog_log) VALUES (%s, %s, %s, %s, %s, %s);", QuotedStr($uid), QuotedStr(GetDacCod($db, $dac)), QuotedStr($dac), QuotedStr($matricula), QuotedStr($plId), QuotedStr('MANUAL'));
$rst = pg_query($db, $sql);
if (!$rst) {
GeraExcept("N ão foi possível registrar o envio para a pesquisa!");
GeraExcept("n ão foi possível registrar o envio para a pesquisa!");
}
/*
@ -794,7 +767,7 @@ function LiberaDiscador($db) {
$uid = $uid ? QuotedStr($uid) : 'null';
try {
if ((GetDadosDiscador($dac, 0) === false)) {
GeraExcept("ERRO;N ão há atendimento pendente!");
GeraExcept("ERRO;n ão há atendimento pendente!");
}
/*
* se a classificação ogrigatória estiver configurada,
@ -808,7 +781,7 @@ function LiberaDiscador($db) {
*/
if ($_SESSION[SS_STATUS_AGENTE] == 'OCUPADO') {
GeraExcept("ERRO; Não é possível encerrar o atendimento quando \"Ocupado\"!");
GeraExcept("ERRO; não ? possível encerrar o atendimento quando \"Ocupado\"!");
};
if (GetExigeClas() & & !ChamdaClassificadaAgente($db, $matricula)) {
GeraExcept("ERRO;Para gravar o atendimento a chamda deve estar classificada!");
@ -816,7 +789,7 @@ function LiberaDiscador($db) {
$result = pg_query($db, 'begin');
if (!$result) {
GeraExcept("ERRO;N ão foi iniciar uma transação!");
GeraExcept("ERRO;n ão foi iniciar uma transação!");
}
$inTran = 1;
@ -835,7 +808,7 @@ function LiberaDiscador($db) {
$query = sprintf($query, QuotedStr($liberar), QuotedStr($status), QuotedStr($matricula), $uid, QuotedStr($confId));
$result = pg_query($db, $query);
if (!$result || !pg_affected_rows($result)) {
GeraExcept("ERRO;N ão foi possível atualizar o número informado!");
GeraExcept("ERRO;n ão foi possível atualizar o número informado!");
}
/*
@ -857,17 +830,9 @@ function LiberaDiscador($db) {
GeraExcept("ERRO;Erro ao alterar o status da operação! Query: " . $query);
};
// if (!$liberar) {
// if (GetDispoDiscador()) {
// DisponivelAtendimento();
// SetDispoDiscador(false);
// }
// }
$result = pg_query($db, 'commit');
if (!$result) {
GeraExcept("ERRO;N ão foi finalizar a transação!");
GeraExcept("ERRO;não foi finalizar a transação!");
}
echo sprintf("OK;Liberação executada com sucesso!;%s", ($liberar ? 'S' : 'N'));
@ -908,7 +873,7 @@ function AtivaDiscador($db) {
$inTran = 0;
$result = pg_query($db, 'begin');
if (!$result) {
GeraExcept("ERRO;N ão foi possível iniciar a transação!");
GeraExcept("ERRO;n ão foi possível iniciar a transação!");
}
$inTran = 1;
@ -917,7 +882,7 @@ function AtivaDiscador($db) {
$query = "update pbx_supervisor_agentes set status_discador = '$dispo', cont_identificador = '' where matricula = '$matricula'";
$result = pg_query($db, $query);
if (!$result) {
GeraExcept("ERRO;N ão foi possível realizar a operação!");
GeraExcept("ERRO;n ão foi possível realizar a operação!");
}
if ($dispo & & GetAgenteDisponivelFila()) {
@ -930,10 +895,10 @@ function AtivaDiscador($db) {
$result = pg_query($db, 'commit');
if (!$result) {
GeraExcept("ERRO;N ão foi possível finalizar a transação!");
GeraExcept("ERRO;n ão foi possível finalizar a transação!");
}
echo "OK;O peração realizada com sucesso!";
echo "OK;o peração realizada com sucesso!";
} catch (Exception $ex) {
RegistraLogAgente("AtivaDiscador", $ex->getMessage(), $ex);
echo $ex->getMessage();
@ -948,12 +913,12 @@ function IncluiDiscador($db) {
$matricula = GetMatricula();
$dadosDiscador = GetDadosDiscador($dac, 0);
if ($dadosDiscador === false) {
GeraExcept('ERRO@N ão foi possível acessar os dados da campanha');
GeraExcept('ERRO@n ão foi possível acessar os dados da campanha');
}
$result = pg_query($db, 'begin');
if (!$result) {
GeraExcept('ERRO@N ão foi possível iniciar uma transação!');
GeraExcept('ERRO@n ão foi possível iniciar uma transação!');
}
$inTran = 1;
@ -963,10 +928,10 @@ function IncluiDiscador($db) {
$query = sprintf("select '' from pbx_campanha_contato_fone where cont_id = '%s' and conf_fone = '%s'", $dadosDiscador['cont_id'], $numero);
$result = pg_query($db, $query);
if (!$result) {
GeraExcept('ERRO@N ão foi possível verificar a lista do contato!');
GeraExcept('ERRO@n ão foi possível verificar a lista do contato!');
}
if (pg_num_rows($result)) {
GeraExcept('ERRO@N úmero já cadastrado para este contato!');
GeraExcept('ERRO@n úmero já cadastrado para este contato!');
}
/*
@ -976,7 +941,7 @@ function IncluiDiscador($db) {
$query = sprintf($query, QuotedStr($dadosDiscador['cmp_id']), QuotedStr($dadosDiscador['list_id']), QuotedStr($dadosDiscador['cont_id']), QuotedStr($numero));
$result = pg_query($db, $query);
if (!$result) {
GeraExcept('ERRO@N ão foi possível gravar o número informado!');
GeraExcept('ERRO@n ão foi possível gravar o número informado!');
}
/*
@ -1000,7 +965,7 @@ function IncluiDiscador($db) {
$query = sprintf($query, QuotedStr($listaFones), QuotedStr($dadosDiscador['cmpo_id']));
$result = pg_query($db, $query);
if (!$result) {
GeraExcept('ERRO@N ão foi possível atualizar a lista do contato!');
GeraExcept('ERRO@n ão foi possível atualizar a lista do contato!');
}
/*
@ -1010,13 +975,13 @@ function IncluiDiscador($db) {
$result = pg_query($db, 'commit');
if (!$result) {
GeraExcept('ERRO@N ão foi possível finalizar a transação!');
GeraExcept('ERRO@n ão foi possível finalizar a transação!');
}
/*
* sucesso retorna a lista de telefones.
*/
echo "OK@O peração realizada com sucesso!@$listaFones";
echo "OK@o peração realizada com sucesso!@$listaFones";
} catch (Exception $ex) {
if ($inTran)
pg_query($db, 'rollback');
@ -1036,13 +1001,13 @@ function StatusFoneDiscador($db, $silent = 0) {
$query = sprintf($query, QuotedStr($status), QuotedStr(GetMatricula()), $uid, QuotedStr($confId));
$result = pg_query($db, $query);
if (!$result || !pg_affected_rows($result)) {
GeraExcept("ERRO;N ão foi possível atualizar o número informado!;$confId;0");
GeraExcept("ERRO;n ão foi possível atualizar o número informado!;$confId;0");
}
if ($silent) {
return true;
}
echo "OK;O peração realizada com sucesso!;$confId;$status";
echo "OK;o peração realizada com sucesso!;$confId;$status";
} catch (Exception $ex) {
RegistraLogAgente("StatusFoneDiscador", $ex->getMessage(), $ex);
if ($silent) {
@ -1059,10 +1024,10 @@ function FuncoesOperacao() {
$query = sprintf($query, QuotedStr($_REQUEST['carregaFones']));
$result = pg_query($query);
if (!$result) {
GeraExcept("ERRO;N ão foi possível carregar a lista de telefones!");
GeraExcept("ERRO;n ão foi possível carregar a lista de telefones!");
}
echo "OK;O peração realizada com sucesso!";
echo "OK;o peração realizada com sucesso!";
}
if (isset($_REQUEST['discagemInicial'])) {
@ -1070,10 +1035,10 @@ function FuncoesOperacao() {
$query = sprintf($query, QuotedStr($_REQUEST['discagemInicial']));
$result = pg_query($query);
if (!$result) {
GeraExcept("ERRO;N ão foi possível realizar a discagem!");
GeraExcept("ERRO;n ão foi possível realizar a discagem!");
}
echo "OK;O peração realizada com sucesso!";
echo "OK;o peração realizada com sucesso!";
}
} catch (Exception $ex) {
RegistraLogAgente("FuncoesOperacao", $ex->getMessage(), $ex);
@ -1098,23 +1063,23 @@ function GravaProtocoloExterno($dispMsg = true) {
GeraExcept("Erro consultar banco de dados!");
}
if (!pg_num_rows($result)) {
GeraExcept("N ão foi possível concluir a operação, \"Agente não Conectado\" registro não localizado!!");
GeraExcept("n ão foi possível concluir a operação, \"Agente não Conectado\" registro não localizado!!");
}
$dados = pg_fetch_array($result);
$uid2 = trim($dados['uniqueid2']);
if (!$uid2) {
GeraExcept("N ão foi possível concluir a operação, \"Registro não Localizado\"!");
GeraExcept("n ão foi possível concluir a operação, \"Registro não Localizado\"!");
}
$query = sprintf("update pbx_protocolo_reg set protoparceiro = %s where uniqueid = %s", QuotedStr($protoExterno), QuotedStr($uid2));
$result = pg_query($query);
if (!$result || !pg_affected_rows($result)) {
GeraExcept("N ão foi possível registrar a informação!");
GeraExcept("n ão foi possível registrar a informação!");
}
if ($dispMsg) {
echo "O peração concluida com sucesso!";
echo "o peração concluida com sucesso!";
}
return true;
} catch (Exception $ex) {
@ -1133,13 +1098,17 @@ function DadosAtualiza($dbcon) {
$arControle = GetInfoControle();
// print_r($arControle); exit;
/*
* Verifica o tempo de atuzliza ção do servidor,
* Verifica o tempo de atuzlizção do servidor,
* se for inferior a 10s usa o servidor do su-
* pervisor para obter os dados, do contrário
* utiliza o acesso direto ao banco de dados.
*/
$ultAtu = time() - $arControle['ultAtulizacao'];
$ultAtu = time();
if($arControle){
$ultAtu = $ultAtu - $arControle['ultAtulizacao'];
}
if ($ultAtu < 10 ) {
$statusServer = true;
@ -1281,7 +1250,7 @@ function EntraPausa($db, $codMotivo) {
$result = pg_query($db, "commit");
if (!$result) {
GeraExcept("Nao foi concluir a remoça o da pausa!");
GeraExcept("Nao foi concluir a remoçã o da pausa!");
}
$_SESSION[SS_PAUSA_AGENTE] = 1;
@ -1333,7 +1302,7 @@ function SairPausa($db) {
}
/*
* Remove da pausa do asterisk somente se a opç ao disponivel atendimento nao
* Remove da pausa do asterisk somente se a op? ao disponivel atendimento nao
* estiver marcada,
*/
if (IsAgenteDisponivel($db, $matricula)) {
@ -1360,7 +1329,7 @@ function SairPausa($db) {
$result = $result & & @pg_affected_rows($result);
if (!$result) {
GeraExcept("Nao foi possivel atualizar as informaço es de pausa na supervisao!");
GeraExcept("Nao foi possivel atualizar as informaçõ es de pausa na supervisao!");
}
@ -1378,12 +1347,12 @@ function SairPausa($db) {
$result = $result & & @pg_affected_rows($result);
if (!$result) {
GeraExcept("Nao foi possivel atualizar as informaço es de pausa no sistema!");
GeraExcept("Nao foi possivel atualizar as informaçõ es de pausa no sistema!");
}
$result = pg_query($db, "commit");
if (!$result) {
GeraExcept("Nao foi concluir a remoça o da pausa!");
GeraExcept("Nao foi concluir a remoçã o da pausa!");
}
SetMsgAgente("O agente foi retirado da pausa!");
@ -1413,14 +1382,14 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
try {
if (!$ramal) {
$msg = "N ão há ramal configurado!";
$msg = "n ão há ramal configurado!";
GeraExcept($msg);
}
if (VerficaAgenteLogado($db)) {
$ramalCon = GetRamalAgenteLogado($db);
$msg = "N ão é possível conectar ao servidor, o Agente já está Conectado no Ramal: $ramalCon!";
$msg = "n ão é possível conectar ao servidor, o Agente já está Conectado no Ramal: $ramalCon!";
GeraExcept($msg);
}
@ -1430,27 +1399,27 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
LimpaConexao($db);
if (VerificaRamalLogado($db, $dacCheck, $agtCheck)) {
$msg = "N ão é possível conectar ao servidor, Ramal: \"$ramal\" já conectado! Dac: \"$dacCheck\" Agente: \"$agtCheck\"";
$msg = "n ão é possível conectar ao servidor, Ramal: \"$ramal\" já conectado! Dac: \"$dacCheck\" Agente: \"$agtCheck\"";
GeraExcept($msg);
}
if ($ramalEst) {
$msg = "Não é possível conectar ao servidor, Ramal: \"$ramal\" está tico na(s) fila(s): \"[$ramalEst]\"!";
$msg = "não é possível conectar ao servidor, Ramal: \"$ramal\" est? tico na(s) fila(s): \"[$ramalEst]\"!";
GeraExcept($msg);
}
if (VerificaMaxAgenteLogado($db) ) {
$msg = "Não é possível conectar o Agente! O número m áximo de \"PAs\" simultaneos já foi atingido!";
$msg = "não é possível conectar o Agente! O número M áximo de \"PAs\" simultaneos já foi atingido!";
GeraExcept($msg);
}
if (VerificaRamalSigame($db, $ramal)) {
$msg = "N ão é possível conectar ao servidor, Ramal: \"$ramal\" possui siga-me ativado";
$msg = "n ão é possível conectar ao servidor, Ramal: \"$ramal\" possui siga-me ativado";
GeraExcept($msg);
}
if (VerificaClassObrigatoria($db, $dac)) {
$msg = "Está configurado \"C lassificação Obrigatória\", mas não há clssificações disponiveis para este Dac!";
$msg = "Está configurado \"c lassificação Obrigatória\", mas não há clssificações disponiveis para este Dac!";
GeraExcept($msg);
}
@ -1461,7 +1430,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
$result = pg_query($db, $query);
if (!$result) {
$msg = "N ão foi possível consultar o DAC!";
$msg = "n ão foi possível consultar o DAC!";
GeraExcept($msg);
}
$row = pg_fetch_row($result);
@ -1472,7 +1441,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
if ($modoAtendimento != "default") {
$_SESSION[SS_MODO_ATENDIMENTO] = $modoAtendimento == 'manual' ? "Manual" : "Automático";
$_SESSION[SS_MODO_ATENDIMENTO_COD] = $modoAtendimento == 'manual' ? ATENDIMENTO_MANUAL : ATENDIMENTO_AUTOMATICO;
$tpAtend != $_SESSION[SS_MODO_ATENDIMENTO_COD] ? $jsStartup[] = "alert('V ocê foi conectado no modo atendimento {$_SESSION[SS_MODO_ATENDIMENTO]}');" : '';
$tpAtend != $_SESSION[SS_MODO_ATENDIMENTO_COD] ? $jsStartup[] = "alert('v ocê foi conectado no modo atendimento {$_SESSION[SS_MODO_ATENDIMENTO]}');" : '';
} else {
$_SESSION[SS_MODO_ATENDIMENTO] = $tpAtend == ATENDIMENTO_MANUAL ? "Manual" : "Automático";
$_SESSION[SS_MODO_ATENDIMENTO_COD] = $tpAtend;
@ -1499,7 +1468,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
*/
if (!GetUrl(AST_LOGIN_AGENTE)) {
$msg = "N ão foi possível logar o agente!";
$msg = "n ão foi possível logar o agente!";
GeraExcept($msg);
}
@ -1514,7 +1483,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
$result = pg_query($db, $query);
if (!$result) {
$msg = "N ão foi possível verificar a conexão do agente!";
$msg = "n ão foi possível verificar a conexão do agente!";
GeraExcept($msg);
}
@ -1526,7 +1495,10 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
$verConexao = true;
break;
}
WriteLog(sprintf("Script: %s Data: %s Cmd: %s\n", $argv[0], (date("Y-m-d H:m:i") . '.' . microtime(true)), $query), "/var/log/asterisk/log_erro_pabx.log");
$NumArgv = $argv[0] ?? "";
WriteLog(sprintf("Script: %s Data: %s Cmd: %s\n", $NumArgv, (date("Y-m-d H:m:i") . '.' . microtime(true)), $query), "/var/log/asterisk/log_erro_pabx.log");
usleep(500000);
}
@ -1569,7 +1541,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
$result = pg_query($db, $query);
$result = $result & & pg_affected_rows($result);
if (!$result) {
$msg = "N ão foi possível registrar o login do agente no sistema!";
$msg = "n ão foi possível registrar o login do agente no sistema!";
GeraExcept($msg);
}
@ -1582,13 +1554,13 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
$result = pg_query($db, $query);
$result = $result & & pg_affected_rows($result);
if (!$result) {
$msg = "N ão foi possível registrar a pausa do login!";
$msg = "n ão foi possível registrar a pausa do login!";
GeraExcept($msg);
}
$result = pg_query($db, "commit");
if (!$result) {
$msg = "N ão foi possível finalizar o registro de login do agente!";
$msg = "n ão foi possível finalizar o registro de login do agente!";
GeraExcept($msg);
}
/*
@ -1598,7 +1570,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend) {
*/
@AtivaNumeroDiscagem($db, $matricula);
SetMsgAgente("O peração realizada com sucesso!");
SetMsgAgente("o peração realizada com sucesso!");
SetStatusAgente(1);
$_SESSION[SS_PAUSA_AGENTE] = 1;
$_SESSION[SS_PAUSA_AGENTE_MOTIVO] = $idMotivoPausa;
@ -1677,7 +1649,7 @@ function DesConectaAgenteRt($db, $type = '') {
$result = pg_query($db, "begin");
if (!$result) {
GeraExcept("N ão foi possível iniciar a desconexão do agente!");
GeraExcept("n ão foi possível iniciar a desconexão do agente!");
}
//atualiza dados do supervisor
@ -1689,7 +1661,7 @@ function DesConectaAgenteRt($db, $type = '') {
$result = pg_query($db, $query);
if (!$result) {
GeraExcept("N ão foi possível remover o agente da supervisão!");
GeraExcept("n ão foi possível remover o agente da supervisão!");
}
@ -1707,7 +1679,7 @@ function DesConectaAgenteRt($db, $type = '') {
$result = pg_query($db, "commit");
if (!$result) {
GeraExcept("N ão foi possível finalizar o registro de logoff do agente!");
GeraExcept("n ão foi possível finalizar o registro de logoff do agente!");
}
SetMsgAgente("Agente desconectado com sucesso!");
@ -1837,7 +1809,7 @@ function LimpaConexao($db) {
/*
* Desliga a chamada corrente
* e desconecta o usua rio do asterisk
* e desconecta o usuá rio do asterisk
*/
$query = "select canal, canal_transfer, canal_agente, ramal, upper(modo_atendimento) as modo_atendimento, dac, uniqueid, status from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($db, $query);
@ -1946,7 +1918,7 @@ function ClassificaChamada($db) {
GeraExcept("ERRO; Protocolo Inválido!");
}
if (!GravaProtocoloExterno(false)) {
GeraExcept("ERRO; N ão foi possível gravar o protocolo!");
GeraExcept("ERRO; n ão foi possível gravar o protocolo!");
}
}
@ -1958,18 +1930,18 @@ function ClassificaChamada($db) {
$result = pg_query($db, 'begin');
if (!$result) {
GeraExcept("ERRO;N ão foi possível iniciar o registro da classificação no sistema!");
GeraExcept("ERRO;n ão foi possível iniciar o registro da classificação no sistema!");
}
$inTran = 1;
/*
* Esta i nformações são utilizadas no relatorio de abandonadas na fila para identificar
* Esta I nformações são utilizadas no relatorio de abandonadas na fila para identificar
* qdo o agente não esta recdebendo uma chamada por não ter classificado a mesma estando
* portanto desabilitado de receber chamadas o que pode causar abandono.
*/
$query = "update pbx_registra_classificacao set rgc_saida = now(), matricula_reg = '$matricula' where uid = '$uniqueid' and rgc_saida is null";
$result = pg_query($db, $query);
if (!$result) {
GeraExcept("ERRO;N ão foi possível registrar a classificação no sistema!");
GeraExcept("ERRO;n ão foi possível registrar a classificação no sistema!");
}
/*
* Registra a classificação.
@ -1994,24 +1966,24 @@ function ClassificaChamada($db) {
$erro = @pg_last_error();
if (stripos($erro, "duplicate key ") !== false) {
GeraExcept("ERRO;Esta C lassificação já foi registrada!");
GeraExcept("ERRO;Esta c lassificação já foi registrada!");
}
GeraExcept("ERRO;N ão foi possível registrar a classificação!");
GeraExcept("ERRO;n ão foi possível registrar a classificação!");
}
/*
* Atualizar o supervisor.
*/
if (!SetaClassificaChamado($db, 1, 1)) {
GeraExcept("ERRO;N ão foi possível atualizar a supervisão!");
GeraExcept("ERRO;n ão foi possível atualizar a supervisão!");
}
$result = pg_query($db, 'commit');
if (!$result) {
GeraExcept("ERRO;N ão foi possível concluir o registro da classificação no sistema!");
GeraExcept("ERRO;n ão foi possível concluir o registro da classificação no sistema!");
}
echo "OK;C lassificação registrada com sucesso!";
echo "OK;c lassificação registrada com sucesso!";
} catch (Exception $ex) {
RegistraLogAgente("ClassificaChamada", $ex->getMessage(), $ex);
if ($inTran) {
@ -2070,7 +2042,7 @@ function AgtCallRt($db) {
*/
$result = pg_query($db, "begin");
if (!$result) {
GeraExcept("1;ERRO;N ão foi possível iniciar a operação!");
GeraExcept("1;ERRO;n ão foi possível iniciar a operação!");
}
$inTran = 1;
AtualizaNumDiscador($db, $confId, $numeroDiscar);
@ -2078,7 +2050,7 @@ function AgtCallRt($db) {
$_SESSION[AGT_NUM_DISC] = $numeroDiscar;
if (!GetUrl(AST_DISCAR)) {
GeraExcept("0;ERRO;N ão foi possível discar para o número informado!");
GeraExcept("0;ERRO;n ão foi possível discar para o número informado!");
}
/*
@ -2093,21 +2065,21 @@ function AgtCallRt($db) {
$result = pg_query($db, "begin");
if (!$result) {
GeraExcept("1;ERRO;Não foi possível iniciar a t ransferência!");
GeraExcept("1;ERRO;não foi possível iniciar a T ransferência!");
}
$inTran = 1;
/*
* obtem i nformações do canal.
* obtem I nformações do canal.
*/
$query = "select canal, canal_agente from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($db, $query);
if (!$result) {
GeraExcept("1;ERRO;Não foi possível obter informações sobre o canal para t ransferência!");
GeraExcept("1;ERRO;não foi possível obter Informações sobre o canal para T ransferência!");
}
$row = @pg_fetch_row($result);
if (!$row[0]) {
GeraExcept("1;ERRO;Não existe canal disponível para realizar a t ransferência!");
GeraExcept("1;ERRO;não existe canal disponível para realizar a T ransferência!");
}
/*
* Seta o canal para discagem
@ -2122,7 +2094,7 @@ function AgtCallRt($db) {
*/
GetUrl(AST_SET_VAR);
if (!GetUrl(AST_TRANSFERIR)) {
GeraExcept("1;ERRO;N ão foi possível transferir para o número informado!");
GeraExcept("1;ERRO;n ão foi possível transferir para o número informado!");
}
// if (!GetExigeClas() || !GetDisponivelAtendimetno()) {
@ -2137,12 +2109,12 @@ function AgtCallRt($db) {
$result = $result & & pg_affected_rows($result);
if (!$result) {
GeraExcept("1;ERRO;Não foi possível registrar a t ransferência para o número informado!");
GeraExcept("1;ERRO;não foi possível registrar a T ransferência para o número informado!");
}
$result = pg_query($db, "commit");
if (!$result) {
GeraExcept("1;ERRO;Não foi possível finalizar a t ransferência!");
GeraExcept("1;ERRO;não foi possível finalizar a T ransferência!");
}
echo "1;OK;Transferência realizada com sucesso!";
@ -2170,19 +2142,19 @@ function IniciaTransferenciaConsultaRt() {
$query = "select canal, canal_transfer, canal_agente, ramal, nome, dac, uniqueid from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("2;ERRO;Não foi possivel obter i nformações sobre a chamada!");
GeraExcept("2;ERRO;não foi possivel obter I nformações sobre a chamada!");
}
if (!pg_num_rows($result)) {
GeraExcept("2;WNG;N ão há nenhuma ligação em curso!");
GeraExcept("2;WNG;n ão há nenhuma ligação em curso!");
}
/*
* Coleta i nformações sobre a chamada.
* Coleta I nformações sobre a chamada.
*/
$row = @pg_fetch_array($result);
if (!$row["canal"]) {
GeraExcept("8;ERRO;Não há canal disponível para realizar a t ransferência!");
GeraExcept("8;ERRO;não há canal disponível para realizar a T ransferência!");
}
$_SESSION[AGT_CHANNEL_TRANSF] = $row["canal"];
@ -2223,11 +2195,11 @@ function IniciaTransferenciaConsultaRt() {
// }
if ($moduAuto & & !$result) {
GeraExcept("2;ERRO;N ão foi possível discar para o agente!");
GeraExcept("2;ERRO;n ão foi possível discar para o agente!");
}
/*
* Tenta alterar as i nformações no agente.
* Tenta alterar as I nformações no agente.
*/
$query = "update pbx_supervisor_agentes set canal_transfer = 'Agent/$matricula' where matricula = '$matricula'";
pg_query($dbcon, $query);
@ -2243,13 +2215,13 @@ function IniciaTransferenciaConsultaRt() {
GetUrl(AST_EXEC_AMI);
$result = GetUrl(AST_TRCONSULTA_TRANSFERE_ABORTA);
if (!$result) {
GeraExcept("2;ERRO;Não foi possível abortar t ransferência!");
GeraExcept("2;ERRO;não foi possível abortar T ransferência!");
}
echo "2;OK;Transferência interropida";
/*
* Tenta alterar as i nformações no agente.
* Tenta alterar as I nformações no agente.
*/
$query = "update pbx_supervisor_agentes set canal_transfer = '' where matricula = '$matricula'";
pg_query($dbcon, $query);
@ -2280,7 +2252,7 @@ function DesligarChamadaRt() {
$query = "select canal, canal_transfer, canal_agente, ramal, nome, dac, uniqueid, status, tipo_ligacao from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("ERRO;Não foi possível consultar i nformações da chamada!");
GeraExcept("ERRO;não foi possível consultar I nformações da chamada!");
}
$row = @pg_fetch_array($result);
@ -2324,7 +2296,7 @@ function DesligarChamadaRt() {
$result = GetUrl(AST_DESLIGAR_LIGACAO);
if (!$result) {
GeraExcept("ERRO;N ão foi possível transferir a chamada! TRANSFERE");
GeraExcept("ERRO;n ão foi possível transferir a chamada! TRANSFERE");
}
/*
@ -2351,7 +2323,7 @@ function DesligarChamadaRt() {
*/
$result = pg_query($dbcon, 'begin');
if (!$result) {
GeraExcept("ERRO;N ão foi possível iniciar o procedimento para desligar a chamada!");
GeraExcept("ERRO;n ão foi possível iniciar o procedimento para desligar a chamada!");
}
$inTran = 1;
@ -2378,7 +2350,7 @@ function DesligarChamadaRt() {
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("ERRO;N ão foi possível atualizar a supervisão!");
GeraExcept("ERRO;n ão foi possível atualizar a supervisão!");
}
/*
@ -2386,11 +2358,11 @@ function DesligarChamadaRt() {
*/
GetUrl(AST_DESLIGAR_LIGACAO);
//$result = GetUrl(AST_DESLIGAR_LIGACAO);
//if(!$result){ GeraExcept("ERRO;N ão foi possível desligar a chamada na central!"); }
//if(!$result){ GeraExcept("ERRO;n ão foi possível desligar a chamada na central!"); }
$result = pg_query($dbcon, 'commit');
if (!$result) {
GeraExcept("ERRO;Não foi possível finalizar o registro de informaço es!");
GeraExcept("ERRO;não foi possível finalizar o registro de informaçõ es!");
}
return "OK;Chamada encerrada";
@ -2412,14 +2384,14 @@ function IniciaPenduloRt() {
$query = "select canal, ramal, nome, dac, canal_agente, uniqueid, sala_2 from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("2;WNG;Não foi possível acessar i nformações sobre a chamada!");
GeraExcept("2;WNG;não foi possível acessar I nformações sobre a chamada!");
}
if (!pg_num_rows($result)) {
GeraExcept("2;WNG;N ão há nenhuma ligação em curso!");
GeraExcept("2;WNG;n ão há nenhuma ligação em curso!");
}
/*
* obtem i nformações sobre a chamada.
* obtem I nformações sobre a chamada.
*/
$row = pg_fetch_array($result);
if ($row["canal"])
@ -2429,7 +2401,7 @@ function IniciaPenduloRt() {
$result = GetUrl(AST_PENDULO_ADD_CANAIS);
if (!$result) {
$GeraExcept("2;ERRO;N ão foi possível iniciar a consulta!");
$GeraExcept("2;ERRO;n ão foi possível iniciar a consulta!");
}
return "2;OK;Pêndulo iniciado!";
@ -2459,7 +2431,7 @@ function DisponivelAtendimento($useTran = 1) {
$query = "select status, disponivel_atendimento from pbx_supervisor_agentes where matricula = '$matricula'";
$result = pg_query($dbcon, $query);
if (!$result) {
GeraExcept("ERRO;Erro consultar i nformações sobre o agente!");
GeraExcept("ERRO;Erro consultar I nformações sobre o agente!");
}
if (!pg_num_rows($result)) {
GeraExcept("ERRO;Informações sobre o agente não estão disponíveis!");
@ -2509,30 +2481,30 @@ function DisponivelAtendimento($useTran = 1) {
if ($useTran) {
$result = pg_query('begin');
if (!$result) {
GeraExcept("ERRO;Não foi possível iniciar o registro de informaço es!");
GeraExcept("ERRO;não foi possível iniciar o registro de informaçõ es!");
}
$inTran = 1;
}
$result = pg_query($query);
if (!$result) {
GeraExcept("ERRO;Não foi possível registrar informaço es sobre a indisponibilidade!");
GeraExcept("ERRO;não foi possível registrar informaçõ es sobre a indisponibilidade!");
}
$query = "update pbx_supervisor_agentes set disponivel_atendimento = '$newDispo' where matricula = '$matricula' ";
$result = pg_query($query);
if (!$result) {
GeraExcept("ERRO;Não foi possível alterar inforaço es para supervisao!");
GeraExcept("ERRO;não foi possível alterar informaçõ es para supervisao!");
}
if ($useTran) {
$result = pg_query('commit');
if (!$result) {
GeraExcept("ERRO;Não foi possível finalizar o registro de informaço es!");
GeraExcept("ERRO;não foi possível finalizar o registro de informaçõ es!");
}
}
echo "OK;O peração realizada com sucesso!";
echo "OK;o peração realizada com sucesso!";
} catch (Exception $ex) {
RegistraLogAgente("DisponivelAtendimento", $ex->getMessage(), $ex);
if ($inTran) {
@ -2679,7 +2651,7 @@ function ValidaProtoParceiro($proto) {
if ($ret) {
return $ret;
} else {
GeraExcept("ERRO;N ão foi possível validar o protocolo, verifique o protocolo digitado!");
GeraExcept("ERRO;n ão foi possível validar o protocolo, verifique o protocolo digitado!");
}
}