@ajna-inc/webrtc 0.2.0 → 0.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.
Files changed (134) hide show
  1. package/.npmvc/attestations.jsonld +32 -0
  2. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
  3. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
  4. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
  5. package/build/index.d.mts +11 -0
  6. package/build/index.mjs +12 -0
  7. package/build/webrtc/WebRTCApi.d.mts +131 -0
  8. package/build/webrtc/WebRTCApi.d.mts.map +1 -0
  9. package/build/webrtc/WebRTCApi.mjs +161 -0
  10. package/build/webrtc/WebRTCApi.mjs.map +1 -0
  11. package/build/webrtc/WebRTCEvents.d.mts +115 -0
  12. package/build/webrtc/WebRTCEvents.d.mts.map +1 -0
  13. package/build/webrtc/WebRTCEvents.mjs +20 -0
  14. package/build/webrtc/WebRTCEvents.mjs.map +1 -0
  15. package/build/webrtc/WebRTCModule.d.mts +63 -0
  16. package/build/webrtc/WebRTCModule.d.mts.map +1 -0
  17. package/build/webrtc/WebRTCModule.mjs +51 -0
  18. package/build/webrtc/WebRTCModule.mjs.map +1 -0
  19. package/build/webrtc/handlers/AnswerHandler.mjs +23 -0
  20. package/build/webrtc/handlers/AnswerHandler.mjs.map +1 -0
  21. package/build/webrtc/handlers/EndHandler.mjs +23 -0
  22. package/build/webrtc/handlers/EndHandler.mjs.map +1 -0
  23. package/build/webrtc/handlers/IceHandler.mjs +23 -0
  24. package/build/webrtc/handlers/IceHandler.mjs.map +1 -0
  25. package/build/webrtc/handlers/OfferHandler.mjs +23 -0
  26. package/build/webrtc/handlers/OfferHandler.mjs.map +1 -0
  27. package/build/webrtc/handlers/ProposeHandler.mjs +23 -0
  28. package/build/webrtc/handlers/ProposeHandler.mjs.map +1 -0
  29. package/build/webrtc/handlers/RenegotiateHandler.mjs +23 -0
  30. package/build/webrtc/handlers/RenegotiateHandler.mjs.map +1 -0
  31. package/build/webrtc/handlers/index.mjs +6 -0
  32. package/build/webrtc/messages/AnswerMessage.d.mts +29 -0
  33. package/build/webrtc/messages/AnswerMessage.d.mts.map +1 -0
  34. package/build/webrtc/messages/AnswerMessage.mjs +44 -0
  35. package/build/webrtc/messages/AnswerMessage.mjs.map +1 -0
  36. package/build/webrtc/messages/EndMessage.d.mts +19 -0
  37. package/build/webrtc/messages/EndMessage.d.mts.map +1 -0
  38. package/build/webrtc/messages/EndMessage.mjs +31 -0
  39. package/build/webrtc/messages/EndMessage.mjs.map +1 -0
  40. package/build/webrtc/messages/IceMessage.d.mts +21 -0
  41. package/build/webrtc/messages/IceMessage.d.mts.map +1 -0
  42. package/build/webrtc/messages/IceMessage.mjs +38 -0
  43. package/build/webrtc/messages/IceMessage.mjs.map +1 -0
  44. package/build/webrtc/messages/OfferMessage.d.mts +56 -0
  45. package/build/webrtc/messages/OfferMessage.d.mts.map +1 -0
  46. package/build/webrtc/messages/OfferMessage.mjs +86 -0
  47. package/build/webrtc/messages/OfferMessage.mjs.map +1 -0
  48. package/build/webrtc/messages/ProposeMessage.d.mts +70 -0
  49. package/build/webrtc/messages/ProposeMessage.d.mts.map +1 -0
  50. package/build/webrtc/messages/ProposeMessage.mjs +76 -0
  51. package/build/webrtc/messages/ProposeMessage.mjs.map +1 -0
  52. package/build/webrtc/messages/RenegotiateMessage.d.mts +59 -0
  53. package/build/webrtc/messages/RenegotiateMessage.d.mts.map +1 -0
  54. package/build/webrtc/messages/RenegotiateMessage.mjs +56 -0
  55. package/build/webrtc/messages/RenegotiateMessage.mjs.map +1 -0
  56. package/build/webrtc/messages/index.d.mts +6 -0
  57. package/build/webrtc/messages/index.mjs +6 -0
  58. package/build/webrtc/repository/WebRTCCallRecord.d.mts +32 -0
  59. package/build/webrtc/repository/WebRTCCallRecord.d.mts.map +1 -0
  60. package/build/webrtc/repository/WebRTCCallRecord.mjs +31 -0
  61. package/build/webrtc/repository/WebRTCCallRecord.mjs.map +1 -0
  62. package/build/webrtc/repository/WebRTCCallRepository.d.mts +10 -0
  63. package/build/webrtc/repository/WebRTCCallRepository.d.mts.map +1 -0
  64. package/build/webrtc/repository/WebRTCCallRepository.mjs +23 -0
  65. package/build/webrtc/repository/WebRTCCallRepository.mjs.map +1 -0
  66. package/build/webrtc/services/WebRTCService.d.mts +93 -0
  67. package/build/webrtc/services/WebRTCService.d.mts.map +1 -0
  68. package/build/webrtc/services/WebRTCService.mjs +244 -0
  69. package/build/webrtc/services/WebRTCService.mjs.map +1 -0
  70. package/package.json +19 -15
  71. package/README.md +0 -222
  72. package/build/index.d.ts +0 -8
  73. package/build/index.js +0 -29
  74. package/build/index.js.map +0 -1
  75. package/build/webrtc/WebRTCApi.d.ts +0 -125
  76. package/build/webrtc/WebRTCApi.js +0 -186
  77. package/build/webrtc/WebRTCApi.js.map +0 -1
  78. package/build/webrtc/WebRTCEvents.d.ts +0 -110
  79. package/build/webrtc/WebRTCEvents.js +0 -19
  80. package/build/webrtc/WebRTCEvents.js.map +0 -1
  81. package/build/webrtc/WebRTCModule.d.ts +0 -56
  82. package/build/webrtc/WebRTCModule.js +0 -40
  83. package/build/webrtc/WebRTCModule.js.map +0 -1
  84. package/build/webrtc/handlers/AnswerHandler.d.ts +0 -9
  85. package/build/webrtc/handlers/AnswerHandler.js +0 -31
  86. package/build/webrtc/handlers/AnswerHandler.js.map +0 -1
  87. package/build/webrtc/handlers/EndHandler.d.ts +0 -9
  88. package/build/webrtc/handlers/EndHandler.js +0 -31
  89. package/build/webrtc/handlers/EndHandler.js.map +0 -1
  90. package/build/webrtc/handlers/IceHandler.d.ts +0 -9
  91. package/build/webrtc/handlers/IceHandler.js +0 -31
  92. package/build/webrtc/handlers/IceHandler.js.map +0 -1
  93. package/build/webrtc/handlers/OfferHandler.d.ts +0 -9
  94. package/build/webrtc/handlers/OfferHandler.js +0 -31
  95. package/build/webrtc/handlers/OfferHandler.js.map +0 -1
  96. package/build/webrtc/handlers/ProposeHandler.d.ts +0 -9
  97. package/build/webrtc/handlers/ProposeHandler.js +0 -31
  98. package/build/webrtc/handlers/ProposeHandler.js.map +0 -1
  99. package/build/webrtc/handlers/RenegotiateHandler.d.ts +0 -9
  100. package/build/webrtc/handlers/RenegotiateHandler.js +0 -31
  101. package/build/webrtc/handlers/RenegotiateHandler.js.map +0 -1
  102. package/build/webrtc/handlers/index.d.ts +0 -6
  103. package/build/webrtc/handlers/index.js +0 -23
  104. package/build/webrtc/handlers/index.js.map +0 -1
  105. package/build/webrtc/messages/AnswerMessage.d.ts +0 -23
  106. package/build/webrtc/messages/AnswerMessage.js +0 -52
  107. package/build/webrtc/messages/AnswerMessage.js.map +0 -1
  108. package/build/webrtc/messages/EndMessage.d.ts +0 -13
  109. package/build/webrtc/messages/EndMessage.js +0 -37
  110. package/build/webrtc/messages/EndMessage.js.map +0 -1
  111. package/build/webrtc/messages/IceMessage.d.ts +0 -15
  112. package/build/webrtc/messages/IceMessage.js +0 -43
  113. package/build/webrtc/messages/IceMessage.js.map +0 -1
  114. package/build/webrtc/messages/OfferMessage.d.ts +0 -49
  115. package/build/webrtc/messages/OfferMessage.js +0 -103
  116. package/build/webrtc/messages/OfferMessage.js.map +0 -1
  117. package/build/webrtc/messages/ProposeMessage.d.ts +0 -63
  118. package/build/webrtc/messages/ProposeMessage.js +0 -84
  119. package/build/webrtc/messages/ProposeMessage.js.map +0 -1
  120. package/build/webrtc/messages/RenegotiateMessage.d.ts +0 -52
  121. package/build/webrtc/messages/RenegotiateMessage.js +0 -65
  122. package/build/webrtc/messages/RenegotiateMessage.js.map +0 -1
  123. package/build/webrtc/messages/index.d.ts +0 -6
  124. package/build/webrtc/messages/index.js +0 -23
  125. package/build/webrtc/messages/index.js.map +0 -1
  126. package/build/webrtc/repository/WebRTCCallRecord.d.ts +0 -29
  127. package/build/webrtc/repository/WebRTCCallRecord.js +0 -30
  128. package/build/webrtc/repository/WebRTCCallRecord.js.map +0 -1
  129. package/build/webrtc/repository/WebRTCCallRepository.d.ts +0 -5
  130. package/build/webrtc/repository/WebRTCCallRepository.js +0 -30
  131. package/build/webrtc/repository/WebRTCCallRepository.js.map +0 -1
  132. package/build/webrtc/services/WebRTCService.d.ts +0 -86
  133. package/build/webrtc/services/WebRTCService.js +0 -229
  134. package/build/webrtc/services/WebRTCService.js.map +0 -1
