dolphin-server-modules 1.5.7 → 1.6.1

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.
@@ -834,7 +834,118 @@ rt.privateSub(deviceId, fn) प्राइभेट सब्सक्राइ
834
834
  rt.privatePub(targetId, payload, opts?) प्राइभेट पब्लिस
835
835
  rt.getStats() स्ट्याटिस्टिक्स
836
836
  rt.destroy() क्लिनअप
837
- निष्कर्ष (Conclusion)
837
+ १७. Universal Signaling (WebRTC & IoT)
838
+ Dolphin v1.6.0 बाट शून्य डिपेन्डेन्सी सहितको Universal Signaling Module आएको छ, जसले WebRTC र IoT Control लाई एउटै API मा ह्यान्डल गर्छ।
839
+
840
+ typescript
841
+ import { createSignaling } from 'dolphin-server-modules/signaling';
842
+ import { RealtimeCore } from 'dolphin-server-modules/realtime';
843
+
844
+ const rt = new RealtimeCore();
845
+ const signaling = createSignaling(rt);
846
+
847
+ // 1. WebRTC Call (For Phones/Apps)
848
+ await signaling.invite('user1', 'user2', { sdp: 'offer_data' });
849
+
850
+ // 2. IoT / Medical Command
851
+ await signaling.sendCommand('DoctorApp', 'Machine_01', { action: 'START' });
852
+
853
+ १८. Folder Structure र Architecture बेस्ट प्राक्टिस (Zero to Scale)
854
+ एउटा ठूलो सङ्गठन वा IoT एप्लिकेसन डिजाइन गर्दा प्रोजेक्टलाई एउटै फाइलमा नराखी व्यवस्थित तरिकाले यसरी मिलाउनुपर्छ:
855
+
856
+ ```text
857
+ my-dolphin-app/
858
+ ├── src/
859
+ │ ├── config/ # Database, Redis जस्ता कन्फिगरेसन
860
+ │ ├── models/ # Mongoose/DB स्किमाहरू (Product.ts, SensorData.ts)
861
+ │ ├── controllers/ # लजिक र CRUD ह्यान्डलर (UserCtrl.ts, IoT_Ctrl.ts)
862
+ │ ├── middlewares/ # ZodValidation, AuthGuard, ErrorHandler
863
+ │ ├── routes/ # apiRouter (Independent Routing)
864
+ │ ├── realtime/ # IoT र WebSocket का इभेन्ट-ह्यान्डलर (pub/sub)
865
+ │ ├── app.ts # Dolphin Server र WebSockets (wss) को सेटअप
866
+ │ └── index.ts # सर्भर सुरु गर्ने (app.listen)
867
+ ├── package.json
868
+ └── tsconfig.json
869
+ ```
870
+ यो तरिका अपनाउँदा तपाइँको REST API र IoT को RealtimeCore कहिल्यै पनि नराम्रोसँग जेलिँदैन (Tight Coupling हुँदैन)।
871
+
872
+ १९. Global Error Handling (सर्भर क्र्यास हुनबाट बचाउने)
873
+ Dolphin मा तपाईंले लेखेको कुनै कस्टम लजिकले Error फाले पनि सर्भर क्र्यास हुनुहुँदैन। यसको लागि ग्लोबल मिडलवेयर (Global Middleware) प्रयोग गर्नुपर्छ:
874
+
875
+ ```typescript
876
+ app.use(async (ctx, next) => {
877
+ try {
878
+ if (next) await next();
879
+ } catch (error) {
880
+ console.error("🔥 SYSTEM ERROR:", error.message);
881
+ // क्लाईन्टलाई नराम्रो HTML को सट्टा राम्रो JSON पठाउने
882
+ ctx.status(500).json({
883
+ success: false,
884
+ message: "Internal Server Error",
885
+ error: process.env.NODE_ENV !== 'production' ? error.stack : undefined
886
+ });
887
+ }
888
+ });
889
+ ```
890
+
891
+ २०. Frontend सँग जोड्ने (React & IoT WebSockets)
892
+ फ्रन्टइन्ड (Frontend) बाट Dolphin API लाई कल गर्न तपाईंले सुरुमा CORS अन गर्नुपर्छ।
893
+
894
+ CORS Setup:
895
+ ```typescript
896
+ import cors from 'cors';
897
+ app.use(cors({ origin: 'http://localhost:3000', credentials: true }));
898
+ ```
899
+
900
+ React बाट IoT WebSocket जोड्ने:
901
+ ```javascript
902
+ import { useEffect, useState } from 'react';
903
+
904
+ function Dashboard() {
905
+ const [temp, setTemp] = useState(0);
906
+
907
+ useEffect(() => {
908
+ // 1. Dolphin को WebSocket मा कनेक्ट गर्ने
909
+ const ws = new WebSocket('ws://localhost:8080?id=React_Dashboard&type=monitor');
910
+
911
+ ws.onmessage = (event) => {
912
+ const parsed = JSON.parse(event.data);
913
+ if(parsed.topic === 'sensors/temperature') {
914
+ setTemp(parsed.payload.value);
915
+ }
916
+ };
917
+
918
+ // 2. Dolphin लाई कुन टपिक सुन्ने भनेर Subscribe मेसेज पठाउने
919
+ ws.onopen = () => {
920
+ ws.send(JSON.stringify({ action: 'subscribe', topic: 'sensors/temperature' }));
921
+ };
922
+
923
+ return () => ws.close();
924
+ }, []);
925
+
926
+ return <div><h1>लाइभ तापक्रम: {temp} °C 🌡️</h1></div>;
927
+ }
928
+ ```
929
+
930
+ २१. Production Deployment (सर्भर लाइभ गर्ने)
931
+ तपाईँको Dolphin सर्भर रकेट जस्तै तयार छ। अब यसलाई लाइभ (World Wide Web) मा राख्न PM2 प्रयोग गरिन्छ जसले क्र्यास भएको खण्डमा तुरुन्त (0.1ms) सर्भरलाई अटो-रिस्टार्ट (Auto-Restart) गर्छ।
932
+
933
+ PM2 इन्स्टल र सुरु गर्न:
934
+ ```bash
935
+ # 1. PM2 लाई Global रूपमा राख्ने
936
+ npm install -g pm2
937
+
938
+ # 2. तपाईंको Code लाई Build गर्ने
939
+ npm run build
940
+
941
+ # 3. PM2 द्वारा Background मा सर्भर सुरु गर्ने
942
+ pm2 start dist/index.js --name "dolphin-iot-backend"
943
+
944
+ # 4. सर्भरका Logs (Error/Info) हेर्न
945
+ pm2 logs dolphin-iot-backend
946
+ ```
947
+
948
+ २२. निष्कर्ष (Conclusion)
838
949
  बधाई छ! तपाईँले Dolphin Framework v2.0 को Master Guide पूरा गर्नुभयो। अब तपाईँ:
839
950
 
840
951
  ✅ हाई-पर्फर्मेन्स API सर्भर बनाउन
package/README.md CHANGED
@@ -115,6 +115,7 @@ rt.subscribe('factory/machine/+', (data) => {
115
115
  | **Validation** | `/middleware/zod` | Type-safe Zod validation middleware. |
116
116
  | **Swagger Docs** | `/swagger` | Auto-generated OpenAPI docs from Zod schemas. |
117
117
  | **IoT Plugins** | `/realtime/plugins` | Native parsers for HL7, Modbus, and DICOM. |
118
+ | **Signaling** | `/signaling` | Universal WebRTC & Control Signaling module. |
118
119
  | **Mongoose Adapter** | `/adapters/mongoose` | Full Mongoose ↔ CRUD bridge with query mapping. |
119
120
 
120
121
  ---
@@ -216,7 +216,20 @@ app.use('/api', apiRouter); // Route अब /api/ping मा उपलब्ध
216
216
 
217
217
  ---
218
218
 
219
- ## १३. अन्तिममा (Conclusion)
219
+ ## १३. Universal Signaling (WebRTC & IoT) [NEW]
220
+ Dolphin v1.6.0 बाट नयाँ "Universal Signaling Module" थपिएको छ जसमा फोन, IoT र मेडिकल डिभाइस कन्ट्रोल गर्न सकिन्छ।
221
+
222
+ ```typescript
223
+ import { createSignaling } from 'dolphin-server-modules/signaling';
224
+ const signaling = createSignaling(rt);
225
+
226
+ // IoT कमाण्ड पठाउन
227
+ await signaling.sendCommand('DoctorApp', 'Machine_01', { action: 'START' });
228
+ ```
229
+
230
+ ---
231
+
232
+ ## १४. अन्तिममा (Conclusion)
220
233
 
221
234
  Dolphin Framework निकै छिटो र सजिलो छ। यसले तपाईँको ब्याकइन्ड डेभलपमेन्टको अनुभवलाई नयाँ उचाइमा पुर्‍याउँछ।
222
235
 
@@ -46,7 +46,11 @@ export declare function createCRUD<T extends BaseDocument = BaseDocument>(db: Da
46
46
  hasPrev: boolean;
47
47
  }>;
48
48
  };
49
- export declare function createCrudController<T extends BaseDocument = BaseDocument>(adapter: any, collection: string): {
49
+ export declare function createCrudController<T extends BaseDocument = BaseDocument>(adapter: any, collection: string, options?: {
50
+ enforceOwnership?: boolean;
51
+ softDelete?: boolean;
52
+ defaultLimit?: number;
53
+ }): {
50
54
  getAll: (ctx: any) => Promise<void>;
51
55
  getOne: (ctx: any) => Promise<any>;
52
56
  create: (ctx: any) => Promise<void>;
package/dist/curd/crud.js CHANGED
@@ -237,8 +237,8 @@ function createCRUD(db, options = {}) {
237
237
  }
238
238
  };
239
239
  }
240
- function createCrudController(adapter, collection) {
241
- const service = createCRUD(adapter);
240
+ function createCrudController(adapter, collection, options) {
241
+ const service = createCRUD(adapter, options);
242
242
  return {
243
243
  getAll: async (ctx) => {
244
244
  const { limit, offset, ...filters } = ctx.query;
@@ -1 +1 @@
1
- {"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crud.js","sourceRoot":"","sources":["../../curd/crud.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  export * from './realtime/codec';
2
2
  export * from './realtime/index';
3
3
  export * from './swagger/swagger';
4
+ export * from './signaling/index';
package/dist/index.js CHANGED
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./realtime/codec"), exports);
18
18
  __exportStar(require("./realtime/index"), exports);
19
19
  __exportStar(require("./swagger/swagger"), exports);
20
+ __exportStar(require("./signaling/index"), exports);
20
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,mDAAiC;AACjC,mDAAiC;AACjC,oDAAkC;AAClC,oDAAkC"}
@@ -0,0 +1,47 @@
1
+ import { RealtimeCore } from '../realtime/core';
2
+ export declare enum SignalType {
3
+ INVITE = "INVITE",
4
+ ACCEPT = "ACCEPT",
5
+ REJECT = "REJECT",
6
+ END = "END",
7
+ ICE_CANDIDATE = "ICE_CANDIDATE",
8
+ COMMAND = "COMMAND",
9
+ COMMAND_ACK = "COMMAND_ACK",
10
+ TELEMETRY = "TELEMETRY",
11
+ ACK = "ACK"
12
+ }
13
+ export interface SignalingPayload {
14
+ msgId: string;
15
+ from: string;
16
+ to: string;
17
+ type: SignalType | string;
18
+ data?: any;
19
+ timestamp: number;
20
+ }
21
+ export type SignalHandler = (payload: SignalingPayload) => void;
22
+ export declare class UniversalSignaling {
23
+ private rt;
24
+ private pendingAcks;
25
+ constructor(rt: RealtimeCore);
26
+ /**
27
+ * Internal mechanism to send a signal directly to the device.
28
+ */
29
+ private sendRaw;
30
+ /**
31
+ * Used to acknowledge a signal natively
32
+ */
33
+ handleAck(msgId: string): void;
34
+ ack(from: string, to: string, msgIdToAck: string): void;
35
+ invite(from: string, to: string, data?: any): Promise<boolean>;
36
+ accept(from: string, to: string, sdp?: any): Promise<boolean>;
37
+ reject(from: string, to: string, reason?: string): Promise<boolean>;
38
+ end(from: string, to: string, reason?: string): Promise<boolean>;
39
+ iceCandidate(from: string, to: string, candidate: any): Promise<boolean>;
40
+ sendCommand(from: string, to: string, commandData: any, requireAck?: boolean): Promise<boolean>;
41
+ sendTelemetry(from: string, to: string | 'all', telemetryData: any): Promise<void>;
42
+ /**
43
+ * Listen to any incoming signals for a particular topic or private channel
44
+ */
45
+ onSignalFor(deviceId: string, handler: SignalHandler): void;
46
+ }
47
+ export declare function createSignaling(rt: RealtimeCore): UniversalSignaling;
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UniversalSignaling = exports.SignalType = void 0;
4
+ exports.createSignaling = createSignaling;
5
+ var SignalType;
6
+ (function (SignalType) {
7
+ // Connection / WebRTC
8
+ SignalType["INVITE"] = "INVITE";
9
+ SignalType["ACCEPT"] = "ACCEPT";
10
+ SignalType["REJECT"] = "REJECT";
11
+ SignalType["END"] = "END";
12
+ SignalType["ICE_CANDIDATE"] = "ICE_CANDIDATE";
13
+ // Custom Data / Control
14
+ SignalType["COMMAND"] = "COMMAND";
15
+ SignalType["COMMAND_ACK"] = "COMMAND_ACK";
16
+ SignalType["TELEMETRY"] = "TELEMETRY";
17
+ // General Acknowledgements
18
+ SignalType["ACK"] = "ACK";
19
+ })(SignalType || (exports.SignalType = SignalType = {}));
20
+ class UniversalSignaling {
21
+ rt;
22
+ pendingAcks = new Map();
23
+ constructor(rt) {
24
+ this.rt = rt;
25
+ }
26
+ /**
27
+ * Internal mechanism to send a signal directly to the device.
28
+ */
29
+ async sendRaw(to, type, data, from, requireAck = false, timeoutMs = 3000) {
30
+ const msgId = `sig_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
31
+ const payload = {
32
+ msgId,
33
+ from,
34
+ to,
35
+ type,
36
+ data,
37
+ timestamp: Date.now()
38
+ };
39
+ if (requireAck) {
40
+ return new Promise((resolve) => {
41
+ const timer = setTimeout(() => {
42
+ this.pendingAcks.delete(msgId);
43
+ resolve(false);
44
+ }, timeoutMs);
45
+ this.pendingAcks.set(msgId, { resolve, timer });
46
+ // Use RealtimeCore's privatePub channel
47
+ this.rt.privatePub(to, payload);
48
+ });
49
+ }
50
+ else {
51
+ this.rt.privatePub(to, payload);
52
+ return true;
53
+ }
54
+ }
55
+ /**
56
+ * Used to acknowledge a signal natively
57
+ */
58
+ handleAck(msgId) {
59
+ const pending = this.pendingAcks.get(msgId);
60
+ if (pending) {
61
+ clearTimeout(pending.timer);
62
+ pending.resolve(true);
63
+ this.pendingAcks.delete(msgId);
64
+ }
65
+ }
66
+ ack(from, to, msgIdToAck) {
67
+ this.rt.privatePub(to, {
68
+ msgId: `sig_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`,
69
+ type: SignalType.ACK,
70
+ from,
71
+ to,
72
+ data: { ackId: msgIdToAck },
73
+ timestamp: Date.now()
74
+ });
75
+ }
76
+ // --- WebRTC / Session Methods ---
77
+ async invite(from, to, data) {
78
+ return this.sendRaw(to, SignalType.INVITE, data, from, true);
79
+ }
80
+ async accept(from, to, sdp) {
81
+ return this.sendRaw(to, SignalType.ACCEPT, sdp, from);
82
+ }
83
+ async reject(from, to, reason) {
84
+ return this.sendRaw(to, SignalType.REJECT, { reason }, from);
85
+ }
86
+ async end(from, to, reason) {
87
+ return this.sendRaw(to, SignalType.END, { reason }, from);
88
+ }
89
+ async iceCandidate(from, to, candidate) {
90
+ return this.sendRaw(to, SignalType.ICE_CANDIDATE, candidate, from);
91
+ }
92
+ // --- Industrial / Medical Control Methods ---
93
+ async sendCommand(from, to, commandData, requireAck = true) {
94
+ return this.sendRaw(to, SignalType.COMMAND, commandData, from, requireAck);
95
+ }
96
+ async sendTelemetry(from, to, telemetryData) {
97
+ const payload = {
98
+ msgId: `tel_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`,
99
+ from,
100
+ to,
101
+ type: SignalType.TELEMETRY,
102
+ data: telemetryData,
103
+ timestamp: Date.now()
104
+ };
105
+ if (to === 'all') {
106
+ this.rt.publish(`telemetry/broadcast`, payload);
107
+ }
108
+ else {
109
+ this.rt.privatePub(to, payload);
110
+ }
111
+ }
112
+ /**
113
+ * Listen to any incoming signals for a particular topic or private channel
114
+ */
115
+ onSignalFor(deviceId, handler) {
116
+ this.rt.subscribe(`phone/signaling/${deviceId}`, (payload) => {
117
+ // Auto-handle native ACK processing
118
+ if (payload.type === SignalType.ACK && payload.data?.ackId) {
119
+ this.handleAck(payload.data.ackId);
120
+ }
121
+ handler(payload);
122
+ }, deviceId);
123
+ }
124
+ }
125
+ exports.UniversalSignaling = UniversalSignaling;
126
+ function createSignaling(rt) {
127
+ return new UniversalSignaling(rt);
128
+ }
129
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../signaling/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dolphin-server-modules",
3
- "version": "1.5.7",
3
+ "version": "1.6.1",
4
4
  "homepage": "https://github.com/Phuyalshankar/dolphin-server-modules#readme",
5
5
  "description": "Core utility modules for Auth, CRUD, and Controllers",
6
6
  "main": "dist/index.js",
@@ -29,7 +29,8 @@
29
29
  "./realtime/codec": "./dist/realtime/codec.js",
30
30
  "./realtime/plugins": "./dist/realtime/plugins.js",
31
31
  "./swagger": "./dist/swagger/swagger.js",
32
- "./djson": "./dist/djson/djson.js"
32
+ "./djson": "./dist/djson/djson.js",
33
+ "./signaling": "./dist/signaling/index.js"
33
34
  },
34
35
  "scripts": {
35
36
  "build": "tsc",