var socket = io.connect( 'http://localhost:8080' );
var socketEmitLastCallTime = 0;
$( "#messageForm" ).submit( function(e) { e.preventDefault();
var nameVal = $( "#nameInput" ).val();
var msg = $( "#messageInput" ).val();
var canalVal = $( "#canalInput" ).val();
var aqwsde = Date.now() - socketEmitLastCallTime;
if(aqwsde >= 2 * 1000) {
socketEmitLastCallTime = Date.now();
socket.emit( 'message', { name: nameVal, message: msg, canal: canalVal } )
$( "#messageInput" ).val('');
// Ajax call for saving datas
$.ajax({
url: "./ajax/insertNewMessage.php",
type: "POST",
data: { name: nameVal, message: msg, canal: canalVal },
success: function(data) {
}
});
}else {
var alert = $('span.alert');
alert.show();
alert.html('Time!!!');
alert.fadeOut(3000);
//$('span.alert').html('Нельзя отправлять сообщения чаще, чем раз в 2 секунды');
//alert('Нельзя отправлять сообщение чаще 2 секунд');
}
});
socket.on( 'message', function( data ) {
var actualContent = $( "#messages" ).html();
var newMsgContent = '<li> <strong>' + data.name + '</strong> : ' + data.message
.replace(new RegExp("&#D83DDE04",'gi'),"<img src='../packs/basic/D83DDE04.png' height='21' width='21'>")
.replace(new RegExp("&#D83DDC8A",'gi'),"<img src='../packs/basic/D83DDC8A.png' height='21' width='21'>") + '</li>';
var content = newMsgContent + actualContent;
$( "#messages" ).html( content );
});
var socket = require( 'socket.io' );
var express = require( 'express' );
var http = require( 'http' );
var app = express();
var server = http.createServer( app );
var io = socket.listen( server );
io.sockets.on( 'connection', function( client ) {
console.log( "New client !" );
client.on( 'message', function( data ) {
console.log( 'Message received ' + data.name + "1" + data.message + data.canal );
//client.broadcast.emit( 'message', { name: data.name, message: data.message } );
io.sockets.emit( 'message', { name: data.name, message: data.message, canal: data.canal } );
});
});
server.listen( 8080 );
var socket = require( 'socket.io' );
var express = require( 'express' );
var http = require( 'http' );
var app = express();
var server = http.createServer( app );
var io = socket.listen( server );
io.sockets.on( 'connection', function( client ) {
console.log( "New client !" );
client.on( 'message', function( data ) {
console.log( 'Message received ' + data.name + ":" + data.message + data.canal );
//client.broadcast.emit( 'message', { name: data.name, message: data.message } );
io.sockets.emit( 'message', { name: data.name, message: data.message, canal: data.canal } );
});
});
server.listen( 8080 );
.replace(new RegExp("&#D83DDE04",'gi'),"<img src='../packs/basic/D83DDE04.png' height='21' width='21'>")
.replace(new RegExp("&#D83DDC8A",'gi'),"<img src='../packs/basic/D83DDC8A.png' height='21' width='21'>") + '</li>';
Его тоже можно ведь подменить поменяв путь? // Кто отправил, кому отправил
socket.userGet = idUserGet;
socket.userSend = rows[0].id;
// Лог, чисто для себя, чтобы примерно понимать что происходить
console.log(socket.userSend+' has been logined ');
socket.join(socket.userSend);
// Мое имя.
socket.user = rows[0].username;
var socket = require( 'socket.io' );
var express = require( 'express' );
var http = require( 'http' );
var app = express();
var server = http.createServer( app );
var io = socket.listen( server );
io.sockets.on( 'connection', function( client ) {
console.log( "New client !" );
var timing={};
client.on( 'message', function( data ) {
var time=0;
if (!!timing[data.name])
time=timing[data.name]-Date.now()+2000; //Задержка 2 сек.
setTimeout(function() {
timing[data.name]=Date.now();
console.log( 'Message received ' + data.name + "1" + data.message + data.canal );
//client.broadcast.emit( 'message', { name: data.name, message: data.message } );
io.sockets.emit( 'message', { name: data.name, message: data.message, canal: data.canal } );
},time);
});
});
server.listen( 8080 );
Получилось так: отправил сообщение. Потом отправляю еще одно, и если не прошло 2сек, то сервер ждет пока они пройдут, а потом отправляет. Что не так?