@cemscale-voip/voip-sdk 1.2.0 → 1.2.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.
- package/README.md +30 -0
- package/dist/webrtc.d.ts +1 -1
- package/dist/webrtc.d.ts.map +1 -1
- package/dist/webrtc.js +87 -21
- package/dist/webrtc.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -149,6 +149,34 @@ const { apiKeys } = await voip.listApiKeys();
|
|
|
149
149
|
await voip.revokeApiKey('key-id');
|
|
150
150
|
```
|
|
151
151
|
|
|
152
|
+
## Connecting a WebRTC Softphone
|
|
153
|
+
|
|
154
|
+
Your app doesn't need to know or store SIP passwords. Use the API key to fetch credentials on the fly:
|
|
155
|
+
|
|
156
|
+
```typescript
|
|
157
|
+
// 1. Get SIP credentials for the extension (API key handles auth)
|
|
158
|
+
const { sipCredentials } = await voip.getSipCredentialsByNumber('1001');
|
|
159
|
+
|
|
160
|
+
// sipCredentials = {
|
|
161
|
+
// extension: "1001",
|
|
162
|
+
// displayName: "Alice",
|
|
163
|
+
// password: "auto-provided", <-- API returns it, your app doesn't store it
|
|
164
|
+
// sipDomain: "sip.cemscale.com",
|
|
165
|
+
// wsUri: "wss://sip.cemscale.com/ws",
|
|
166
|
+
// registrar: "sip:sip.cemscale.com"
|
|
167
|
+
// }
|
|
168
|
+
|
|
169
|
+
// 2. Also get TURN credentials for NAT traversal
|
|
170
|
+
const turn = await voip.getTurnCredentials();
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
Two methods available:
|
|
174
|
+
|
|
175
|
+
| Method | Use when |
|
|
176
|
+
|--------|----------|
|
|
177
|
+
| `getSipCredentials(extensionId)` | You have the extension UUID |
|
|
178
|
+
| `getSipCredentialsByNumber('1001')` | You have the extension number |
|
|
179
|
+
|
|
152
180
|
## WebRTC Softphone (Browser Only)
|
|
153
181
|
|
|
154
182
|
For building a browser-based softphone, use the `WebRTCPhone` class or the `useVoIP` React hook.
|
|
@@ -210,6 +238,8 @@ function PhoneWidget() {
|
|
|
210
238
|
| `getCallForward(id)` | Get forwarding |
|
|
211
239
|
| `getExtensionByCrmUser(crmUserId)` | Lookup by CRM user |
|
|
212
240
|
| `updateCrmMapping(id, params)` | Set CRM mapping |
|
|
241
|
+
| `getSipCredentials(id)` | SIP credentials by extension UUID |
|
|
242
|
+
| `getSipCredentialsByNumber('1001')` | SIP credentials by extension number |
|
|
213
243
|
|
|
214
244
|
### Conferences
|
|
215
245
|
| Method | Description |
|
package/dist/webrtc.d.ts
CHANGED
|
@@ -43,7 +43,7 @@ export declare class WebRTCPhone {
|
|
|
43
43
|
reject(): Promise<void>;
|
|
44
44
|
/** Hang up the current call */
|
|
45
45
|
hangup(): Promise<void>;
|
|
46
|
-
/** Hold/unhold the current call */
|
|
46
|
+
/** Hold/unhold the current call using SIP re-INVITE with SDP modification */
|
|
47
47
|
toggleHold(): Promise<boolean>;
|
|
48
48
|
/** Mute/unmute local audio */
|
|
49
49
|
toggleMute(): boolean;
|
package/dist/webrtc.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webrtc.d.ts","sourceRoot":"","sources":["../src/webrtc.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EAEd,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,KAAK,QAAQ,GAAG,MAAM,cAAc,CAAC;AAErC;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,SAAS,CAAoD;IACrE,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,YAAY;IAWhC,EAAE,CAAC,CAAC,SAAS,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAUzE,OAAO,CAAC,IAAI;IAiBZ,4CAA4C;IACtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2D5B,8BAA8B;IACxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC3B,0BAA0B;IAC1B,YAAY,IAAI,OAAO;IAQvB,4BAA4B;IACtB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAuCnD,OAAO,CAAC,kBAAkB;IAkC1B,8BAA8B;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B,8BAA8B;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAa7B,+BAA+B;IACzB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"webrtc.d.ts","sourceRoot":"","sources":["../src/webrtc.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EAEd,cAAc,EACf,MAAM,YAAY,CAAC;AAEpB,KAAK,QAAQ,GAAG,MAAM,cAAc,CAAC;AAErC;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,eAAe,CAA+B;IACtD,OAAO,CAAC,SAAS,CAAoD;IACrE,OAAO,CAAC,YAAY,CAAmB;IACvC,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,EAAE,YAAY;IAWhC,EAAE,CAAC,CAAC,SAAS,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAUzE,OAAO,CAAC,IAAI;IAiBZ,4CAA4C;IACtC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA2D5B,8BAA8B;IACxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC3B,0BAA0B;IAC1B,YAAY,IAAI,OAAO;IAQvB,4BAA4B;IACtB,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAuCnD,OAAO,CAAC,kBAAkB;IAkC1B,8BAA8B;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAY7B,8BAA8B;IACxB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAa7B,+BAA+B;IACzB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAuC7B,6EAA6E;IACvE,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IAuFpC,8BAA8B;IAC9B,UAAU,IAAI,OAAO;IA2BrB,uBAAuB;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAwC5B,sCAAsC;IAChC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYlD,uCAAuC;IACvC,cAAc,IAAI,cAAc,GAAG,IAAI;IAQvC,OAAO,CAAC,oBAAoB;IA4B5B,OAAO,CAAC,iBAAiB;IAoBzB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY;IAKpB,yBAAyB;IACnB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI/B"}
|
package/dist/webrtc.js
CHANGED
|
@@ -244,25 +244,42 @@ export class WebRTCPhone {
|
|
|
244
244
|
if (!this.currentSession)
|
|
245
245
|
throw new Error('No active call');
|
|
246
246
|
const session = this.currentSession;
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
247
|
+
try {
|
|
248
|
+
switch (session.state) {
|
|
249
|
+
case SessionState.Initial:
|
|
250
|
+
case SessionState.Establishing:
|
|
251
|
+
if (session instanceof Inviter) {
|
|
252
|
+
await session.cancel();
|
|
253
|
+
}
|
|
254
|
+
else if (session instanceof Invitation) {
|
|
255
|
+
await session.reject();
|
|
256
|
+
}
|
|
257
|
+
break;
|
|
258
|
+
case SessionState.Established:
|
|
259
|
+
case SessionState.Terminating:
|
|
260
|
+
await session.bye();
|
|
261
|
+
break;
|
|
262
|
+
case SessionState.Terminated:
|
|
263
|
+
// Already terminated, just clear
|
|
264
|
+
break;
|
|
265
|
+
default:
|
|
266
|
+
// Try bye for any other state
|
|
267
|
+
try {
|
|
268
|
+
await session.bye();
|
|
269
|
+
}
|
|
270
|
+
catch {
|
|
271
|
+
// Ignore if bye fails
|
|
272
|
+
}
|
|
273
|
+
break;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
catch (err) {
|
|
277
|
+
console.error('[WebRTCPhone] Hangup error:', err);
|
|
278
|
+
// Still clear session even if bye failed
|
|
262
279
|
}
|
|
263
280
|
this.clearSession();
|
|
264
281
|
}
|
|
265
|
-
/** Hold/unhold the current call */
|
|
282
|
+
/** Hold/unhold the current call using SIP re-INVITE with SDP modification */
|
|
266
283
|
async toggleHold() {
|
|
267
284
|
if (!this.currentSession || this.currentSession.state !== SessionState.Established) {
|
|
268
285
|
throw new Error('No established call to hold');
|
|
@@ -276,16 +293,65 @@ export class WebRTCPhone {
|
|
|
276
293
|
if (!pc)
|
|
277
294
|
throw new Error('No peer connection');
|
|
278
295
|
const isHeld = this.currentCallInfo.held;
|
|
279
|
-
|
|
296
|
+
const newHeldState = !isHeld;
|
|
297
|
+
// Modify SDP direction for hold/unhold
|
|
298
|
+
// Hold: a=sendonly (you send, they don't hear you; you don't hear them)
|
|
299
|
+
// Unhold: a=sendrecv (normal bidirectional audio)
|
|
300
|
+
const currentDescription = pc.localDescription;
|
|
301
|
+
if (!currentDescription || !currentDescription.sdp) {
|
|
302
|
+
throw new Error('No SDP to modify for hold');
|
|
303
|
+
}
|
|
304
|
+
// Modify SDP to change media direction
|
|
305
|
+
let modifiedSdp = currentDescription.sdp;
|
|
306
|
+
// Replace audio direction attribute
|
|
307
|
+
const audioDirection = newHeldState ? 'a=sendonly' : 'a=sendrecv';
|
|
308
|
+
modifiedSdp = modifiedSdp.replace(/(a=sendrecv|a=recvonly|a=sendonly|a=inactive)/g, (match) => {
|
|
309
|
+
// Only replace the first occurrence (audio section)
|
|
310
|
+
return audioDirection;
|
|
311
|
+
});
|
|
312
|
+
// Also toggle the actual track enabled state
|
|
280
313
|
for (const sender of pc.getSenders()) {
|
|
281
314
|
if (sender.track?.kind === 'audio') {
|
|
282
|
-
sender.track.enabled =
|
|
315
|
+
sender.track.enabled = !newHeldState; // disable when held
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
// Create new offer with modified SDP
|
|
319
|
+
const newOffer = new RTCSessionDescription({
|
|
320
|
+
type: 'offer',
|
|
321
|
+
sdp: modifiedSdp
|
|
322
|
+
});
|
|
323
|
+
await pc.setLocalDescription(newOffer);
|
|
324
|
+
// Wait for ICE gathering
|
|
325
|
+
await new Promise((resolve) => {
|
|
326
|
+
if (pc.iceGatheringState === 'complete') {
|
|
327
|
+
resolve();
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
const timeout = setTimeout(resolve, 500);
|
|
331
|
+
pc.onicegatheringstatechange = () => {
|
|
332
|
+
if (pc.iceGatheringState === 'complete') {
|
|
333
|
+
clearTimeout(timeout);
|
|
334
|
+
resolve();
|
|
335
|
+
}
|
|
336
|
+
};
|
|
283
337
|
}
|
|
338
|
+
});
|
|
339
|
+
// Send re-INVITE with the modified SDP
|
|
340
|
+
// This tells the server (FreeSWITCH) that we're holding
|
|
341
|
+
try {
|
|
342
|
+
await this.currentSession.invite({
|
|
343
|
+
sessionDescriptionHandlerOptions: {}
|
|
344
|
+
});
|
|
345
|
+
console.log(`[WebRTCPhone] Hold ${newHeldState ? 'ON' : 'OFF'}: sent re-INVITE with ${audioDirection}`);
|
|
346
|
+
}
|
|
347
|
+
catch (err) {
|
|
348
|
+
console.error('[WebRTCPhone] Hold re-INVITE failed:', err);
|
|
349
|
+
throw new Error(`Hold failed: ${err.message}`);
|
|
284
350
|
}
|
|
285
|
-
this.currentCallInfo.held =
|
|
286
|
-
this.currentCallInfo.state =
|
|
351
|
+
this.currentCallInfo.held = newHeldState;
|
|
352
|
+
this.currentCallInfo.state = newHeldState ? 'held' : 'established';
|
|
287
353
|
this.emitCallState();
|
|
288
|
-
return
|
|
354
|
+
return newHeldState;
|
|
289
355
|
}
|
|
290
356
|
/** Mute/unmute local audio */
|
|
291
357
|
toggleMute() {
|
package/dist/webrtc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webrtc.js","sourceRoot":"","sources":["../src/webrtc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"webrtc.js","sourceRoot":"","sources":["../src/webrtc.ts"],"names":[],"mappings":"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"}
|