Zufälliger Chat mit 2 Benutzern gleichzeitig (Socket.io)
Ich habe gerade angefangen, NodeJS und Socket.io zu lernen ... Bis jetzt habe ich diesen Demo-Code von der offiziellen socket.io-Site:
Ich kann die eindeutige Client-ID jedes Benutzers (Sockets) abrufen, der eine Verbindung herstellt. Ich versuche immer noch herauszufinden, wie ich meinen Code so einstellen kann, dass er nur mit einem zufälligen Benutzer gleichzeitig eine Verbindung herstellt, wenn jemand die Anwendung ausführt. Ich möchte nur zufälligen Chat wie Omegle @ machhttp: //www.omegle.com
Nur 2 Benutzer sollten sich nach dem Zufallsprinzip verbinden und miteinander chatten, bis sie die App erneut ausführen. Wenn sie zurückkehren, sollten sie sich mit einer anderen Person in der Online-Warteschlange verbinden.
Welche Änderungen muss ich vornehmen, um ein ähnliches Verhalten zu erzielen?
Hier ist mein Code bisher:
Codebeispiele oder die Anleitung eines Experten sind für Noobs wie mich sehr hilfreich.
UPDATE: Client-Site-Code hinzugefügt, 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'});
}
}
Danke im Vorau