Socket.io Identifizieren Benutzer für Sockel

Schreibe ich einige code-Beispiel, identifi angeschlossenen Benutzer per socket.io... So, jetzt muss ich schreiben einen code auf der index-Seite zu teilen mit Benutzer.

Den code unten und gewusst WIE: senden einer Nachricht an Benutzer[1] "Willkommen" und für Benutzer[2] "HALLO Männer" und auch begrenzen Verbindung fr 2 Benutzer. also, wenn 2 Benutzer verbunden dann jemand anderes cant connect..

Index.html:

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io.connect();
  var users;
  socket.on('hello', function (data) {
    console.log(data.hello);
  });
  socket.on('listing', function (data) {
     users = data; 
  });
  socket.on('chat', function (message) {
     console.log(message); 
  });
  socket.on('message', function (message) {
     console.log(message); 
  });
  function chat (message) {
    socket.emit('chat', message);   
  }
  function message (user, message) {
    socket.emit('message', {
       user: user,
       message: message
    });
  }
</script>

app.js

var express = require('express');
var app = express.createServer();
var io = require('socket.io').listen(app);

app.listen(3000);

app.use(express.static(__dirname));

var users = {};
var userNumber = 1;

function getUsers () {
   var userNames = [];
   for(var name in users) {
     if(users[name]) {
       userNames.push(name);  
     }
   }
   return userNames;
}

io.sockets.on('connection', function (socket) {
  var myNumber = userNumber++;
  var myName = 'user#' + myNumber;
  users[myName] = socket;

  socket.emit('hello', { hello: myName });
  io.sockets.emit('listing', getUsers());

  socket.on('chat', function (message) {
    io.sockets.emit('chat', myName + ': ' + message);
  });
  socket.on('message', function (data) {
     users[data.user].emit('message', myName + '-> ' + data.message); 
  });

  socket.on('disconnect', function () {
    users[myName] = null;
    io.sockets.emit('listing', getUsers());
  });
});

app.listen(process.env.PORT);
  • so dass Sie wollen, um zu ermitteln, welche Benutzer verbunden ist, die Steckdose ?
  • mit Variablen wie usernummer ist in Ordnung, aber definitiv wird es nicht helfen, Sie in einem langen Lauf, ich schlage vor, gehen für mongodb und starten Sie die Speicherung von Werten in es
  • Ich brauche diese für ein Beispiel... ich will also verstehen, wie das senden einer anderen Nachricht an verschiedene Benutzer und senden einer Nachricht vom client zum server und arbeiten dann mit den Nachrichten... so brauche ich zum Beispiel usw. senden onload Nachricht an Benutzer[1] und dann, wenn die Nachricht senden erstellen Sie ein div-wer wird desapire 5s - nur für Benutzer 1... nicht für Benutzer 2... und auch wie das senden einer Nachricht an beide user
  • gibt es irgendein tutorial oder so, die mir helfen, verbinden Sie diese mit mongodb
  • Sie können sich bei nodetuts.com
  • es gibt keine gute und einfache basic-Beispiele... so WIE auf meinem Skript zu tun? eine Idee
  • Verwandte Frage: stackoverflow.com/q/16627225/104380

InformationsquelleAutor beginerplus | 2012-05-20
Schreibe einen Kommentar