请找管理员授权。/funnyscript/edit_node_item.php
var app = require('express')(); var http_server = require('http').createServer(app); var io = require('socket.io')(http_server,{origins:'*:*'}); function C_User(Name,UID,socket){ this.Name=Name; this.UID=UID; this.socket=socket; } app.get('/', function(req, res){ //res.send(req); res.sendFile(__dirname + '/index.html'); }); var myMap_socket_io = new Map(); var myMap_socket_io2 = new Map(); var all_socke_io_client = []; io.on('connection', function(socket){ all_socke_io_client.push(socket); console.log('a user connected='+socket.id); socket.broadcast.emit('user connected'); socket.emit("sys_event", {from: "system", type:"30s:session", to:"",message: socket.id} ); socket.on('chat_event', function(msg){ console.log('chat_event: '); console.log('msg.from=: '+msg.from); console.log('msg.to=: '+msg.to); console.log('msg.message=: '+msg.message.substr(0,10)); if (msg.to == "*"){ io.emit('chat_event',msg); }else{ //* if (myMap_socket_io.has(msg.to)){ var pSocket=myMap_socket_io.get(msg.to).socket; console.log('chat_event: send_to :'+msg.to); pSocket.emit('chat_event',msg); }else{ console.log('not found msg.to=: '+msg.to); } } }); socket.on('sys_event', function(msg){ console.log('sys_event: '); console.log('msg.from=: '+msg.from); console.log('msg.to=: '+msg.to); console.log('msg.message=: '+msg.message); switch(msg.type){ case "connected": socket.emit("sys_event", {from: "system", type:"30s:session", to:"",message: socket.id} ); break; case "session": var UID=socket.id; var Name=msg.from; if (UID == msg.message){ if (myMap_socket_io.has(Name)){ myMap_socket_io.delete(Name); } myMap_socket_io.set(Name, new C_User(Name,UID,socket)); myMap_socket_io2.set(UID, new C_User(Name,UID,socket)); console.log("session:record:"+UID +"=="+ msg.message ); }else{ console.log("session:"+UID +"<>"+ msg.message ); } break; case "list.all": for (var [key, value] of myMap_socket_io) { socket.emit("sys_event", {from: "system", type:"list.all", to:"",message: value.Name} ); console.log(key + " = " + value.Name); } break; default: if (msg.to == "*"){ io.emit('sys_event',msg); }else{ if (myMap_socket_io.has(msg.to)){ var pSocket=myMap_socket_io.get(msg.to).socket; console.log('sys_event: send_to :'+msg.to); pSocket.emit('sys_event',msg); }else{ console.log('not found msg.to=: '+msg.to); } } break; } }); socket.on('disconnect', function() { var UID=socket.id; var pUser=null; var Name=""; if (myMap_socket_io2.has(UID)){ pUser=myMap_socket_io2.get(UID); Name=pUser.Name; myMap_socket_io.delete(pUser.Name); myMap_socket_io2.delete(pUser.UID); console.log('Got disconnect! has:'+ UID+",name="+Name); }else{ console.log('Got disconnect! no:'+ UID); } var i = all_socke_io_client.indexOf(socket); all_socke_io_client.splice(i, 1); }); }); http_server.listen(8000, function(){ console.log('listening on *:8000'); });
ID=5927 index.js
保存
var app = require('express')(); var http_server = require('http').createServer(app); var io = require('socket.io')(http_server,{origins:'*:*'}); function C_User(Name,UID,socket){ this.Name=Name; this.UID=UID; this.socket=socket; } app.get('/', function(req, res){ //res.send(req); res.sendFile(__dirname + '/index.html'); }); var myMap_socket_io = new Map(); var myMap_socket_io2 = new Map(); var all_socke_io_client = []; io.on('connection', function(socket){ all_socke_io_client.push(socket); console.log('a user connected='+socket.id); socket.broadcast.emit('user connected'); socket.emit("sys_event", {from: "system", type:"30s:session", to:"",message: socket.id} ); socket.on('chat_event', function(msg){ console.log('chat_event: '); console.log('msg.from=: '+msg.from); console.log('msg.to=: '+msg.to); console.log('msg.message=: '+msg.message.substr(0,10)); if (msg.to == "*"){ io.emit('chat_event',msg); }else{ //* if (myMap_socket_io.has(msg.to)){ var pSocket=myMap_socket_io.get(msg.to).socket; console.log('chat_event: send_to :'+msg.to); pSocket.emit('chat_event',msg); }else{ console.log('not found msg.to=: '+msg.to); } } }); socket.on('sys_event', function(msg){ console.log('sys_event: '); console.log('msg.from=: '+msg.from); console.log('msg.to=: '+msg.to); console.log('msg.message=: '+msg.message); switch(msg.type){ case "connected": socket.emit("sys_event", {from: "system", type:"30s:session", to:"",message: socket.id} ); break; case "session": var UID=socket.id; var Name=msg.from; if (UID == msg.message){ if (myMap_socket_io.has(Name)){ myMap_socket_io.delete(Name); } myMap_socket_io.set(Name, new C_User(Name,UID,socket)); myMap_socket_io2.set(UID, new C_User(Name,UID,socket)); console.log("session:record:"+UID +"=="+ msg.message ); }else{ console.log("session:"+UID +"<>"+ msg.message ); } break; case "list.all": for (var [key, value] of myMap_socket_io) { socket.emit("sys_event", {from: "system", type:"list.all", to:"",message: value.Name} ); console.log(key + " = " + value.Name); } break; default: if (msg.to == "*"){ io.emit('sys_event',msg); }else{ if (myMap_socket_io.has(msg.to)){ var pSocket=myMap_socket_io.get(msg.to).socket; console.log('sys_event: send_to :'+msg.to); pSocket.emit('sys_event',msg); }else{ console.log('not found msg.to=: '+msg.to); } } break; } }); socket.on('disconnect', function() { var UID=socket.id; var pUser=null; var Name=""; if (myMap_socket_io2.has(UID)){ pUser=myMap_socket_io2.get(UID); Name=pUser.Name; myMap_socket_io.delete(pUser.Name); myMap_socket_io2.delete(pUser.UID); console.log('Got disconnect! has:'+ UID+",name="+Name); }else{ console.log('Got disconnect! no:'+ UID); } var i = all_socke_io_client.indexOf(socket); all_socke_io_client.splice(i, 1); }); }); http_server.listen(8000, function(){ console.log('listening on *:8000'); });