var express = require('express'); var app = express(); app.use(express.static("./public")); app.set('view engine','ejs'); app.set('views','./views'); const mongoose = require('mongoose'); mongoose.connect('mongodb://localhost:27017/myDatabase'); var db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log('Server is open now'); }); const userSchema = new mongoose.Schema({ // name: String, // age: Number mess: String, }) const user = mongoose.model('user',userSchema) //user.create({mess: "Day la tin nhan dau tien trong server"}); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(3000); //listen from port 3000 //if pp connect, it will create new socket //from server listen var data_from_server; user.find(function(err,users) { if(err) { console.log("Can't get data from server "); return null; } else { data_from_server = JSON.stringify(users); } }) // io.on('Server-sent-all-data',function(){ // // i will give you data // }); io.on('connection', function(socket){ console.log('Co nguoi ket noi '+socket.id); //from socket listen socket.on('disconnect',function(){ console.log(socket.id+' ngat ket noi '); }); socket.on('Client-sent-data',function(data){ var new_message = new user(); new_message.mess = data; console.log(socket.id+' gui 1 tin nhan '+data); new_message.save(function (err) {if (err) console.log ('Error on save!')}); io.sockets.emit('Server-sent-data',data); }) socket.emit('Server-sent-all-data',data_from_server) }); // speak all socket app.get('/',function(req,res){ res.render("trangchu"); })