如何监听socket.io的内部ping pong

时间:2016-02-18 15:24:11

标签: sockets websocket socket.io socket.io-redis

我将此解决方案用于收听内部乒乓球。 在将pong事件发送到客户端之后,Socket.io的内部库即engine.io触发'heartbeat'事件。你可以使用以下黑客来听这个事件。

我试图在新文件中覆盖socket.io,但它不起作用。目前以下代码适用于我。

1 个答案:

答案 0 :(得分:0)

您也可以使用以下代码,而不会覆盖内部工作。

socket_io = require('socket.io');

io = socket_io.listen(server, {pingTimeout : 60000, pingInterval : 15000});

//Listening to heartbeat of internal socket ping pong
io.engine.on('connection', function(socket_conn) {

    socket_conn.on('heartbeat', function(){

        manager.resetTimer(socket_conn.id);

    })
});