Basit yapıda çevrimiçi olan üye sayısını gösteren kod parçasını aşağıdaki paylaşıyorum. Özellikleri ise üye soketten ayrıldığında "disconnect" üye sayısını yenilemesidir. Kod parçasını denemedim fakat çalışacağını düşünüyorum.
İstemci;
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
</head>
<body>
<div class="onlineUsers">Online User: <span class="count"></span></div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/0.9.16/socket.io.min.js"></script>
<script type="text/javascript">
var socket = io.connect("http://localhost:3000");
socket.on("soketCevap", function (data)
{
$("div.onlineUsers span.count").html(data.count);
});
$(function ()
{
var user = {
id: "<?php echo $_SESSION['uye']['id']; ?>",
nick: "<?php echo $_SESSION['uye']['nick']; ?>"
};
socket.emit("soketGonder", user);
});
</script>
</body>
</html>Sunucu;
var io = require('socket.io').listen(3000);
var count = 0;
var users = [];
io.sockets.on("connection", function (socket)
{
socket.on("soketGonder", function (user)
{
count++;
users[socket.id] = user;
io.sockets.emit("socketCevap", {
count: count
});
});
socket.on("disconnect", function ()
{
count--;
users.splice(socket.id, 1);
io.sockets.emit("socketCevap", {
count: count
});
});
});