server.js 1.92 KB
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
// var xss = require('xss');
var defaultMsgs = [
    '保持队形666',
    'awsl',
    '前方高能预警',
    '果然是名场面!!!',
    '正片开始',
    '妙啊~~~',
    '还是这位童鞋霸气V5',
    '福利要来了,大家冲鸭~~~~~~',
    '###(°ο°)~ @',
    'hhhhhhhhhhhhhh',
    '哇哦~这画面太美',
    '我要看节目,我要吃瓜',
    '红包来一波~',
    '灯光给我,我要秀啊',
    '掌声来啦,吧唧吧唧吧唧吧唧吧唧吧唧',
    '谁给我私发个红包呢?',
    '鼠年大吉大利,大家加油努力',
    '别拦我,叫我今天喝个够~~',
    '你好,你有一个新bug等待处理',
    '新年到了,一起许个愿吧!',
    '鸽厂威武',
    '66666666666666',
    'OMG~~~~~~~~~',
    '新年新气象',
    '祝大家新年快乐!',
    'O(∩_∩)O 大家好!~',
    '我要得大奖!~~~',
    '2020 一起加油鸭!',
    '大咖出没,请注意',
    '瞧一瞧看一看啦!',
    '(~ o ~)~',
    '♪♪♪###(´ε`)###♪♪♪',
    '恭喜发财!',
    '今晚不醉不归!!!',
    '燥动起来~~~',
    '啦啦啦啦啦啦~~',
    '期待ing..'
];
var timer = null;

io.on('connection', function(socket) {
    // 接收弹幕消息
    socket.on('barrage', function(msg) {
        // console.log('message:' + msg);
        // 过滤 xss
        // var msg = xss(msg);
        io.emit('barrage', msg);
        clearInterval(timer);
        timer = setInterval(function() {
            var msg = defaultMsgs[Math.floor(Math.random() * (19 - 0 + 1))];
            io.emit('barrage', msg);
        }, 25000);
    });

    // 断开连接
    socket.on('disconnect', function() {
        console.log('user disconnected');
    });
});

http.listen(3000, function() {
    console.log('listening on *:3000');
});