arcsconsole.js 1.03 KB
import WebSocket, {WebSocketServer} from 'ws';
import Chalk from 'chalk';
    
let serverConfig = {
    port: 8088,
};


if (process.argv.length > 2) {
    serverConfig.port = parseInt(process.argv[2]);
}

let wss = new WebSocketServer(serverConfig);
wss.on('connection', function (ws) {
    ws.on('message', function (message) {
        let obj = JSON.parse(message);
        switch(obj.type) {
            case 'log':
                console.log(Chalk.green("[log]"), Chalk.white.dim(obj.context),"\n", ...obj.args);
                break;
            case 'info':
                console.log(Chalk.cyan("[info]"), Chalk.white.dim(obj.context),"\n", ...obj.args);
                break;
            case 'warn':
                console.log(Chalk.yellow("[warn]"),Chalk.white.dim(obj.context),"\n", ...obj.args);
                break;
            case 'error':
                console.log(Chalk.red("[error]"), Chalk.white.dim(obj.context),"\n", ...obj.args);
                break;
        }
        //console.log('received: %s', message);
    });
});