From a09d21bb2f86b31141013e847872ae9648bd7215 Mon Sep 17 00:00:00 2001 From: Matheo Bonucia Date: Fri, 26 Jul 2024 20:48:20 +0000 Subject: [PATCH 1/4] inserido org_id nos inserts do monitor de agentes --- agente/agentert.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/agente/agentert.php b/agente/agentert.php index 5e60dc51..572d6791 100644 --- a/agente/agentert.php +++ b/agente/agentert.php @@ -1503,7 +1503,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend, $org_id) $verConexao = 0; $i = 0; while ($i++ < 10) { - $query = "select count(*) from pbx_supervisor_agentes where matricula = '$matricula' and upper(status) = 'PAUSA' "; + $query = "select count(*) from pbx_supervisor_agentes where matricula = '$matricula' and upper(status) = 'PAUSA' and org_id = $org_id "; $result = pg_query($db, $query); if (!$result) { @@ -1547,7 +1547,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend, $org_id) */ $query = "update pbx_supervisor_agentes set ramal = '$ramal', nome = '$login', dac = '$dacDesc', modo_atendimento = '$moduAtendDesc', duracao = now(), chamada_classificado = '2' - where matricula = '$matricula'"; + where matricula = '$matricula' and org_id = $org_id"; $result = pg_query($db, $query); $result = $result && pg_affected_rows($result); @@ -1561,7 +1561,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend, $org_id) * Registra o login do agente no sistema. * */ - $query = "insert into pbx_eventos_agentes(matricula,ramal,id_dac,\"login\", logoff, flag) values('$matricula', '$ramal',$dac, now(),now(),0)"; + $query = "insert into pbx_eventos_agentes(matricula,ramal,id_dac,\"login\", logoff, flag, org_id) values('$matricula', '$ramal',$dac, now(),now(),0, $org_id)"; $result = pg_query($db, $query); $result = $result && pg_affected_rows($result); if (!$result) { @@ -1574,7 +1574,7 @@ function ConnectaAgenteRt($db, $dac, $tpAtend, $org_id) */ $idMotivoPausa = GetMotivoLogin($db); $relEvt = '0'; - $query = "insert into pbx_eventos_agentes(matricula,ramal,id_dac,id_motivo_pausa,entrada_pausa,flag,relaciona_eventos, reg_proc) values('$matricula', '$ramal',$dac,$idMotivoPausa,now(),0,$relEvt, $regProc)"; + $query = "insert into pbx_eventos_agentes(matricula,ramal,id_dac,id_motivo_pausa,entrada_pausa,flag,relaciona_eventos, reg_proc, org_id) values('$matricula', '$ramal',$dac,$idMotivoPausa,now(),0,$relEvt, $regProc, $org_id)"; $result = pg_query($db, $query); $result = $result && pg_affected_rows($result); if (!$result) { From 8722280223745021fe0fc59e0bf3ee75f32648c0 Mon Sep 17 00:00:00 2001 From: Matheo Bonucia Date: Mon, 29 Jul 2024 14:05:51 +0000 Subject: [PATCH 2/4] corrigido bugs --- admin/cadRamais.php | 5 +++-- agente/agentert.php | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/admin/cadRamais.php b/admin/cadRamais.php index 3fa888e3..31728ccf 100644 --- a/admin/cadRamais.php +++ b/admin/cadRamais.php @@ -148,7 +148,7 @@ if ($_GET['ajax'] == 1) { $qtde = $_POST["qtde"]; //quantidade de ramais que tentar� criar if (MaxRamaisPermite($dbcon, $qtde)) { $z++; - $msg .= 'N�o � poss�vel realizar a opera��o! O n�mero m�ximo de ramais permitidos j� foi atingido!'; + $msg .= 'Não foi possível realizar a operação! O número máximo de ramais permitidos já foi atingido!'; } else { $senhaBranco = trim($secret) == ''; for ($i = 1; $i <= $qtde; $i++) { @@ -299,7 +299,7 @@ if ($_GET['ajax'] == 1) { } if ($passa && ($acao == "edita")) { $numeroOld = $_POST['numero_old']; - ApagaUrl($dbcon, $numeroOld); + ApagaUrl($dbcon, $numeroOld, $_SESSION['SSEmpresaPadrao']); $updPassRamal = $secret == MASCARA_PASSWORD ? '' : "secret='$secret',"; $updPassFacilidades = $senha_facilidade == MASCARA_PASSWORD ? '' : "senha_facilidade='$senha_facilidade',"; @@ -402,6 +402,7 @@ if ($_GET['ajax'] == 1) { CommandAsterisk2($dbcon, 'CADEADO', $nome, $cadeado); //executa insersao na base interna do asterisk CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome, $pertube); //executa insersao na base interna do asterisk CommandAsterisk2($dbcon, 'SENHA', $nome, $senha_facilidade); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'ORG_RAMAL', $org_id . $nome2, $nome2); if ($ispbx_tronco) { CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $ispbx_tronco . '/' . $nome); } else { diff --git a/agente/agentert.php b/agente/agentert.php index 572d6791..58ade412 100644 --- a/agente/agentert.php +++ b/agente/agentert.php @@ -2005,7 +2005,7 @@ function ClassificaChamada($db) $query = sprintf($query, QuotedStr($matricula), $clas, $clasItem, QuotedStr($uniqueid), $idContrib, $dac, $munId); } else { $query .= ") values(%s,%s,%s,%s,%s,%s,%d)"; - $query = sprintf($query, QuotedStr($matricula), $clas, $clasItem, QuotedStr($uniqueid), $dac, $munId); + $query = sprintf($query, QuotedStr($matricula), $clas, $clasItem, QuotedStr($uniqueid), $dac, $munId, $org_id); } $result = pg_query($db, $query); From 4c76eaa1fd24d489bdb96601778c73b2a0eb6ffe Mon Sep 17 00:00:00 2001 From: Matheo Bonucia Date: Mon, 29 Jul 2024 14:47:45 +0000 Subject: [PATCH 3/4] inserido org_id nas querys para buscar ramais no banco e inserido org_id para registrar os ramais no asterisk --- admin/cadRamais.php | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/admin/cadRamais.php b/admin/cadRamais.php index 31728ccf..2ca7398a 100644 --- a/admin/cadRamais.php +++ b/admin/cadRamais.php @@ -391,28 +391,28 @@ if ($_GET['ajax'] == 1) { $musicclass = 'default'; } //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'ESPERA', $nome, $espera); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $nome, $sigame_interno); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $nome, $sigame_externo); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $nome, $sigame_ocupado); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $nome, $sigame_nao_atende); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'GRAVACAO', $nome, $gravacao); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $nome, $gravacao_saida); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'MUSICA', $nome, $musicclass); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'CADEADO', $nome, $cadeado); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'NAOPERTUBE', $nome, $pertube); //executa insersao na base interna do asterisk - CommandAsterisk2($dbcon, 'SENHA', $nome, $senha_facilidade); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'ESPERA',$org_id . $nome, $espera); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'SIGAME-INTERNO', $org_id . $nome, $sigame_interno); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'SIGAME-EXTERNO', $org_id . $nome, $sigame_externo); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'SIGAME-OCUPADO', $org_id . $nome, $sigame_ocupado); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'SIGAME-NAOATENDE', $org_id . $nome, $sigame_nao_atende); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'GRAVACAO', $org_id . $nome, $gravacao); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'GRAVACAO-OUT', $org_id . $nome, $gravacao_saida); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'MUSICA', $org_id . $nome, $musicclass); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'CADEADO', $org_id . $nome, $cadeado); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'NAOPERTUBE', $org_id . $nome, $pertube); //executa insersao na base interna do asterisk + CommandAsterisk2($dbcon, 'SENHA', $org_id . $nome, $senha_facilidade); //executa insersao na base interna do asterisk CommandAsterisk2($dbcon, 'ORG_RAMAL', $org_id . $nome2, $nome2); if ($ispbx_tronco) { - CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $ispbx_tronco . '/' . $nome); + CommandAsterisk2($dbcon, 'DISPOSITIVO', $org_id . $nome, $ispbx_tronco . '/' . $nome); } else { - CommandAsterisk2($dbcon, 'DISPOSITIVO', $nome, $dispositivo); + CommandAsterisk2($dbcon, 'DISPOSITIVO', $org_id . $nome, $dispositivo); } - CommandAsterisk2($dbcon, 'BINA-NOME', $nome, $callerid); - CommandAsterisk2($dbcon, 'BINA-EXTERNO', $nome, $callerid2); - CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $nome, $timeout); - CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $nome, $ringTime); + CommandAsterisk2($dbcon, 'BINA-NOME', $org_id . $nome, $callerid); + CommandAsterisk2($dbcon, 'BINA-EXTERNO', $org_id . $nome, $callerid2); + CommandAsterisk2($dbcon, 'TIMEOUT-RAMAL', $org_id . $nome, $timeout); + CommandAsterisk2($dbcon, 'TEMPO-RING-RAMAL', $org_id . $nome, $ringTime); } //gera arquivos e executa o reload dos dados no asterisk if ($passa) { @@ -429,10 +429,10 @@ if ($_GET['ajax'] == 1) { if ($acao == "edita") { $id = $_GET["id"] ? $_GET["id"] : "0"; - $query = "SELECT * FROM pbx_sip_ramais where id=$id"; + $query = "SELECT * FROM pbx_sip_ramais where id=$id and org_id = $org_id"; $result = pg_query($dbcon, $query); } else { - $query = "SELECT * FROM pbx_sip_ramais where id is null"; + $query = "SELECT * FROM pbx_sip_ramais where id is null and org_id = $org_id"; $allow = 'ulaw,alaw'; } $result = pg_query($dbcon, $query); From 6ac0af89211c1df00ef6504b862ae7f08d16bb53 Mon Sep 17 00:00:00 2001 From: Matheo Bonucia Date: Mon, 29 Jul 2024 16:02:19 +0000 Subject: [PATCH 4/4] Setar valor do CallerID(num) a partir da consulta no sqlite3 --- asterisk/etc_asterisk/extensions_padrao.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/asterisk/etc_asterisk/extensions_padrao.conf b/asterisk/etc_asterisk/extensions_padrao.conf index 8f0a395d..a216f7da 100644 --- a/asterisk/etc_asterisk/extensions_padrao.conf +++ b/asterisk/etc_asterisk/extensions_padrao.conf @@ -1647,7 +1647,7 @@ exten => s,n,ExecIf($["X${BINA_TRONCO}" != "X"]?Set(CALLERID(num)=${BINA_TRONCO} exten => s,n,Return() exten => s,n(interno),GotoIf($["X${DB(BINA-NOME/${CHANNEL(peername)})}" = "X"]?fim) exten => s,n,Set(CALLERID(name)=${DB(BINA-NOME/${CHANNEL(peername)})}) -exten => s,n,Set(CALLERID(num)=${CALLERID(NUM)}) +exten => s,n,Set(CALLERID(num)=${DB(ORG_RAMAL/${CHANNEL(peername)})}) exten => s,n(fim),Return()