gravacoes
unknown
php
2 years ago
5.4 kB
6
Indexable
<!DOCTYPE html> <html> <head> <title>Player</title> <!-- Estilos CSS --> <link type="text/css" href="jplayer/skin/jplayer.css" rel="stylesheet"/> <style> .window { margin-top: 5px; margin-left: 70px; display: none; width: 0px; height: 0px; position: absolute; align: center; right: 200; left: 500; top: 30; float: right; background: #FFF; z-index: 9900; padding: 0px; border-radius: 10px; } </style> <!-- Bibliotecas --> <script type="text/javascript" src="jplayer/jquery.jplayer.min.js"></script> </head> <body> <?php //$uniqueid = $_GET['uniqueid'] ?? null; $uniqueid = isset($_GET['uniqueid']) ? $_GET['uniqueid'] : null; if ($uniqueid === null) { echo '-__Arquivo Inexistente.'; exit; } include('../conectar.php'); function convertePasta($uniqueid) { include('conectar.php'); $caminho = "asterisk_gravacoes/"; $select = "SELECT CONCAT(SUBSTR(`calldate`,6,2),'_',SUBSTR(`calldate`,1,4)) AS `mesAno` FROM `cdr` WHERE `uniqueid` = '".$uniqueid."' LIMIT 1"; $result = $conn->query($select); // Verifica se a consulta foi bem-sucedida if ($result === false) { die("Erro na consulta: " . $conn->error); } $numRows = $result->num_rows; if ($numRows > 0) { while ($row = $result->fetch_assoc()) { $mesAno = $row['mesAno']; $caminho = "asterisk_gravacoes/".$mesAno."/"; } } else { $caminho = "asterisk_gravacoes/"; } return $caminho; } function converter($arquivo, $uniqueid) { $arquivo = basename($arquivo); $tmpArquivo = basename($arquivo, ".WAV") . ".wav"; $tmp = 'jplayer/tmp/' . $tmpArquivo; $caminho = convertePasta($uniqueid); $tmpPath = '../' . $tmp; // Caminho completo para verificar a existência do arquivo if (file_exists($tmpPath)) { return true; // Arquivo já convertido e existente, não é necessário fazer novamente } // Armazena o caminho do arquivo original $arquivoPath = '/var/www/html/' . $caminho . $arquivo; // Comando completo a ser enviado para o socket $command = "Action: Login\r\nUserName: monitoramento\r\nSecret: shk1217\r\n\r\n"; $command .= "Action: Command\r\nCommand: file convert $arquivoPath /var/www/html/$tmp\r\n\r\n"; $command .= "Action: Logoff\r\n\r\n"; $timeout = 30; $socket = fsockopen("127.0.0.1", "5038", $errno, $errstr, $timeout); if (!$socket) { return 'Erro ao conectar ao servidor Asterisk'; // Trata o erro de conexão } // Escreve o comando no socket e lê todo o conteúdo de uma vez fwrite($socket, $command); $vardata = stream_get_contents($socket); fclose($socket); // Verifica a existência do arquivo temporário após a conversão return file_exists($tmpPath); } $arquivo = ''; // Procurar pelo arquivo com base somente em $uniqueid usando glob $uniqueidPattern = '/var/www/html/' . convertePasta($uniqueid) . '*' . $uniqueid . '*'; $uniqueidFiles = glob($uniqueidPattern); if (!empty($uniqueidFiles)) { // Caso encontre arquivos com o valor de $uniqueid, atualiza a variável $arquivo com o caminho do primeiro arquivo encontrado $arquivo = $uniqueidFiles[0]; if (converter($arquivo, $uniqueid)) { $arquivo = 'jplayer/tmp/' . basename($arquivo,".WAV").".wav"; } else { echo "Arquivo não convertido: " . $uniqueid . "<br>"; } } else { // Caso não encontre o arquivo pelo valor de $uniqueid, retorne uma mensagem ou realize outra ação adequada echo "Arquivo não encontrado para o uniqueid: " . $uniqueid . "<br>"; // Ou execute outra ação apropriada } ?> <script> $(document).ready(function() { $("#jquery_jplayer_1").jPlayer({ ready: function(event) { $(this).jPlayer("setMedia", { wav: "<?php echo $arquivo; ?>", wav: "<?php echo $arquivo; ?>" }); }, swfPath: "./", supplied: "wav, wav", wmode: "window", smoothPlayBar: true, keyEnabled: true }); $(".download").click(function() { window.open("jplayer/download.php?arquivo=<?php echo $arquivo; ?>"); }); $(".close").click(function() { $('#painelGravacao').css("display", "none"); }); }); </script> <div style="background-color: #FAFAFA !important; width: 420px; padding: 0px;"> <a style="font-size: 16px; color: #000 !important;" href="javascript:;" class="close">x</a> <audio style="width: 380px;" controls> <source src="<?php echo $arquivo; ?>" type="audio/wav"> </audio> </div> </body> </html>
Editor is loading...