@wazo/sdk 0.37.18 → 0.37.22
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/dist/wazo-sdk.js +13 -5
- package/esm/__tests__/api-client.test.js +52 -9
- package/esm/__tests__/web-rtc-client.test.js +80 -20
- package/esm/api/agentd.js +27 -4
- package/esm/api/amid.js +27 -4
- package/esm/api/application.js +27 -4
- package/esm/api/auth.js +29 -5
- package/esm/api/call-logd.js +29 -6
- package/esm/api/calld.js +27 -4
- package/esm/api/chatd.js +27 -4
- package/esm/api/confd.js +51 -8
- package/esm/api/ctid-ng.js +27 -4
- package/esm/api/dird.js +27 -4
- package/esm/api/webhookd.js +27 -4
- package/esm/api-client.js +54 -11
- package/esm/checker/Checker.js +83 -21
- package/esm/checker/checks/aor.js +54 -11
- package/esm/checker/checks/api.js +54 -11
- package/esm/checker/checks/ice-ipv4.js +1 -1
- package/esm/checker/checks/index.js +84 -22
- package/esm/checker/checks/symmetric-nat.js +1 -1
- package/esm/checker/checks/wazo-websocket.js +29 -4
- package/esm/checker/checks/webrtc-transport.js +82 -22
- package/esm/checker/checks/webrtc.js +82 -22
- package/esm/domain/AdHocAPIConference.js +54 -11
- package/esm/domain/Agent.js +1 -1
- package/esm/domain/BadResponse.js +1 -1
- package/esm/domain/Call.js +1 -1
- package/esm/domain/CallLog.js +3 -3
- package/esm/domain/CallSession.js +1 -1
- package/esm/domain/ChatMessage.js +1 -1
- package/esm/domain/ChatRoom.js +1 -1
- package/esm/domain/Contact.js +2 -1
- package/esm/domain/Country.js +1 -1
- package/esm/domain/Device/DebugDevice.js +1 -1
- package/esm/domain/ExternalApp.js +1 -1
- package/esm/domain/Features.js +54 -10
- package/esm/domain/ForwardOption.js +2 -1
- package/esm/domain/IndirectTransfer.js +1 -1
- package/esm/domain/Line.js +1 -1
- package/esm/domain/Meeting.js +20 -3
- package/esm/domain/NotificationOptions.js +1 -1
- package/esm/domain/Phone/CTIPhone.js +55 -11
- package/esm/domain/Phone/WebRTCPhone.js +39 -6
- package/esm/domain/Profile.js +2 -1
- package/esm/domain/Recording.js +2 -2
- package/esm/domain/Relocation.js +1 -1
- package/esm/domain/Room.js +1 -1
- package/esm/domain/ServerError.js +1 -1
- package/esm/domain/Session.js +2 -2
- package/esm/domain/SipLine.js +1 -1
- package/esm/domain/Subscription.js +1 -1
- package/esm/domain/SwitchboardCall.js +1 -1
- package/esm/domain/Voicemail.js +1 -1
- package/esm/domain/__tests__/CallLog.test.js +2 -2
- package/esm/index.js +101 -24
- package/esm/lib/WazoSessionDescriptionHandler.js +28 -4
- package/esm/service/CallApi.js +54 -11
- package/esm/service/IssueReporter.js +27 -4
- package/esm/service/__tests__/IssueReporter.test.js +26 -3
- package/esm/service/getApiClient.js +55 -11
- package/esm/simple/Auth.js +101 -23
- package/esm/simple/Configuration.js +100 -23
- package/esm/simple/Directory.js +53 -10
- package/esm/simple/Phone.js +100 -23
- package/esm/simple/Websocket.js +30 -4
- package/esm/simple/index.js +100 -23
- package/esm/simple/room/LocalParticipant.js +113 -40
- package/esm/simple/room/Participant.js +112 -37
- package/esm/simple/room/RemoteParticipant.js +114 -41
- package/esm/simple/room/Room.js +113 -37
- package/esm/simple/room/SipRoom.js +101 -26
- package/esm/simple/room/Stream.js +101 -26
- package/esm/simple/room/__tests__/RemoteParticipant.test.js +99 -22
- package/esm/simple/utils.js +99 -22
- package/esm/utils/Emitter.js +1 -1
- package/esm/utils/Heartbeat.js +1 -1
- package/esm/utils/__tests__/api-requester.test.js +26 -3
- package/esm/utils/api-requester.js +28 -4
- package/esm/utils/compare-version.js +1 -1
- package/esm/utils/isMobile.js +1 -1
- package/esm/utils/new-from.js +1 -1
- package/esm/utils/once.js +1 -1
- package/esm/utils/update-from.js +1 -1
- package/esm/web-rtc-client.js +83 -22
- package/esm/websocket-client.js +30 -4
- package/lib/__tests__/api-client.test.js +61 -18
- package/lib/__tests__/web-rtc-client.test.js +97 -37
- package/lib/api/agentd.js +27 -4
- package/lib/api/amid.js +27 -4
- package/lib/api/application.js +27 -4
- package/lib/api/auth.js +28 -5
- package/lib/api/call-logd.js +34 -11
- package/lib/api/calld.js +30 -7
- package/lib/api/chatd.js +28 -5
- package/lib/api/confd.js +51 -8
- package/lib/api/ctid-ng.js +30 -7
- package/lib/api/dird.js +27 -4
- package/lib/api/webhookd.js +27 -4
- package/lib/api-client.js +61 -18
- package/lib/checker/Checker.js +100 -38
- package/lib/checker/checks/aor.js +61 -18
- package/lib/checker/checks/api.js +61 -18
- package/lib/checker/checks/index.js +100 -38
- package/lib/checker/checks/wazo-websocket.js +31 -6
- package/lib/checker/checks/webrtc-transport.js +97 -37
- package/lib/checker/checks/webrtc.js +97 -37
- package/lib/domain/AdHocAPIConference.js +61 -18
- package/lib/domain/Call.js +1 -1
- package/lib/domain/CallLog.js +7 -7
- package/lib/domain/ChatMessage.js +1 -1
- package/lib/domain/Contact.js +1 -1
- package/lib/domain/Features.js +62 -19
- package/lib/domain/ForwardOption.js +1 -1
- package/lib/domain/Meeting.js +19 -2
- package/lib/domain/Phone/CTIPhone.js +63 -20
- package/lib/domain/Phone/WebRTCPhone.js +40 -8
- package/lib/domain/Profile.js +1 -1
- package/lib/domain/Recording.js +3 -3
- package/lib/domain/Voicemail.js +1 -1
- package/lib/domain/__tests__/Call.test.js +1 -1
- package/lib/domain/__tests__/CallLog.test.js +13 -13
- package/lib/domain/__tests__/Voicemail.test.js +1 -1
- package/lib/index.js +120 -43
- package/lib/lib/WazoSessionDescriptionHandler.js +32 -9
- package/lib/service/CallApi.js +61 -18
- package/lib/service/IssueReporter.js +27 -4
- package/lib/service/__tests__/IssueReporter.test.js +27 -4
- package/lib/service/getApiClient.js +62 -19
- package/lib/simple/Auth.js +119 -42
- package/lib/simple/Configuration.js +118 -41
- package/lib/simple/Directory.js +61 -18
- package/lib/simple/Phone.js +118 -41
- package/lib/simple/Websocket.js +32 -6
- package/lib/simple/index.js +118 -41
- package/lib/simple/room/LocalParticipant.js +132 -59
- package/lib/simple/room/Participant.js +130 -55
- package/lib/simple/room/RemoteParticipant.js +133 -60
- package/lib/simple/room/Room.js +131 -56
- package/lib/simple/room/SipRoom.js +120 -45
- package/lib/simple/room/Stream.js +120 -45
- package/lib/simple/room/__tests__/RemoteParticipant.test.js +118 -41
- package/lib/simple/utils.js +118 -41
- package/lib/utils/Emitter.js +1 -1
- package/lib/utils/PhoneNumberUtil.js +2 -2
- package/lib/utils/__tests__/PhoneNumberUtil.test.js +2 -2
- package/lib/utils/__tests__/api-requester.test.js +27 -4
- package/lib/utils/__tests__/sdp.test.js +12 -12
- package/lib/utils/api-requester.js +28 -5
- package/lib/utils/sdp.js +10 -10
- package/lib/web-rtc-client.js +98 -38
- package/lib/websocket-client.js +33 -7
- package/package.json +2 -2
- package/src/api/confd.js +5 -2
- package/src/domain/CallLog.js +1 -1
- package/src/domain/Meeting.js +19 -2
- package/src/domain/Phone/WebRTCPhone.js +11 -2
- package/src/domain/Recording.js +1 -1
- package/src/service/IssueReporter.js +26 -3
- package/src/simple/Phone.js +5 -0
- package/src/types/WebSocketMessage.js +5 -1
- package/src/web-rtc-client.js +28 -11
- package/src/websocket-client.js +2 -0
|
@@ -440,6 +440,7 @@ class IssueReporter {
|
|
|
440
440
|
|
|
441
441
|
|
|
442
442
|
|
|
443
|
+
|
|
443
444
|
|
|
444
445
|
constructor() {
|
|
445
446
|
addLevelsTo(this);
|
|
@@ -451,12 +452,17 @@ class IssueReporter {
|
|
|
451
452
|
this.bufferTimeout = null;
|
|
452
453
|
this._boundProcessBuffer = this._processBuffer.bind(this);
|
|
453
454
|
this._boundParseLoggerBody = this._parseLoggerBody.bind(this);
|
|
455
|
+
this._callback = null;
|
|
454
456
|
}
|
|
455
457
|
|
|
456
458
|
init() {
|
|
457
459
|
this._catchConsole();
|
|
458
460
|
}
|
|
459
461
|
|
|
462
|
+
setCallback(cb ) {
|
|
463
|
+
this._callback = cb;
|
|
464
|
+
}
|
|
465
|
+
|
|
460
466
|
configureRemoteClient(configuration = { tag: 'wazo-sdk', host: null, port: null, level: null, extra: {} }) {
|
|
461
467
|
this.remoteClientConfiguration = configuration;
|
|
462
468
|
}
|
|
@@ -492,6 +498,7 @@ class IssueReporter {
|
|
|
492
498
|
|
|
493
499
|
// Handle category label
|
|
494
500
|
let category = null;
|
|
501
|
+
let skipSendToRemote = false;
|
|
495
502
|
let extra = {};
|
|
496
503
|
if (args[0].indexOf(CATEGORY_PREFIX) === 0) {
|
|
497
504
|
category = args[0].split('=')[1];
|
|
@@ -507,6 +514,7 @@ class IssueReporter {
|
|
|
507
514
|
errorMessage: lastArg.message,
|
|
508
515
|
errorStack: lastArg.stack,
|
|
509
516
|
errorType: lastArg.constructor.name,
|
|
517
|
+
skipSendToRemote: lastArg.skipSendToRemote,
|
|
510
518
|
};
|
|
511
519
|
} else {
|
|
512
520
|
extra = lastArg;
|
|
@@ -515,6 +523,11 @@ class IssueReporter {
|
|
|
515
523
|
args.splice(1, 1);
|
|
516
524
|
}
|
|
517
525
|
|
|
526
|
+
if (extra.skipSendToRemote) {
|
|
527
|
+
skipSendToRemote = true;
|
|
528
|
+
delete extra.skipSendToRemote;
|
|
529
|
+
}
|
|
530
|
+
|
|
518
531
|
const date = moment().format('YYYY-MM-DD HH:mm:ss.SSS');
|
|
519
532
|
const message = args.join(', ');
|
|
520
533
|
let consoleMessage = message;
|
|
@@ -535,7 +548,13 @@ class IssueReporter {
|
|
|
535
548
|
const oldMethod = this.oldConsoleMethods[consoleLevel] || this.oldConsoleMethods.log;
|
|
536
549
|
oldMethod.apply(oldMethod, [date, consoleMessage]);
|
|
537
550
|
|
|
538
|
-
this.
|
|
551
|
+
if (this._callback) {
|
|
552
|
+
this._callback(level, consoleMessage);
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
if (!skipSendToRemote) {
|
|
556
|
+
this._sendToRemoteLogger(level, { date, message, category, ...extra });
|
|
557
|
+
}
|
|
539
558
|
}
|
|
540
559
|
|
|
541
560
|
logRequest(url , options , response , start ) {
|
|
@@ -680,7 +699,11 @@ class IssueReporter {
|
|
|
680
699
|
},
|
|
681
700
|
// $FlowFixMe
|
|
682
701
|
body,
|
|
683
|
-
}).catch(() => {
|
|
702
|
+
}).catch((e ) => {
|
|
703
|
+
// $FlowFixMe
|
|
704
|
+
e.skipSendToRemote = true;
|
|
705
|
+
this.log('error', this._makeCategory('grafana'), 'Sending log to grafana, error', e);
|
|
706
|
+
|
|
684
707
|
setTimeout(() => {
|
|
685
708
|
if (isArray) {
|
|
686
709
|
payload = payload.map(message => {
|
|
@@ -692,7 +715,7 @@ class IssueReporter {
|
|
|
692
715
|
payload._retry = retry + 1;
|
|
693
716
|
}
|
|
694
717
|
|
|
695
|
-
this._sendDebugToGrafana(
|
|
718
|
+
this._sendDebugToGrafana(payload, retry + 1);
|
|
696
719
|
}, 5000 + retry * 1000);
|
|
697
720
|
});
|
|
698
721
|
}
|
|
@@ -2630,7 +2653,8 @@ class ExternalApp {
|
|
|
2630
2653
|
|
|
2631
2654
|
|
|
2632
2655
|
|
|
2633
|
-
|
|
2656
|
+
|
|
2657
|
+
|
|
2634
2658
|
|
|
2635
2659
|
|
|
2636
2660
|
class Meeting {
|
|
@@ -2642,6 +2666,7 @@ class Meeting {
|
|
|
2642
2666
|
|
|
2643
2667
|
|
|
2644
2668
|
|
|
2669
|
+
|
|
2645
2670
|
|
|
2646
2671
|
|
|
2647
2672
|
static parse(plain ) {
|
|
@@ -2653,14 +2678,28 @@ class Meeting {
|
|
|
2653
2678
|
port: plain.port,
|
|
2654
2679
|
uuid: plain.uuid,
|
|
2655
2680
|
number: plain.number,
|
|
2681
|
+
persistent: plain.persistent,
|
|
2656
2682
|
});
|
|
2657
2683
|
}
|
|
2658
2684
|
|
|
2685
|
+
static parseMany(items ) {
|
|
2686
|
+
return items.map(plain => Meeting.parse(plain));
|
|
2687
|
+
}
|
|
2688
|
+
|
|
2659
2689
|
static newFrom(meeting ) {
|
|
2660
2690
|
return newFrom(meeting, Meeting);
|
|
2661
2691
|
}
|
|
2662
2692
|
|
|
2663
|
-
constructor({
|
|
2693
|
+
constructor({
|
|
2694
|
+
uuid,
|
|
2695
|
+
name,
|
|
2696
|
+
guestSipAuthorization,
|
|
2697
|
+
ownerUuids,
|
|
2698
|
+
port,
|
|
2699
|
+
uri,
|
|
2700
|
+
number,
|
|
2701
|
+
persistent,
|
|
2702
|
+
} = {}) {
|
|
2664
2703
|
this.guestSipAuthorization = guestSipAuthorization;
|
|
2665
2704
|
this.uri = uri;
|
|
2666
2705
|
this.name = name;
|
|
@@ -2668,6 +2707,7 @@ class Meeting {
|
|
|
2668
2707
|
this.port = port;
|
|
2669
2708
|
this.uuid = uuid;
|
|
2670
2709
|
this.number = number;
|
|
2710
|
+
this.persistent = persistent;
|
|
2671
2711
|
|
|
2672
2712
|
// Useful to compare instead of instanceof with minified code
|
|
2673
2713
|
this.type = 'Meeting';
|
|
@@ -2745,8 +2785,11 @@ var confdMethods = (client , baseUrl ) => ({
|
|
|
2745
2785
|
}
|
|
2746
2786
|
},
|
|
2747
2787
|
|
|
2748
|
-
|
|
2749
|
-
client.
|
|
2788
|
+
getMyMeetings: () =>
|
|
2789
|
+
client.get(`${baseUrl}/users/me/meetings`).then(response => Meeting.parseMany(response.items)),
|
|
2790
|
+
|
|
2791
|
+
createMyMeeting: (name , persistent ) =>
|
|
2792
|
+
client.post(`${baseUrl}/users/me/meetings`, { name, persistent }).then(Meeting.parse),
|
|
2750
2793
|
|
|
2751
2794
|
deleteMyMeeting: (meetingUuid ) =>
|
|
2752
2795
|
client.delete(`${baseUrl}/users/me/meetings/${meetingUuid}`, null),
|
|
@@ -3576,7 +3619,7 @@ class Recording {
|
|
|
3576
3619
|
|
|
3577
3620
|
|
|
3578
3621
|
|
|
3579
|
-
static parseMany(recordings
|
|
3622
|
+
static parseMany(recordings = []) {
|
|
3580
3623
|
return recordings.map(item => Recording.parse(item));
|
|
3581
3624
|
}
|
|
3582
3625
|
|
|
@@ -3702,7 +3745,7 @@ class CallLog {
|
|
|
3702
3745
|
duration: (plain.duration || 0) * 1000, // duration is in seconds
|
|
3703
3746
|
start: moment(plain.start).toDate(),
|
|
3704
3747
|
end: plain.end ? moment(plain.end).toDate() : null,
|
|
3705
|
-
recordings: Recording.parseMany(plain.recordings),
|
|
3748
|
+
recordings: Recording.parseMany(plain.recordings || []),
|
|
3706
3749
|
});
|
|
3707
3750
|
}
|
|
3708
3751
|
|
|
@@ -6956,7 +6999,9 @@ class WebRTCClient extends Emitter {
|
|
|
6956
6999
|
const inviteOptions = {
|
|
6957
7000
|
requestDelegate: {
|
|
6958
7001
|
onAccept: (response ) => {
|
|
6959
|
-
session.sessionDescriptionHandler.peerConnection
|
|
7002
|
+
if (session.sessionDescriptionHandler.peerConnection) {
|
|
7003
|
+
session.sessionDescriptionHandler.peerConnection.sfu = conference;
|
|
7004
|
+
}
|
|
6960
7005
|
this._onAccepted(session, response.session, true);
|
|
6961
7006
|
},
|
|
6962
7007
|
onReject: (response ) => {
|
|
@@ -7292,7 +7337,7 @@ class WebRTCClient extends Emitter {
|
|
|
7292
7337
|
// We search for the last transceiver without `video-` in the mid (video- means remote transceiver)
|
|
7293
7338
|
const transceivers = pc.getTransceivers();
|
|
7294
7339
|
const transceiverIdx = lastIndexOf(transceivers, transceiver =>
|
|
7295
|
-
transceiver.sender.track === null && transceiver.mid.indexOf('video') === -1);
|
|
7340
|
+
transceiver.sender.track === null && transceiver.mid && transceiver.mid.indexOf('video') === -1);
|
|
7296
7341
|
|
|
7297
7342
|
videoSender = transceiverIdx !== -1 ? transceivers[transceiverIdx].sender : null;
|
|
7298
7343
|
} else {
|
|
@@ -7828,6 +7873,16 @@ class WebRTCClient extends Emitter {
|
|
|
7828
7873
|
return this.hasRemoteVideo(sessionId) ? this.getRemoteStream(sessionId) : null;
|
|
7829
7874
|
}
|
|
7830
7875
|
|
|
7876
|
+
// Useful in a react-native environment when remoteMediaStream is not updated
|
|
7877
|
+
getRemoteVideoStreamFromPc(sessionId ) {
|
|
7878
|
+
const pc = this.getPeerConnection(sessionId);
|
|
7879
|
+
if (!pc) {
|
|
7880
|
+
return null;
|
|
7881
|
+
}
|
|
7882
|
+
|
|
7883
|
+
return pc.getRemoteStreams().find(stream => !!stream.getVideoTracks().length);
|
|
7884
|
+
}
|
|
7885
|
+
|
|
7831
7886
|
hasVideo(sessionId ) {
|
|
7832
7887
|
return this.hasLocalVideo(sessionId) || this.hasRemoteVideo(sessionId);
|
|
7833
7888
|
}
|
|
@@ -8338,6 +8393,7 @@ class WebRTCClient extends Emitter {
|
|
|
8338
8393
|
session.sessionDescriptionHandler.remoteMediaStream.onaddtrack = onTrack;
|
|
8339
8394
|
|
|
8340
8395
|
pc.oniceconnectionstatechange = () => {
|
|
8396
|
+
logger$8.info('on ice connection state changed', { state: pc.iceConnectionState });
|
|
8341
8397
|
if (pc.iceConnectionState === 'disconnected') {
|
|
8342
8398
|
this.eventEmitter.emit(ON_DISCONNECTED$1);
|
|
8343
8399
|
}
|
|
@@ -8606,18 +8662,22 @@ class WebRTCClient extends Emitter {
|
|
|
8606
8662
|
});
|
|
8607
8663
|
|
|
8608
8664
|
networkStats.packetsLost = packetsLost;
|
|
8609
|
-
networkStats.
|
|
8665
|
+
networkStats.totalAudioBytesSent = audioBytesSent;
|
|
8666
|
+
networkStats.audioBytesSent = audioBytesSent - lastAudioSent;
|
|
8667
|
+
networkStats.totalAudioBytesReceived = audioBytesReceived - lastAudioReceived;
|
|
8610
8668
|
networkStats.audioBytesReceived = audioBytesReceived;
|
|
8611
|
-
networkStats.
|
|
8612
|
-
networkStats.
|
|
8669
|
+
networkStats.totalVideoBytesSent = videoBytesSent;
|
|
8670
|
+
networkStats.videoBytesSent = videoBytesSent - lastVideoSent;
|
|
8671
|
+
networkStats.totalVideoBytesReceived = videoBytesReceived;
|
|
8672
|
+
networkStats.videoBytesReceived = videoBytesReceived - lastVideoReceived;
|
|
8673
|
+
networkStats.totalTransportSent = transportSent - lastTransportSent;
|
|
8613
8674
|
networkStats.transportSent = transportSent;
|
|
8614
|
-
networkStats.
|
|
8675
|
+
networkStats.totalTransportReceived = transportReceived;
|
|
8676
|
+
networkStats.transportReceived = transportReceived - lastTransportReceived;
|
|
8615
8677
|
|
|
8616
|
-
|
|
8617
|
-
+
|
|
8618
|
-
+
|
|
8619
|
-
|
|
8620
|
-
networkStats.bandwidth = bandwidth;
|
|
8678
|
+
networkStats.bandwidth = networkStats.audioBytesSent + networkStats.audioBytesReceived
|
|
8679
|
+
+ networkStats.videoBytesSent + networkStats.videoBytesReceived + networkStats.transportReceived
|
|
8680
|
+
+ networkStats.transportSent;
|
|
8621
8681
|
|
|
8622
8682
|
this.eventEmitter.emit(ON_NETWORK_STATS$1, session, networkStats, this.sessionNetworkStats[sessionId]);
|
|
8623
8683
|
this.sessionNetworkStats[sessionId].push(networkStats);
|
|
@@ -8999,7 +9059,10 @@ class WebRTCPhone extends Emitter {
|
|
|
8999
9059
|
|
|
9000
9060
|
onCancel(message);
|
|
9001
9061
|
const elsewhere = message.data.indexOf('cause=26') !== -1 && message.data.indexOf('completed elsewhere') !== -1;
|
|
9002
|
-
|
|
9062
|
+
const callSession = this._createCallSession(sipSession);
|
|
9063
|
+
delete this.callSessions[callSession.getId()];
|
|
9064
|
+
|
|
9065
|
+
this.eventEmitter.emit(ON_CALL_CANCELED, callSession, elsewhere);
|
|
9003
9066
|
};
|
|
9004
9067
|
} else if (sipSession instanceof Invitation) {
|
|
9005
9068
|
console.warn('sipSession._onCancel not found, please update the wazo SDK accordingly');
|
|
@@ -9028,9 +9091,11 @@ class WebRTCPhone extends Emitter {
|
|
|
9028
9091
|
case SessionState.Terminated: {
|
|
9029
9092
|
logger$7.info('WebRTC phone - call terminated', { sipId: sipSession.id });
|
|
9030
9093
|
|
|
9094
|
+
// Should be called before `_onCallTerminated` or the callCount will not decrement...
|
|
9095
|
+
const callSession = this._createCallSession(sipSession);
|
|
9031
9096
|
const wasCurrentSession = this._onCallTerminated(sipSession);
|
|
9032
9097
|
|
|
9033
|
-
return this.eventEmitter.emit(ON_CALL_ENDED,
|
|
9098
|
+
return this.eventEmitter.emit(ON_CALL_ENDED, callSession, wasCurrentSession);
|
|
9034
9099
|
}
|
|
9035
9100
|
}
|
|
9036
9101
|
});
|
|
@@ -9978,6 +10043,10 @@ class WebRTCPhone extends Emitter {
|
|
|
9978
10043
|
return callSession ? this.client.getRemoteVideoStream(callSession.sipCallId) : null;
|
|
9979
10044
|
}
|
|
9980
10045
|
|
|
10046
|
+
getRemoteVideoStreamFromPc(callSession ) {
|
|
10047
|
+
return callSession ? this.client.getRemoteVideoStreamFromPc(callSession.sipCallId) : null;
|
|
10048
|
+
}
|
|
10049
|
+
|
|
9981
10050
|
hasRemoteVideo(callSession ) {
|
|
9982
10051
|
return callSession ? this.client.hasRemoteVideo(callSession.sipCallId) : false;
|
|
9983
10052
|
}
|
|
@@ -10661,6 +10730,11 @@ class Phone extends Emitter {
|
|
|
10661
10730
|
return this.getRemoteVideoStream(callSession);
|
|
10662
10731
|
}
|
|
10663
10732
|
|
|
10733
|
+
// Useful in a react-native environment when remoteMediaStream is not updated
|
|
10734
|
+
getRemoteVideoStreamFromPc(callSession ) {
|
|
10735
|
+
return this.phone ? this.phone.getRemoteVideoStreamFromPc(callSession) : false;
|
|
10736
|
+
}
|
|
10737
|
+
|
|
10664
10738
|
hasVideo(callSession ) {
|
|
10665
10739
|
return this.phone ? this.phone.hasVideo(callSession) : false;
|
|
10666
10740
|
}
|
|
@@ -10820,6 +10894,7 @@ const AGENT_PAUSED = 'agent_paused';
|
|
|
10820
10894
|
const AGENT_UNPAUSED = 'agent_unpaused';
|
|
10821
10895
|
const CONFERENCE_ADHOC_PARTICIPANT_LEFT = 'conference_adhoc_participant_left';
|
|
10822
10896
|
const CONFERENCE_ADHOC_DELETED = 'conference_adhoc_deleted';
|
|
10897
|
+
const MEETING_USER_PROGRESS = 'meeting_user_progress';
|
|
10823
10898
|
|
|
10824
10899
|
const BLACKLIST_EVENTS = [
|
|
10825
10900
|
CHAT_MESSAGE_SENT,
|
|
@@ -11170,6 +11245,7 @@ WebSocketClient.eventLists = [
|
|
|
11170
11245
|
AGENT_UNPAUSED,
|
|
11171
11246
|
CONFERENCE_ADHOC_PARTICIPANT_LEFT,
|
|
11172
11247
|
CONFERENCE_ADHOC_DELETED,
|
|
11248
|
+
MEETING_USER_PROGRESS,
|
|
11173
11249
|
];
|
|
11174
11250
|
|
|
11175
11251
|
var WebSocketClient$1 = /*#__PURE__*/Object.freeze({
|
|
@@ -11240,6 +11316,7 @@ var WebSocketClient$1 = /*#__PURE__*/Object.freeze({
|
|
|
11240
11316
|
AGENT_UNPAUSED: AGENT_UNPAUSED,
|
|
11241
11317
|
CONFERENCE_ADHOC_PARTICIPANT_LEFT: CONFERENCE_ADHOC_PARTICIPANT_LEFT,
|
|
11242
11318
|
CONFERENCE_ADHOC_DELETED: CONFERENCE_ADHOC_DELETED,
|
|
11319
|
+
MEETING_USER_PROGRESS: MEETING_USER_PROGRESS,
|
|
11243
11320
|
HEARTBEAT_ENGINE_VERSION: HEARTBEAT_ENGINE_VERSION,
|
|
11244
11321
|
'default': WebSocketClient
|
|
11245
11322
|
});
|
|
@@ -11331,7 +11408,7 @@ var Websocket$1 = global.wazoWebsocketInstance;
|
|
|
11331
11408
|
|
|
11332
11409
|
const logger$3 = IssueReporter$1.loggerFor('sdk-sip-room');
|
|
11333
11410
|
|
|
11334
|
-
class SipRoom extends Room
|
|
11411
|
+
class SipRoom extends Room {
|
|
11335
11412
|
|
|
11336
11413
|
static async connect({ extension, constraints, audioOnly = false, extra, room } ) {
|
|
11337
11414
|
logger$3.info('connecting to sip room', { extension, audioOnly, room: !!room });
|
|
@@ -11661,7 +11738,7 @@ class NotificationOptions {
|
|
|
11661
11738
|
|
|
11662
11739
|
|
|
11663
11740
|
// Represents a conference room, like `9000`.
|
|
11664
|
-
class Room$
|
|
11741
|
+
class Room$1 {
|
|
11665
11742
|
|
|
11666
11743
|
|
|
11667
11744
|
|
|
@@ -11682,7 +11759,7 @@ class Room$2 {
|
|
|
11682
11759
|
}
|
|
11683
11760
|
|
|
11684
11761
|
connect(callSession ) {
|
|
11685
|
-
return new Room$
|
|
11762
|
+
return new Room$1({ ...this, connectedCallSession: callSession });
|
|
11686
11763
|
}
|
|
11687
11764
|
|
|
11688
11765
|
has(callSession ) {
|
|
@@ -11691,7 +11768,7 @@ class Room$2 {
|
|
|
11691
11768
|
|
|
11692
11769
|
addParticipant(uuid , extension , talking = null) {
|
|
11693
11770
|
if (!this.participants.some(participant => participant.uuid === uuid || participant.extension === extension)) {
|
|
11694
|
-
return new Room$
|
|
11771
|
+
return new Room$1({ ...this, participants: [...this.participants, { uuid, extension, talking }] });
|
|
11695
11772
|
}
|
|
11696
11773
|
|
|
11697
11774
|
return this;
|
|
@@ -11710,7 +11787,7 @@ class Room$2 {
|
|
|
11710
11787
|
updatedParticipants.push(participant);
|
|
11711
11788
|
}
|
|
11712
11789
|
|
|
11713
|
-
return new Room$
|
|
11790
|
+
return new Room$1({ ...this, participants: updatedParticipants });
|
|
11714
11791
|
}
|
|
11715
11792
|
|
|
11716
11793
|
updateParticipantByExtension(extension , participant , shouldAdd = false) {
|
|
@@ -11726,7 +11803,7 @@ class Room$2 {
|
|
|
11726
11803
|
updatedParticipants.push(participant);
|
|
11727
11804
|
}
|
|
11728
11805
|
|
|
11729
|
-
return new Room$
|
|
11806
|
+
return new Room$1({ ...this, participants: updatedParticipants });
|
|
11730
11807
|
}
|
|
11731
11808
|
|
|
11732
11809
|
hasCallWithId(id ) {
|
|
@@ -11734,18 +11811,18 @@ class Room$2 {
|
|
|
11734
11811
|
}
|
|
11735
11812
|
|
|
11736
11813
|
disconnect() {
|
|
11737
|
-
return new Room$
|
|
11814
|
+
return new Room$1({ ...this, connectedCallSession: null });
|
|
11738
11815
|
}
|
|
11739
11816
|
|
|
11740
11817
|
removeParticipantWithUUID(uuid ) {
|
|
11741
|
-
return new Room$
|
|
11818
|
+
return new Room$1({
|
|
11742
11819
|
...this,
|
|
11743
11820
|
participants: this.participants.filter(participant => participant.uuid !== uuid),
|
|
11744
11821
|
});
|
|
11745
11822
|
}
|
|
11746
11823
|
|
|
11747
11824
|
removeParticipantWithExtension(extension ) {
|
|
11748
|
-
return new Room$
|
|
11825
|
+
return new Room$1({
|
|
11749
11826
|
...this,
|
|
11750
11827
|
participants: this.participants.filter(participant => participant.extension !== extension),
|
|
11751
11828
|
});
|
|
@@ -11756,7 +11833,7 @@ class Room$2 {
|
|
|
11756
11833
|
}
|
|
11757
11834
|
|
|
11758
11835
|
static newFrom(room ) {
|
|
11759
|
-
return newFrom(room, Room$
|
|
11836
|
+
return newFrom(room, Room$1);
|
|
11760
11837
|
}
|
|
11761
11838
|
}
|
|
11762
11839
|
|
|
@@ -12427,10 +12504,10 @@ const Wazo = {
|
|
|
12427
12504
|
Auth: Auth$1,
|
|
12428
12505
|
Phone: Phone$1,
|
|
12429
12506
|
Websocket: Websocket$1,
|
|
12430
|
-
Room
|
|
12507
|
+
Room,
|
|
12431
12508
|
SipRoom,
|
|
12432
12509
|
RemoteParticipant,
|
|
12433
|
-
LocalParticipant
|
|
12510
|
+
LocalParticipant,
|
|
12434
12511
|
Stream,
|
|
12435
12512
|
createLocalVideoStream,
|
|
12436
12513
|
createLocalAudioStream,
|
|
@@ -12460,7 +12537,7 @@ const Wazo = {
|
|
|
12460
12537
|
Session,
|
|
12461
12538
|
Voicemail,
|
|
12462
12539
|
Relocation,
|
|
12463
|
-
ConferenceRoom: Room$
|
|
12540
|
+
ConferenceRoom: Room$1,
|
|
12464
12541
|
CallSession,
|
|
12465
12542
|
IndirectTransfer,
|
|
12466
12543
|
SwitchboardCall,
|
|
@@ -13330,8 +13407,6 @@ class Room extends Emitter {
|
|
|
13330
13407
|
}
|
|
13331
13408
|
}
|
|
13332
13409
|
|
|
13333
|
-
var Room$1 = Room;
|
|
13334
|
-
|
|
13335
13410
|
//
|
|
13336
13411
|
|
|
13337
13412
|
const logger = IssueReporter$1.loggerFor('room');
|
|
@@ -13627,6 +13702,4 @@ class Participant extends Emitter {
|
|
|
13627
13702
|
class LocalParticipant extends Participant {
|
|
13628
13703
|
}
|
|
13629
13704
|
|
|
13630
|
-
|
|
13631
|
-
|
|
13632
|
-
export { LocalParticipant$1 as default };
|
|
13705
|
+
export default LocalParticipant;
|