Remote control your reveal.js presentation

Add this somewhere at the end of your presentation.php

function sync() {
$.ajax({url: "position", success: function(e){
      Reveal.slide(e);
    }
  });
}
if (!window.location.search.match( /master/gi ) ) {
	setInterval(sync,1000);
    Reveal.configure({
  		keyboard: {
    	13: null,
    	23: null,
        32: null,
        37: null,
        38: null,
        39: null,
        40: null,
        68: null
  		}
	});
}
Reveal.addEventListener( 'slidechanged', function(e) {
	 $.ajax({
	 	url: "write.php",
	 	type: "get",
	 	data: {"k":e.indexh}	 	
    });
});

write.php

$fp = fopen('position', 'w+');
$k=$get["k"];
fwrite($fp, $k);
fclose($fp);

presentation.php?master will control the presentation. A simple presentation.php even at a dozen locations will show it.