server for my chess game
Diffstat (limited to 'src/index.js')
| -rw-r--r-- | src/index.js | 49 |
1 files changed, 16 insertions, 33 deletions
diff --git a/src/index.js b/src/index.js index 2b2b951..ec8c1ce 100644 --- a/src/index.js +++ b/src/index.js @@ -1,35 +1,18 @@ -const net = require('net') -const { putVar, getVar } = require('@gd-com/utils') -const StreamTcp = require('./StreamTcp') - -var port = process.env.PORT || 8910 - -let server = net.createServer((socket) => { - const tcpSplit = new StreamTcp() - socket.pipe(tcpSplit).on('data', (data) => { - const packet = new Buffer.from(data) - - const decoded = getVar(packet) - console.log('receive :', decoded.value) - - const packetToSend = putVar(Math.random()) - - // we need to put the packet length on top cause it's tcp - const lengthBuffer = Buffer.alloc(4) - lengthBuffer.writeUInt32LE(packetToSend.length, 0) - const toSend = Buffer.concat([lengthBuffer, packetToSend]) - - console.log('send :', toSend) - socket.write(toSend) +const WebSocket = require('ws') +const gdCom = require('@gd-com/utils') + +const PORT = process.env.PORT || 3000; + +const wss = new WebSocket.Server({ port: PORT }) +console.log(`Server started on port ${PORT}`) +wss.on('connection', ws => { + console.log('connected') + ws.on('message', (message) => { + let recieveBuff = Buffer.from(message) + let recieve = gdCom.getVar(recieveBuff) + console.log(recieve.value) + + let buffer = gdCom.putVar(Math.random()) + ws.send(buffer) }) - - socket.on('error', () => console.log('Bye :(')) -}) - -server.on('error', (err) => { - throw err -}) - -server.listen(port, '0.0.0.0', () => { - console.log(`Server launched TCP 0.0.0.0:${port}`) }) |