#!/usr/bin/php -q '' group by emp_vpn order by emp_vpn;"; if (!($resourceEmpresa = pg_query($queryEmpresas))) { registra_log("Erro ao buscar empresas no banco de dados da algar, script encerrado."); exit(0); } $empresas = pg_fetch_all($resourceEmpresa); foreach ($empresas as $empresa) { echo "\n ## CONECTANDO SERVIDOR {$empresa['emp_vpn']} ## \n"; $bdcon0 = pg_connect("host={$empresa['emp_vpn']} port=5432 dbname=pbx user=contacte password=ctepgSQL connect_timeout=10"); if (!$bdcon0) { continue; } adiciona_coluna($bdcon0); $queryChamadas = "select uniqueid, bloqueio_verificado from pbx_bilhetes where lastapp = 'Playback' " . "and (bloqueio_verificado is null or bloqueio_verificado = -1) " . "and lastdata in ('{$caminhoPadrao}{$bloqueios[0]}', " . "'{$caminhoPadrao}{$bloqueios[1]}', " . "'{$caminhoPadrao}{$bloqueios[2]}', " . "'{$caminhoPadrao}{$bloqueios[3]}')"; if (!($resChamadas = pg_query($bdcon0, $queryChamadas))) { registra_log("Falha ao procurar audios na tabela pbx_bilhetes do banco de dados do cliente {$empresa['emp_vpn']}"); continue; } if (!($chamadasCliente = pg_fetch_all($resChamadas))) { continue; } foreach ($chamadasCliente as $chamada) { $updateChamada = "update vds_chamadas set bloqueio_anatel = 1 where uid = '{$chamada['uniqueid']}'"; $queryChamada = pg_query($bdcon, $updateChamada); if ($queryChamada) { $updateCliente = "update pbx_bilhetes set bloqueio_verificado = 1 where uniqueid = '{$chamada['uniqueid']}'"; $queryCliente = pg_query($bdcon0, $updateCliente); if (!queryCliente) { $msg = "Erro ao atualizar bloqueio_verificado = 1 para a chamada de uid {$chamada['uniqueid']} na tabela pbx_bilhetes do banco de dados da empresa {$empresa['emp_vpn']} apesar de ter sido atualizado no banco de dados da algar"; registra_log($msg); } } else { if ($chamada['bloqueio_verificado'] == '-1') { $updateCliente = "update pbx_bilhetes set bloqueio_verificado = 2 where uniqueid = '{$chamada['uniqueid']}'"; if (!(pg_query($bdcon0, $updateCliente))) { $msg = "Erro ao atualizar bloqueio_verificado = 2 do audio {$chamada['uniqueid']} na tabela pbx_bilhetes do banco de dados do cliente {$empresa['emp_vpn']}"; registra_log($msg); } else { $msg = "O audio {$chamada['uniqueid']} foi atualizado para bloqueio_verificado = 2 no banco de dados do cliente {$empresa['emp_vpn']}," . " ou seja, foi marcado como erro e precisa ser analisado."; registra_log($msg); } } else if ($chamada['bloqueio_verificado'] == NULL) { $updateCliente = "update pbx_bilhetes set bloqueio_verificado = -1 where uniqueid = '{$chamada['uniqueid']}'"; if (!pg_query($bdcon0, $updateCliente)) { $msg = "Erro ao atualizar o audio {$chamada['uniqueid']} para bloqueio_verificado = -1 na tabela pbx_bilhetes do banco de dados do cliente {$empresa['emp_vpn']}"; registra_log($msg); } } $msg = "Erro ao atualizar a chamada de uid {$chamada['uniqueid']} para bloqueio_anatel = 1 da empresa de cnpj {$empresa['emp_vpn']} no banco de dados da algar."; registra_log($msg); } } } function adiciona_coluna($bdcon) { $query = "select bloqueio_verificado from pbx_bilhetes limit 1"; if (!pg_query($bdcon, $query)) { $queryColuna = "alter table pbx_bilhetes add column bloqueio_verificado integer"; pg_query($bdcon, $queryColuna); } } function registra_log($msg) { $fp = fopen('/var/log/asterisk/bloq_algar.log', 'a'); $now = date('Y-m-d H:i:s', time() - 3600); $sNow = "[{$now}] "; if ($fp) { fwrite($fp, $sNow . $msg . "\n"); fclose($fp); } } ?>