UNPKG

timesync

Version:

Time synchronization between peers

49 lines (41 loc) 1.3 kB
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <!-- include es5-shim and es5-shim when support for older browsers is needed --> <script src="https://cdnjs.cloudflare.com/ajax/libs/es5-shim/4.0.5/es5-shim.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.23.0/es6-shim.min.js"></script> <script src="/socket.io/socket.io.js"></script> <script src="/timesync/timesync.js"></script> <script> var socket1 = io('http://localhost:8081'); var ts = timesync.create({ server: socket1, interval: 5000 }); ts.on('sync', function (state) { console.log('sync ' + state + ''); }); ts.on('change', function (offset) { console.log('changed offset: ' + offset + ' ms'); }); ts.send = function (socket, data, timeout) { //console.log('send', data); return new Promise(function (resolve, reject) { var timeoutFn = setTimeout(reject, timeout); socket.emit('timesync', data, function () { clearTimeout(timeoutFn); resolve(); }); }); }; socket1.on('timesync', function (data) { //console.log('receive', data); ts.receive(null, data); }); </script> </head> <body> (see outputs in the developer console) </body> </html>