Skip to content

Commit d5ba8c6

Browse files
committed
Server and client in node
1 parent a11934c commit d5ba8c6

File tree

4 files changed

+101
-0
lines changed

4 files changed

+101
-0
lines changed

raspberry-pi/cl_seq/index.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
const { PassThrough } = require("stream");
2+
const ws = require('ws');
3+
4+
5+
6+
module.exports = [
7+
{ requires: "pipe", contentType: 'text/plain' },
8+
function(input) {
9+
const client = new ws('ws://localhost:3000');
10+
const out = new PassThrough({ objectMode: true });
11+
12+
async function reader(client) {
13+
for await (const chunk of input) {
14+
client.send(chunk);
15+
}
16+
}
17+
client.on('open', () => {
18+
reader(client);
19+
});
20+
21+
22+
return out;
23+
}
24+
];

raspberry-pi/cl_seq/package.json

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
{
2+
"name": "cl_seq",
3+
"version": "1.0.0",
4+
"description": "",
5+
"main": "index.js",
6+
"scripts": {
7+
"predeploy": "mkdir -p dist/ && cp index.js package.json dist/ && (cd dist && npm i --omit=dev)"
8+
},
9+
"engines": {
10+
"node": ">=16"
11+
},
12+
"repository": {
13+
"type": "git",
14+
"url": "git+https://github.com/scramjetorg/create-sequence.git"
15+
},
16+
"bugs": {
17+
"url": "https://github.com/scramjetorg/create-sequence/issues"
18+
},
19+
"homepage": "https://github.com/scramjetorg/create-sequence#readme",
20+
"author": "",
21+
"license": "ISC",
22+
"dependencies": {
23+
"JSONStream": "^1.3.5",
24+
"scramjet": "^4.36.6"
25+
}
26+
}

raspberry-pi/ser_seq/index.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
const express = require('express');
2+
const expressWs = require('express-ws');
3+
const ws = require('ws');
4+
var http = require('http');
5+
6+
7+
module.exports = async function(input) {
8+
const app = express();
9+
10+
const wsServer = new ws.Server({ noServer: true });
11+
wsServer.on('connection', socket => {
12+
console.log("connected");
13+
socket.on('message', message => console.log('received: %s', message));
14+
});
15+
16+
const server = app.listen(3000);
17+
server.on('upgrade', (request, socket, head) => {
18+
wsServer.handleUpgrade(request, socket, head, socket => {
19+
wsServer.emit('connection', socket, request);
20+
});
21+
});
22+
return input;
23+
};

raspberry-pi/ser_seq/package.json

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
{
2+
"name": "ser_seq",
3+
"version": "1.0.0",
4+
"description": "",
5+
"main": "index.js",
6+
"scripts": {
7+
"predeploy": "mkdir -p dist/ && cp index.js package.json dist/ && (cd dist && npm i --omit=dev)"
8+
},
9+
"engines": {
10+
"node": ">=16"
11+
},
12+
"repository": {
13+
"type": "git",
14+
"url": "git+https://github.com/scramjetorg/create-sequence.git"
15+
},
16+
"bugs": {
17+
"url": "https://github.com/scramjetorg/create-sequence/issues"
18+
},
19+
"homepage": "https://github.com/scramjetorg/create-sequence#readme",
20+
"author": "",
21+
"license": "ISC",
22+
"dependencies": {
23+
"express" : "*",
24+
"express-ws" : "*",
25+
"http" : "*"
26+
}
27+
28+
}

0 commit comments

Comments
 (0)