127.0.0.1:8000 watch-together / master server / websocket / utils.js
master

Tree @master (Download .tar.gz)

utils.js @masterraw · history · blame

const utils = require('../utils');
const log = require('../utils/log').create_logger("WSS");
const broadcast = require('./broadcast');
const watchrooms = require('../utils/watchrooms');

module.exports = {
    log: log,
    server_update_state: function(video_id, state) {
        let invokeAt = Date.now() + watchrooms.get_invoke_delay(video_id);
        broadcast({
            command: "set-client-video-state",
            data: {
                state: watchrooms.update_video(video_id, Object.assign({
                    invoked_by: "server"
                }, state), invokeAt),
                invoke_at: invokeAt
            }
        }, watchrooms.get(video_id).viewers);
    },
    handle_err: {
        res: function(respond, default_error_message) {
            return utils.handle_err.res({
                send: respond
            }, default_error_message);
        }
    },
    broadcast_storage: function(users) {
        return utils.get_storage_remaining().then(function(bytes) {
            broadcast({
                command: "server-storage-info",
                data: bytes
            }, users);
        }).catch(log.general.error);
    }
};