@siemsiem/tonpleun 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/dist/client.d.ts +1 -0
  2. package/dist/client.d.ts.map +1 -0
  3. package/dist/client.js +44 -0
  4. package/dist/client.js.map +1 -0
  5. package/dist/client2.d.ts +1 -0
  6. package/dist/client2.d.ts.map +1 -0
  7. package/dist/client2.js +19 -0
  8. package/dist/client2.js.map +1 -0
  9. package/dist/clientLib.d.ts +10 -0
  10. package/dist/clientLib.d.ts.map +1 -0
  11. package/dist/clientLib.js +128 -0
  12. package/dist/clientLib.js.map +1 -0
  13. package/dist/helpers.d.ts +5 -0
  14. package/dist/helpers.d.ts.map +1 -0
  15. package/dist/helpers.js +12 -0
  16. package/dist/helpers.js.map +1 -0
  17. package/dist/server.d.ts +1 -0
  18. package/dist/server.d.ts.map +1 -0
  19. package/dist/server.js +120 -0
  20. package/dist/server.js.map +1 -0
  21. package/dist/types.d.ts +69 -0
  22. package/dist/types.d.ts.map +1 -0
  23. package/dist/types.js +22 -0
  24. package/dist/types.js.map +1 -0
  25. package/dist/v1/client.d.ts +1 -0
  26. package/dist/v1/client.d.ts.map +1 -0
  27. package/dist/v1/client.js +15 -0
  28. package/dist/v1/client.js.map +1 -0
  29. package/dist/v1/lib.d.ts +28 -0
  30. package/dist/v1/lib.d.ts.map +1 -0
  31. package/dist/v1/lib.js +180 -0
  32. package/dist/v1/lib.js.map +1 -0
  33. package/dist/v1/main.d.ts +1 -0
  34. package/dist/v1/main.d.ts.map +1 -0
  35. package/dist/v1/main.js +193 -0
  36. package/dist/v1/main.js.map +1 -0
  37. package/dist/v1/test2.d.ts +1 -0
  38. package/dist/v1/test2.d.ts.map +1 -0
  39. package/dist/v1/test2.js +11 -0
  40. package/dist/v1/test2.js.map +1 -0
  41. package/package.json +14 -8
  42. package/tsconfig.json +0 -39
  43. package/webui/clientLib.js +0 -186
  44. package/webui/index.html +0 -22
  45. package/webui/main.js +0 -22
