Messages received by the WebSocket server are now saved in a file
This commit is contained in:
parent
e77d85bc82
commit
7ee75b9e7f
1
.gitignore
vendored
1
.gitignore
vendored
@ -5,3 +5,4 @@ customization
|
|||||||
.*.swp
|
.*.swp
|
||||||
*.db
|
*.db
|
||||||
/customize/
|
/customize/
|
||||||
|
messages.log
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
;(function () { 'use strict';
|
;(function () { 'use strict';
|
||||||
let Crypto = require('crypto');
|
let Crypto = require('crypto');
|
||||||
let WebSocket = require('ws');
|
let WebSocket = require('ws');
|
||||||
|
let LogStore = require('./storage/LogStore');
|
||||||
|
|
||||||
let LAG_MAX_BEFORE_DISCONNECT = 30000;
|
let LAG_MAX_BEFORE_DISCONNECT = 30000;
|
||||||
let LAG_MAX_BEFORE_PING = 15000;
|
let LAG_MAX_BEFORE_PING = 15000;
|
||||||
@ -142,7 +143,7 @@ let run = module.exports.run = function (storage, socketServer) {
|
|||||||
let ctx = {
|
let ctx = {
|
||||||
users: {},
|
users: {},
|
||||||
channels: {},
|
channels: {},
|
||||||
store: storage
|
store: LogStore.create('messages.log', storage)
|
||||||
};
|
};
|
||||||
setInterval(function () {
|
setInterval(function () {
|
||||||
Object.keys(ctx.users).forEach(function (userId) {
|
Object.keys(ctx.users).forEach(function (userId) {
|
||||||
|
|||||||
20
storage/LogStore.js
Normal file
20
storage/LogStore.js
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
var Fs = require("fs");
|
||||||
|
|
||||||
|
var message = function(file, msg) {
|
||||||
|
file.write(msg+"\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
var create = module.exports.create = function(filePath, backingStore) {
|
||||||
|
|
||||||
|
var file = Fs.createWriteStream(filePath, {flags: 'a+'});
|
||||||
|
|
||||||
|
return {
|
||||||
|
message: function(channel, msg, callback) {
|
||||||
|
message(file, msg);
|
||||||
|
backingStore.message(channel, msg, callback);
|
||||||
|
},
|
||||||
|
getMessages: backingStore.getMessages
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user