@@ -1,229 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.WebRTCService = void 0;
13
- const tsyringe_1 = require("tsyringe");
14
- const core_1 = require("@credo-ts/core");
15
- const messages_1 = require("../messages");
16
- const WebRTCEvents_1 = require("../WebRTCEvents");
17
- const WebRTCCallRecord_1 = require("../repository/WebRTCCallRecord");
18
- const WebRTCCallRepository_1 = require("../repository/WebRTCCallRepository");
19
- let WebRTCService = class WebRTCService {
20
- constructor(repo, events) {
21
- this.repo = repo;
22
- this.events = events;
23
- }
24
- // Outbound creators
25
- /**
26
- * Create a propose message to initiate a call
27
- */
28
- createPropose(options) {
29
- const message = new messages_1.ProposeMessage({
30
- threadId: options.threadId,
31
- parentThreadId: options.parentThreadId,
32
- media: options.media,
33
- data: options.data,
34
- topology: options.topology,
35
- trickle: options.trickle,
36
- policy: options.policy,
37
- iceServers: options.iceServers,
38
- reason: options.reason,
39
- });
40
- return { message };
41
- }
42
- /**
43
- * Create an offer message with SDP
44
- */
45
- createOffer(agentContext, connection, threadId, parentThreadId, sdp, iceServers, policy, trickle) {
46
- const message = new messages_1.OfferMessage({ threadId, parentThreadId, sdp, iceServers, policy, trickle });
47
- const record = new WebRTCCallRecord_1.WebRTCCallRecord({ connectionId: connection.id, threadId, state: 'offered', role: 'caller' });
48
- return { message, record };
49
- }
50
- /**
51
- * Create an answer message with SDP
52
- */
53
- createAnswer(agentContext, connection, threadId, parentThreadId, sdp, iceServers) {
54
- const message = new messages_1.AnswerMessage({ threadId, parentThreadId, sdp, iceServers });
55
- return { message };
56
- }
57
- /**
58
- * Create an ICE candidate message
59
- */
60
- createIce(threadId, parentThreadId, candidate, endOfCandidates) {
61
- return new messages_1.IceMessage({ threadId, parentThreadId, candidate, endOfCandidates });
62
- }
63
- /**
64
- * Create a renegotiate message (for ICE restart, track changes, etc.)
65
- */
66
- createRenegotiate(options) {
67
- return new messages_1.RenegotiateMessage({
68
- threadId: options.threadId,
69
- parentThreadId: options.parentThreadId,
70
- reason: options.reason,
71
- iceRestart: options.iceRestart,
72
- iceServers: options.iceServers,
73
- policy: options.policy,
74
- });
75
- }
76
- /**
77
- * Create an end call message
78
- */
79
- createEnd(threadId, parentThreadId, reason) {
80
- return new messages_1.EndMessage({ threadId, parentThreadId, reason });
81
- }
82
- // Inbound processors
83
- /**
84
- * Process incoming propose message
85
- */
86
- async processPropose(messageContext) {
87
- const thid = messageContext.message.threadId ?? messageContext.message.id;
88
- const msg = messageContext.message;
89
- this.events.emit(messageContext.agentContext, {
90
- type: WebRTCEvents_1.WebRTCEvents.IncomingPropose,
91
- payload: {
92
- context: messageContext,
93
- thid,
94
- pthid: msg.thread?.parentThreadId,
95
- media: msg.media,
96
- data: msg.data,
97
- topology: msg.topology,
98
- trickle: msg.trickle,
99
- policy: msg.policy,
100
- iceServers: msg.iceServers,
101
- reason: msg.reason,
102
- },
103
- });
104
- return;
105
- }
106
- /**
107
- * Process incoming offer message
108
- */
109
- async processOffer(messageContext) {
110
- const connection = messageContext.assertReadyConnection();
111
- const thid = messageContext.message.threadId;
112
- const msg = messageContext.message;
113
- const record = new WebRTCCallRecord_1.WebRTCCallRecord({
114
- connectionId: connection.id,
115
- threadId: thid,
116
- state: 'offered',
117
- role: 'callee',
118
- });
119
- await this.repo.save(messageContext.agentContext, record);
120
- this.events.emit(messageContext.agentContext, {
121
- type: WebRTCEvents_1.WebRTCEvents.IncomingOffer,
122
- payload: {
123
- context: messageContext,
124
- thid,
125
- pthid: msg.thread?.parentThreadId,
126
- sdp: msg.sdp,
127
- iceServers: msg.iceServers,
128
- policy: msg.policy,
129
- trickle: msg.trickle,
130
- },
131
- });
132
- return;
133
- }
134
- /**
135
- * Process incoming answer message
136
- */
137
- async processAnswer(messageContext) {
138
- const connection = messageContext.assertReadyConnection();
139
- const thid = messageContext.message.threadId;
140
- const msg = messageContext.message;
141
- const [record] = await this.repo.findByQuery(messageContext.agentContext, {
142
- connectionId: connection.id,
143
- threadId: thid,
144
- });
145
- if (record) {
146
- record.state = 'answered';
147
- await this.repo.update(messageContext.agentContext, record);
148
- }
149
- this.events.emit(messageContext.agentContext, {
150
- type: WebRTCEvents_1.WebRTCEvents.IncomingAnswer,
151
- payload: {
152
- context: messageContext,
153
- thid,
154
- pthid: msg.thread?.parentThreadId,
155
- sdp: msg.sdp,
156
- iceServers: msg.iceServers,
157
- },
158
- });
159
- return;
160
- }
161
- /**
162
- * Process incoming ICE candidate message
163
- */
164
- async processIce(messageContext) {
165
- const thid = messageContext.message.threadId;
166
- this.events.emit(messageContext.agentContext, {
167
- type: WebRTCEvents_1.WebRTCEvents.IncomingIce,
168
- payload: {
169
- context: messageContext,
170
- thid,
171
- pthid: messageContext.message.thread?.parentThreadId,
172
- candidate: messageContext.message.candidate ?? {},
173
- endOfCandidates: messageContext.message.endOfCandidates,
174
- },
175
- });
176
- return;
177
- }
178
- /**
179
- * Process incoming renegotiate message
180
- */
181
- async processRenegotiate(messageContext) {
182
- const thid = messageContext.message.threadId;
183
- const msg = messageContext.message;
184
- this.events.emit(messageContext.agentContext, {
185
- type: WebRTCEvents_1.WebRTCEvents.RenegotiateRequested,
186
- payload: {
187
- context: messageContext,
188
- thid,
189
- pthid: msg.thread?.parentThreadId,
190
- reason: msg.reason,
191
- iceRestart: msg.iceRestart,
192
- iceServers: msg.iceServers,
193
- policy: msg.policy,
194
- },
195
- });
196
- return;
197
- }
198
- /**
199
- * Process incoming end call message
200
- */
201
- async processEnd(messageContext) {
202
- const connection = messageContext.assertReadyConnection();
203
- const thid = messageContext.message.threadId;
204
- const [record] = await this.repo.findByQuery(messageContext.agentContext, {
205
- connectionId: connection.id,
206
- threadId: thid,
207
- });
208
- if (record) {
209
- record.state = 'ended';
210
- await this.repo.update(messageContext.agentContext, record);
211
- }
212
- this.events.emit(messageContext.agentContext, {
213
- type: WebRTCEvents_1.WebRTCEvents.CallEnded,
214
- payload: {
215
- context: messageContext,
216
- thid,
217
- pthid: messageContext.message.thread?.parentThreadId,
218
- reason: messageContext.message.reason,
219
- },
220
- });
221
- return;
222
- }
223
- };
224
- exports.WebRTCService = WebRTCService;
225
- exports.WebRTCService = WebRTCService = __decorate([
226
- (0, tsyringe_1.injectable)(),
227
- __metadata("design:paramtypes", [WebRTCCallRepository_1.WebRTCCallRepository, core_1.EventEmitter])
228
- ], WebRTCService);
229
- //# sourceMappingURL=WebRTCService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WebRTCService.js","sourceRoot":"","sources":["../../../src/webrtc/services/WebRTCService.ts"],"names":[],"mappings":"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"}