package/dist/v1/lib.js ADDED
@@ -0,0 +1,180 @@
1
+ import WebSocket from 'ws';
2
+ const url = "ws://localhost:8765";
3
+ export var configType;
4
+ (function (configType) {
5
+ configType[configType["str"] = 0] = "str";
6
+ configType[configType["bool"] = 1] = "bool";
7
+ configType[configType["int"] = 2] = "int";
8
+ })(configType || (configType = {}));
9
+ export let config = {};
10
+ // voor wie complete controle wil over ws client gedrag
11
+ export let ws;
12
+ export let successHandler = null;
13
+ export let errorHandler = null;
14
+ export let debugLogging = false;
15
+ let serviceHandlers = {};
16
+ let waitingForData = false;
17
+ function debugLog(...message) {
18
+ if (debugLogging) {
19
+ console.log('[DEBUG]', message);
20
+ }
21
+ }
22
+ function parseData(msg) {
23
+ var _a;
24
+ if (ws) {
25
+ if (msg.status === "200") {
26
+ debugLog('Ontvangen data:', msg.data);
27
+ if (successHandler && !waitingForData)
28
+ successHandler(msg.data);
29
+ }
30
+ else if (msg.status === "210") {
31
+ if (waitingForData && successHandler)
32
+ successHandler(msg.data);
33
+ }
34
+ else if (msg.status === '700') {
35
+ debugLog('Service oproep ontvangen:', msg.callbackId);
36
+ (_a = serviceHandlers[msg.serviceId || '']) === null || _a === void 0 ? void 0 : _a.call(serviceHandlers, msg.args || []);
37
+ ws.send(JSON.stringify({
38
+ action: 'response',
39
+ callbackId: msg.callbackId,
40
+ data: msg.args,
41
+ }));
42
+ }
43
+ else if (msg.status === "600") {
44
+ debugLog('config update ontvangen');
45
+ if (msg === null || msg === void 0 ? void 0 : msg.id) {
46
+ config[msg === null || msg === void 0 ? void 0 : msg.id] = msg === null || msg === void 0 ? void 0 : msg.value;
47
+ }
48
+ }
49
+ else {
50
+ if (errorHandler)
51
+ errorHandler(msg.data);
52
+ // console.log('error code', msg.status)
53
+ }
54
+ }
55
+ else {
56
+ console.error('WebSocket is niet geïnitialiseerd.');
57
+ }
58
+ }
59
+ export function registerService(serviceId, handler, args) {
60
+ if (ws) {
61
+ serviceHandlers[serviceId] = handler;
62
+ ws.send(JSON.stringify({
63
+ action: 'register',
64
+ service: serviceId,
65
+ args: args || [],
66
+ }));
67
+ }
68
+ else {
69
+ console.error('WebSocket is niet geïnitialiseerd.');
70
+ }
71
+ }
72
+ export async function registerServiceAsync(serviceId, handler, args) {
73
+ if (ws) {
74
+ return new Promise((resolve, reject) => {
75
+ successHandler = resolve;
76
+ errorHandler = reject;
77
+ ws.send(JSON.stringify({
78
+ action: 'get',
79
+ service: serviceId,
80
+ args: args,
81
+ }));
82
+ });
83
+ }
84
+ else {
85
+ return Promise.reject('WebSocket is niet geïnitialiseerd.');
86
+ }
87
+ }
88
+ // met callback
89
+ export function callService(serviceId, args, onSuccess, onError) {
90
+ if (ws) {
91
+ successHandler = onSuccess;
92
+ errorHandler = onError;
93
+ waitingForData = true;
94
+ ws.send(JSON.stringify({
95
+ action: 'get',
96
+ service: serviceId,
97
+ args: args,
98
+ }));
99
+ }
100
+ else {
101
+ console.error('WebSocket is niet geïnitialiseerd.');
102
+ }
103
+ }
104
+ // met promise
105
+ export async function callServiceAsync(serviceId, args) {
106
+ if (ws) {
107
+ return new Promise((resolve, reject) => {
108
+ successHandler = resolve;
109
+ errorHandler = reject;
110
+ waitingForData = true;
111
+ ws.send(JSON.stringify({
112
+ action: 'get',
113
+ service: serviceId,
114
+ args: args,
115
+ }));
116
+ });
117
+ }
118
+ else {
119
+ return Promise.reject('WebSocket is niet geïnitialiseerd.');
120
+ }
121
+ }
122
+ export async function registerConfigItem(id, human_name, configType, value) {
123
+ if (ws) {
124
+ config[id] = value;
125
+ return new Promise((resolve, reject) => {
126
+ successHandler = resolve;
127
+ errorHandler = reject;
128
+ ws.send(JSON.stringify({
129
+ action: "makeConfigOption",
130
+ human: human_name,
131
+ id: id,
132
+ configType: configType,
133
+ value: value
134
+ }));
135
+ });
136
+ }
137
+ else {
138
+ return Promise.reject('WebSocket is niet geïnitialiseerd.d');
139
+ }
140
+ }
141
+ export async function setConfigItem(id, value) {
142
+ if (ws) {
143
+ return new Promise((resolve, reject) => {
144
+ successHandler = resolve;
145
+ errorHandler = reject;
146
+ ws.send(JSON.stringify({
147
+ action: "makeConfigOption",
148
+ id: id,
149
+ value: value
150
+ }));
151
+ });
152
+ }
153
+ else {
154
+ return Promise.reject('WebSocket is niet geïnitialiseerd.');
155
+ }
156
+ }
157
+ export async function initializeClient() {
158
+ ws = new WebSocket(url);
159
+ ws.on('open', () => {
160
+ debugLog('Verbonden met de server');
161
+ console.log('Verbonden met tonpleun server.');
162
+ });
163
+ ws.on('message', (data) => {
164
+ parseData(JSON.parse(data.toString()));
165
+ });
166
+ ws.on('close', () => {
167
+ debugLog('Verbinding gesloten');
168
+ console.log('Verbinding met tonpleun server gesloten.');
169
+ });
170
+ ws.on('error', (error) => {
171
+ console.error('Fout opgetreden:', error);
172
+ });
173
+ // Wacht tot de verbinding is geopend
174
+ return new Promise((resolve) => {
175
+ ws.on('open', () => {
176
+ resolve();
177
+ });
178
+ });
179
+ }
180
+ //# sourceMappingURL=lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.js","sourceRoot":"","sources":["../../src/v1/lib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/v1/main.ts"],"names":[],"mappings":""}
@@ -0,0 +1,193 @@
1
+ import { WebSocketServer } from 'ws';
2
+ var configType;
3
+ (function (configType) {
4
+ configType[configType["str"] = 0] = "str";
5
+ configType[configType["bool"] = 1] = "bool";
6
+ configType[configType["int"] = 2] = "int";
7
+ })(configType || (configType = {}));
8
+ ;
9
+ const clients = new Set();
10
+ function getServices(args) {
11
+ return Object.keys(servicesAvailable);
12
+ }
13
+ ;
14
+ let servicesAvailable = {
15
+ 'connector.status': {
16
+ id: 0,
17
+ args: [],
18
+ client: 'BUILTIN',
19
+ },
20
+ 'connector.services': {
21
+ id: 1,
22
+ args: [],
23
+ client: 'BUILTIN',
24
+ FUNC: getServices,
25
+ },
26
+ 'connector.echo': {
27
+ id: 2,
28
+ args: ['message'],
29
+ client: 'BUILTIN',
30
+ FUNC: (args) => args[0] || "ontvangen",
31
+ }
32
+ };
33
+ let configOptions = {};
34
+ let awaitingResponses = {};
35
+ const wss = new WebSocketServer({ host: '0.0.0.0', port: 8765 });
36
+ wss.on('connection', (ws, req) => {
37
+ clients.add(ws);
38
+ console.log('Client verbonden:', req.socket.remoteAddress);
39
+ ws.on('message', async (raw) => {
40
+ const message = raw.toString();
41
+ console.log(`Ontvangen bericht van ${req.socket.remoteAddress}: ${message}`);
42
+ let data;
43
+ try {
44
+ data = JSON.parse(message);
45
+ }
46
+ catch (_a) {
47
+ ws.send(JSON.stringify({ status: '400', human_readable: 'Ongeldige JSON' }));
48
+ return;
49
+ }
50
+ if ((data === null || data === void 0 ? void 0 : data.action) === 'get') {
51
+ const service = servicesAvailable[data === null || data === void 0 ? void 0 : data.service];
52
+ if (service) {
53
+ if (service.client === 'BUILTIN') {
54
+ if (!service.FUNC) {
55
+ ws.send(JSON.stringify({
56
+ status: '200',
57
+ human_readable: 'online, geen functie om uit te voeren.',
58
+ data: null,
59
+ }));
60
+ }
61
+ else {
62
+ try {
63
+ const result = await Promise.resolve(service.FUNC((data === null || data === void 0 ? void 0 : data.args) || []));
64
+ ws.send(JSON.stringify({
65
+ status: '200',
66
+ human_readable: 'success',
67
+ data: result,
68
+ }));
69
+ }
70
+ catch (_b) {
71
+ ws.send(JSON.stringify({
72
+ status: '500',
73
+ human_readable: 'Fout bij uitvoeren van service',
74
+ }));
75
+ }
76
+ }
77
+ }
78
+ else {
79
+ const id = Date.now();
80
+ service.client.send(JSON.stringify({
81
+ status: '700',
82
+ human_readable: 'service call',
83
+ args: (data === null || data === void 0 ? void 0 : data.args) || [],
84
+ serviceId: service.id,
85
+ callbackId: id,
86
+ }));
87
+ awaitingResponses[id] = ws;
88
+ ws.send(JSON.stringify({
89
+ status: '202',
90
+ human_readable: 'Verzoek verzonden naar service client',
91
+ calbackId: id,
92
+ }));
93
+ }
94
+ }
95
+ else {
96
+ ws.send(JSON.stringify({ status: '404', human_readable: 'Service niet gevonden' }));
97
+ }
98
+ }
99
+ else if ((data === null || data === void 0 ? void 0 : data.action) == "register") {
100
+ const newSerivice = {
101
+ id: data === null || data === void 0 ? void 0 : data.service,
102
+ args: (data === null || data === void 0 ? void 0 : data.args) || [],
103
+ client: ws,
104
+ };
105
+ servicesAvailable[data === null || data === void 0 ? void 0 : data.service] = newSerivice;
106
+ ws.send(JSON.stringify({
107
+ status: '201',
108
+ human_readable: `Service ${data === null || data === void 0 ? void 0 : data.service} geregistreerd.`,
109
+ data: { serviceId: newSerivice.id },
110
+ }));
111
+ }
112
+ else if ((data === null || data === void 0 ? void 0 : data.action) == "response") {
113
+ const callbackId = data === null || data === void 0 ? void 0 : data.callbackId;
114
+ const responseData = data === null || data === void 0 ? void 0 : data.data;
115
+ const originalRequester = awaitingResponses[callbackId];
116
+ if (originalRequester) {
117
+ originalRequester.send(JSON.stringify({
118
+ status: '210',
119
+ human_readable: 'Response van service client',
120
+ data: responseData,
121
+ }));
122
+ delete awaitingResponses[callbackId];
123
+ }
124
+ else {
125
+ ws.send(JSON.stringify({
126
+ status: '404',
127
+ human_readable: 'Oorspronkelijke aanvrager niet gevonden voor deze callbackId',
128
+ }));
129
+ }
130
+ }
131
+ else if ((data === null || data === void 0 ? void 0 : data.action) === "getConfigOptions") {
132
+ ws.send(JSON.stringify({ status: "200", human_readable: "config data", data: configOptions }));
133
+ }
134
+ else if ((data === null || data === void 0 ? void 0 : data.action) === "makeConfigOption") {
135
+ configOptions[data === null || data === void 0 ? void 0 : data.id] = {
136
+ id: data === null || data === void 0 ? void 0 : data.id,
137
+ human_name: data === null || data === void 0 ? void 0 : data.human,
138
+ owner: ws,
139
+ configType: data === null || data === void 0 ? void 0 : data.configType,
140
+ value: data === null || data === void 0 ? void 0 : data.value
141
+ };
142
+ ws.send(JSON.stringify({ status: '200', human_readable: "gemaakt!" }));
143
+ }
144
+ else if ((data === null || data === void 0 ? void 0 : data.action) === "setConfig") {
145
+ if ((data === null || data === void 0 ? void 0 : data.id) && (data === null || data === void 0 ? void 0 : data.value)) {
146
+ let c = configOptions[data.id];
147
+ if (!(c)) {
148
+ ws.send(JSON.stringify({
149
+ status: '404',
150
+ human_readable: 'config item niet gevonden',
151
+ }));
152
+ }
153
+ else {
154
+ c.value = data.value;
155
+ configOptions[data.id] = c;
156
+ if (!(c.owner === "BUILTIN")) {
157
+ c.owner.send(JSON.stringify({
158
+ status: "600",
159
+ id: data.id,
160
+ value: data.value
161
+ }));
162
+ }
163
+ ws.send(JSON.stringify({ status: "200", human_readable: "Config geupdate" }));
164
+ }
165
+ }
166
+ else {
167
+ ws.send(JSON.stringify({
168
+ status: "400",
169
+ human_readable: "je verzoek was niet goed"
170
+ }));
171
+ }
172
+ }
173
+ });
174
+ ws.on('close', () => {
175
+ // vewijder alles wat deze client heet geregistreerd
176
+ for (const [name, service] of Object.entries(servicesAvailable)) {
177
+ if (service.client === ws) {
178
+ delete servicesAvailable[name];
179
+ console.log(`Service ${name} verwijderd vanwege client disconnect.`);
180
+ }
181
+ }
182
+ for (const [name, service] of Object.entries(configOptions)) {
183
+ if (service.owner === ws) {
184
+ delete servicesAvailable[name];
185
+ console.log(`config ${name} verwijderd vanwege client disconnect.`);
186
+ }
187
+ }
188
+ clients.delete(ws);
189
+ console.log('Client weg');
190
+ });
191
+ });
192
+ console.log('Server draait op ws://localhost:8765');
193
+ //# sourceMappingURL=main.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/v1/main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test2.d.ts","sourceRoot":"","sources":["../../src/v1/test2.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { initializeClient, callServiceAsync, setConfigItem } from "./lib.js";
2
+ async function main() {
3
+ await initializeClient();
4
+ const test = await callServiceAsync('test.echo', ['Hallo van de client!']);
5
+ console.log('Antwoord van echo service (promise):', test);
6
+ await setConfigItem('echo', false);
7
+ const test2 = await callServiceAsync('test.echo', ['Hallo van de client!']);
8
+ console.log('Antwoord van echo service (promise):', test2);
9
+ }
10
+ main();
11
+ //# sourceMappingURL=test2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test2.js","sourceRoot":"","sources":["../../src/v1/test2.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE7E,KAAK,UAAU,IAAI;IACf,MAAM,gBAAgB,EAAE,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAC1E,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,IAAI,CAAC,CAAC;IAE1D,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IAElC,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAA;IAC3E,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;AAC/D,CAAC;AACD,IAAI,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@siemsiem/tonpleun",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "uhhh dit zijn zeer goede docs (nee) tonpleun is een websocket server die websocket clients verzoeken laat maken aan andere websocket clients die zich als service registreren. voor nu is tonpleun in js maar wrs moet ik het porten naar python omdat ik dan meer code kan hergebruiken voor andere projecten.",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/supersiem/Tonpleun#readme",
@@ -15,12 +15,10 @@
15
15
  "author": "Siemvk",
