Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Node.js > Ответ от сервера клиенту, Socket.io


Автор: nepster 29.9.2013, 22:27
Тяжко идет бурговская документация! 
Получается возник вопрос с отдачей ответа всем пользователям и всем, кто в комнате. 
Все работает кроме этих моментов.

Код
// Подключаем модуль и ставим на прослушивание 8080-порта - 80й обычно занят под http-сервер
var io = require('socket.io').listen(8080); 

// Отключаем вывод полного лога - пригодится в production'е
io.set('log level', 1);


// stone scissors  paper 

// ID комнаты 
var room = 1724;

var SSP = io.of('/SSP').on('connection', function(socket) 
    {
        // вход в комнату 
        socket.join(room);
        
        var login = socket.id;
        login = login.substr(0,5);
        
        // Текущему пользователю из стола {room}
        socket.to(room).emit('message', 'Вы успешно подключились к игре, стол: '+room);
        
        // Всем пользователям, кроме текущего из стола {room}
        socket.broadcast.to(room).emit('message', 'Приветствуем нового пользователя!')


        //----------------------------------------------                
        // Отправка для всех клиентов конкретной комнаты 
        io.sockets.to(room).emit('message', 'all test'); // не работает 
                
                
        
        // получаем данные от клиента
        socket.on('message', function(data) 
        {
            console.log('user: '+login+' text: '+data);
            var m = [login,data]
        
            socket.to(room).json.send(m);
            socket.broadcast.to(room).json.send(m);
            
        });      
    
    });


// написать всем пользователям сообщение, всем комнатам 
io.sockets.emit('message', "this is a test"); // не работает 



Не могу понять почему не работают вот эти вот вещи: 
Код

// Отправка для всех клиентов конкретной комнаты 
 io.sockets.to(room).emit('message', 'all test'); // не работает


// написать всем пользователям сообщение, всем комнатам 
io.sockets.emit('message', "this is a test"); // не работает 


Подскажите пожалуйста. Остальное все работает. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)