127.0.0.1:8000 watch-together / master server / websocket / messages / set-server-video-state.js
master

Tree @master (Download .tar.gz)

set-server-video-state.js @masterraw · history · blame

const watchrooms = require('../../utils/watchrooms');
const broadcast = require('../broadcast');

module.exports = function(user_id, data) {
    let invokeAt = Date.now() + watchrooms.get_invoke_delay(data.video_id);
    let new_state = watchrooms.update_video(data.video_id, Object.assign({
        invoked_by: user_id
    }, data.state), invokeAt);
    if (new_state) {
        broadcast({
            command: "set-client-video-state",
            data: {
                state: new_state,
                invoke_at: invokeAt
            }
        }, watchrooms.get(data.video_id).viewers);
    }
};