16
16
  "type": "module",
17
17
  "main": "./dist/clientLib.js",
18
- "scripts": {
19
- "start": "tsc && clear && node ./dist/server.js",
20
- "test": "tsc && clear && node ./dist/client.js",
21
- "testDeTest": "tsc && clear && node ./dist/client2.js",
22
- "build": "tsc"
23
- },
18
+ "files": [
19
+ "dist",
20
+ "src"
21
+ ],
24
22
  "dependencies": {
25
23
  "@types/ws": "^8.18.1",
26
24
  "ws": "^8.18.3"
@@ -28,5 +26,13 @@
28
26
  "devDependencies": {
29
27
  "typescript": "^5.9.3"
30
28
  },
31
- "packageManager": "pnpm@10.12.1"
29
+ "scripts": {
30
+ "start": "tsc && clear && node ./dist/server.js",
31
+ "test": "tsc && clear && node ./dist/client.js",
32
+ "testDeTest": "tsc && clear && node ./dist/client2.js",
33
+ "clean": "rimraf dist",
34
+ "prebuild": "npm run clean",
35
+ "build": "tsc --module commonjs",
36
+ "preversion": "npm run build"
37
+ }
32
38
  }
package/tsconfig.json DELETED
@@ -1,39 +0,0 @@
1
- {
2
- // Visit https://aka.ms/tsconfig to read more about this file
3
- "compilerOptions": {
4
- // File Layout
5
- "rootDir": "./src",
6
- "outDir": "./dist",
7
- // Environment Settings
8
- // See also https://aka.ms/tsconfig/module
9
- "module": "nodenext",
10
- "target": "esnext",
11
- "types": [],
12
- // For nodejs:
13
- // "lib": ["esnext"],
14
- // "types": ["node"],
15
- // and npm install -D @types/node
16
- // Other Outputs
17
- "sourceMap": true,
18
- "declaration": true,
19
- "declarationMap": true,
20
- // Stricter Typechecking Options
21
- "noUncheckedIndexedAccess": true,
22
- "exactOptionalPropertyTypes": true,
23
- // Style Options
24
- // "noImplicitReturns": true,
25
- // "noImplicitOverride": true,
26
- // "noUnusedLocals": true,
27
- // "noUnusedParameters": true,
28
- // "noFallthroughCasesInSwitch": true,
29
- // "noPropertyAccessFromIndexSignature": true,
30
- // Recommended Options
31
- "strict": true,
32
- "jsx": "react-jsx",
33
- "verbatimModuleSyntax": true,
34
- "isolatedModules": true,
35
- "noUncheckedSideEffectImports": true,
36
- "moduleDetection": "force",
37
- "skipLibCheck": true,
38
- }
39
- }