Всем привет,наткнулся на такой чат,вот решил его взять и доработать,вот сам код чата:
сторона сервера:
var http = require('http');
var Static = require('node-static');
var WebSocketServer = new require('ws');
// подключенные клиенты
var clients = {};
// WebSocket-сервер на порту 8081
var webSocketServer = new WebSocketServer.Server({port: 8081});
webSocketServer.on('connection', function(ws) {
var id = Math.random();
clients[id] = ws;
console.log("новое соединение " + id);
ws.on('message', function(message) {
console.log('получено сообщение ' + message);
for(var key in clients) {
clients[key].send(message);
}
});
ws.on('close', function() {
console.log('соединение закрыто ' + id);
delete clients[id];
});
});
// обычный сервер (статика) на порту 8080
var fileServer = new Static.Server('.');
http.createServer(function (req, res) {
fileServer.serve(req, res);
}).listen(8080);
console.log("Сервер запущен на портах 8080, 8081");
сторона клиента:
if (!window.WebSocket) {
document.body.innerHTML = 'WebSocket в этом браузере не поддерживается.';
}
// создать подключение
var socket = new WebSocket("ws://localhost:8081");
// отправить сообщение из формы publish
document.forms.publish.onsubmit = function() {
var outgoingMessage = this.message.value;
socket.send(outgoingMessage);
return false;
};
// обработчик входящих сообщений
socket.onmessage = function(event) {
var incomingMessage = event.data;
showMessage(incomingMessage);
};
// показать сообщение в div#subscribe
function showMessage(message) {
var messageElem = document.createElement('div');
messageElem.appendChild(document.createTextNode(message));
document.getElementById('subscribe').appendChild(messageElem);
}
страничка с которой клиент передаёт данные:
if (!window.WebSocket) {
document.body.innerHTML = 'WebSocket в этом браузере не поддерживается.';
}
// создать подключение
var socket = new WebSocket("ws://localhost:8081");
// отправить сообщение из формы publish
document.forms.publish.onsubmit = function() {
var outgoingMessage = this.message.value;
socket.send(outgoingMessage);
return false;
};
// обработчик входящих сообщений
socket.onmessage = function(event) {
var incomingMessage = event.data;
showMessage(incomingMessage);
};
// показать сообщение в div#subscribe
function showMessage(message) {
var messageElem = document.createElement('div');
messageElem.appendChild(document.createTextNode(message));
document.getElementById('subscribe').appendChild(messageElem);
}
вот мои вопросы к вам
1) как сделать,что бы этот чат обменивался данными с моим пхп скриптом(обмен именами юзеров в чате,ид чата и т.д.)
2) как сделать приватный чат из этого,Аля диалоги вк,в котором могут писать только два человека
3) Как сделать вывод тут данных которые сюда должен передать пхп,например Имя и Фамилия автора сообщения,Заранее всем спасибо!