56 lines
1.2 KiB
JavaScript
Executable File
56 lines
1.2 KiB
JavaScript
Executable File
var RpcProxy = require('./rpc-proxy')
|
|
var fs = require('fs')
|
|
var logServer = require('./logger/logServer')
|
|
|
|
|
|
proxy = new RpcProxy('ws://localhost:8182',8181, modifyMessageToClient, modifyMessageToServer, 4444);
|
|
logServer()
|
|
|
|
function modifyMessageToServer(message){
|
|
return readRulesFromFile('./rules.json','server',message)
|
|
// return message
|
|
}
|
|
|
|
function modifyMessageToClient(message){
|
|
return readRulesFromFile('./rules.json','client',message)
|
|
// return message
|
|
}
|
|
|
|
|
|
function readRulesFromFile(file,path,message){
|
|
try{
|
|
var msgObj = JSON.parse(message)
|
|
}
|
|
catch(e){
|
|
console.error("Message is not valid JSON\n"+e.message)
|
|
return message
|
|
}
|
|
|
|
var rulesText = fs.readFileSync(file,'utf8');
|
|
try{
|
|
var allRules = JSON.parse(rulesText)
|
|
}
|
|
catch(e){
|
|
console.error("Rules file not valid JSON\n"+e.message)
|
|
return message;
|
|
}
|
|
|
|
if(allRules[path]){
|
|
var rules = allRules[path];
|
|
for(rule in rules){
|
|
if(rules.hasOwnProperty(rule)){
|
|
msgObj[rule] = rules[rule];
|
|
}
|
|
}
|
|
}
|
|
|
|
try{
|
|
return JSON.stringify(msgObj);
|
|
}
|
|
catch(e){
|
|
console.error("Modified message is not valid JSON\n"+e.message)
|
|
return message;
|
|
}
|
|
}
|
|
|
|
proxy.init(); |