Случайный чат с 2 пользователями одновременно (Socket.io)
Я только начал изучать NodeJS и Socket.io ... До сих пор у меня есть этот демонстрационный код с официального сайта socket.io:
Я могу получить уникальный идентификатор клиента каждого подключаемого пользователя (сокета), я все еще пытаюсь выяснить, как сделать так, чтобы мой код подключался только к 1 случайному пользователю в то время, когда кто-то запускает приложение. Я просто хочу сделать случайный чат, как Omeglehttp://www.omegle.com/
Только 2 пользователя должны случайным образом подключаться и общаться в чате друг с другом, пока они не перезапустят приложение. Если они вернутся, они должны соединиться с кем-то, кто находится в онлайн-очереди.
Какие изменения мне нужно сделать, чтобы иметь подобное поведение?
Вот мой код до сих пор:
Примеры кода или рекомендации от эксперта будут очень полезны для таких нубов, как я.
ОБНОВЛЕНИЕ: добавлен код сайта клиента,main.js
$(function() {
var FADE_TIME = 150; // ms
var TYPING_TIMER_LENGTH = 400; // ms
var COLORS = [
'#e21400', '#91580f', '#f8a700', '#f78b00',
'#58dc00', '#287b00', '#a8f07a', '#4ae8c4',
'#3b88eb', '#3824aa', '#a700ff', '#d300e7'
];
// Initialize variables
var $window = $(window);
var $usernameInput = $('.usernameInput'); // Input for username
var $messages = $('.messages'); // Messages area
var $inputMessage = $('.inputMessage'); // Input message input box
var $loginPage = $('.login.page'); // The login page
var $chatPage = $('.chat.page'); // The chatroom page
// Prompt for setting a username
var username;
var connected = false;
var typing = false;
var lastTypingTime;
var $currentInput = $usernameInput.focus();
//Own Global
var room = '';
var socket = io();
function addParticipantsMessage (data) {
var message = '';
if (data.numUsers === 1) {
// message += "there's 1 participant";
// Status Message
message += "Waiting to connect with someone";
} else {
// message += "there are " + data.numUsers + " participants";
//Status message update
message = "You are connected to a stranger! ,Say Hey!";
}
log(message);
}
// Sets the client's username
function setUsername () {
username = cleanInput($usernameInput.val().trim());
// If the username is valid
if (username) {
$loginPage.fadeOut();
$chatPage.show();
$loginPage.off('click');
$currentInput = $inputMessage.focus();
// Tell the server your username
socket.emit('add user', username);
// Own
socket.emit('login', {'username' : 'Faizan'});
}
}
заранее спасибо