Hola a todos:
Estoy haciendo una pequeña pagina que activa/desactiva un checkbox por mensajes mediante socket.io.
Ahora necesitaria que cuando el checkbox esté activo suene una alarma y cuando se desactive se apague.
La parte de mensajes y activar, desactivar el checkbox la tengo funcionando, la parte de reproducir es sonido es la que me está costando, ya que aunque por consola veo que la funcion alarma.play() se ejecuta no suena nada, sin embargo si pongo un boton que lance el play si suena.
<body>
<div id="S1" class="control">
<div class="titulo">Alarma</div>
<div class="switch">
<input type="checkbox" onclick="send()">
<label></label>
</div>
</div>
<script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
<script src="http://code.jquery.com/jquery-1.11.1.js"></script>
<script>
var estado = 0;
var alarma = new Audio("alarma.mp3");
alarma.play();
alarma.preload = "auto";
alarma.loop = true;
var socket = io();
var valores = {S1:false};
function send(){
valores.S1 = $('#S1 input').prop("checked");
socket.emit('cSalidas', valores);
return false;
};
socket.on('cSalidas', function(valores){
$('#S1 input').prop("checked", valores.S1);
if(valores.S1 && estado==0){
alarma.play();
estado = 1;
console.log('play');
} else if(!valores.S1 && estado==1) {
alarma.pause();
estado = 0;
console.log('paused');
}
});
socket.emit('cSalidasInit');
</script>
<button onclick="alarma.play()">Reproducir</button>
</body>