Pessoal, boa tarde!
Tenho uma aplicação JAVA que utiliza a biblioteca timer para verificar alguma mudança nos registros de uma tabela denominada suporte, quando um novo chamado é aberto, essa tabela sofre alteração e um áudio é disparado para alertar os colaboradores da área de infraestrutura.
if(QuantidadeInicial != dao.countAmountSupport()){
if(ManageScreens.get().login().login.getFkAcesso() == 3){
SoundJLayer soundToPlay = new SoundJLayer("audio.mp3");
soundToPlay.play();
QuantidadeInicial = dao.countAmountSupport();
String path = "\\\\X.X.X.X\\sits\\AUDIO\\audio.mp3";
File mp3File = new File(path);
MP3 musica = new MP3(mp3File);
musica.play();
ImageIcon icon = new ImageIcon(getClass().getResource("/br/com/sits/icons/help.png"));
JOptionPane.showMessageDialog(this, "HELP - Um chamado foi aberto.", "ATENÇÃO", JOptionPane.WARNING_MESSAGE, icon);
QuantidadeInicial = dao.countAmountSupport();
}
}
O código acima está dentro da ação TimerOnTimer e é executada a cada 10s. A aplicação funciona, o problema é que chega um determinado momento o audio para de ser executado, sendo necessário fechar e abrir novamente o sistema para ouvir o áudio novamente. Alguém tem alguma ideia de como ajudar? Pensei em utilizar Threads para gerenciar melhor o áudio, aguardo o retorno de vocês…