@wazo/sdk 0.39.14 → 0.40.0
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 +2 -2
- package/dist/wazo-sdk.js +12 -12
- package/esm/__tests__/api-client.test.js +0 -10
- package/esm/__tests__/web-rtc-client.test.js +2 -15
- package/esm/api/amid.js +12 -4
- package/esm/api/chatd.js +0 -1
- package/esm/api/dird.js +7 -10
- package/esm/checker/checks/ice-ipv4.js +2 -3
- package/esm/checker/checks/symmetric-nat.js +7 -4
- package/esm/domain/AdHocAPIConference.js +1 -1
- package/esm/domain/CallLog.js +1 -1
- package/esm/domain/Contact.js +2 -1
- package/esm/domain/MeetingAuthorization.js +6 -0
- package/esm/domain/Phone/CTIPhone.js +2 -0
- package/esm/domain/Phone/WebRTCPhone.js +23 -18
- package/esm/domain/Session.js +2 -2
- package/esm/domain/__tests__/Agent.test.js +0 -2
- package/esm/domain/__tests__/Call.test.js +0 -1
- package/esm/domain/__tests__/CallLog.test.js +0 -1
- package/esm/domain/__tests__/CallSession.test.js +1 -2
- package/esm/domain/__tests__/Contact.test.js +2 -4
- package/esm/domain/__tests__/IndirectTransfer.test.js +0 -1
- package/esm/domain/__tests__/Profile.test.js +0 -1
- package/esm/domain/__tests__/Room.test.js +1 -25
- package/esm/domain/__tests__/Session.test.js +13 -14
- package/esm/domain/__tests__/SipLine.test.js +2 -3
- package/esm/index.js +42 -88
- package/esm/lib/WazoSessionDescriptionHandler.js +9 -15
- package/esm/service/IssueReporter.js +1 -3
- package/esm/service/__tests__/IssueReporter.test.js +0 -1
- package/esm/simple/Phone.js +1 -1
- package/esm/simple/Websocket.js +2 -2
- package/esm/simple/index.js +5 -4
- package/esm/simple/room/Room.js +15 -15
- package/esm/simple/room/SipRoom.js +1 -1
- package/esm/simple/room/Stream.js +1 -2
- package/esm/simple/room/__tests__/Participant.test.js +0 -2
- package/esm/simple/room/__tests__/RemoteParticipant.test.js +1 -2
- package/esm/types/api/amid.d.ts.map +1 -1
- package/esm/types/api/auth.d.ts +2 -2
- package/esm/types/api/auth.d.ts.map +1 -1
- package/esm/types/api/call-logd.d.ts +3 -3
- package/esm/types/api/call-logd.d.ts.map +1 -1
- package/esm/types/api/chatd.d.ts +9 -22
- package/esm/types/api/chatd.d.ts.map +1 -1
- package/esm/types/api/dird.d.ts +21 -14
- package/esm/types/api/dird.d.ts.map +1 -1
- package/esm/types/checker/checks/ice-ipv4.d.ts.map +1 -1
- package/esm/types/checker/checks/index.d.ts +1 -1
- package/esm/types/checker/checks/symmetric-nat.d.ts.map +1 -1
- package/esm/types/checker/checks/webrtc-transport.d.ts +2 -2
- package/esm/types/checker/checks/webrtc-transport.d.ts.map +1 -1
- package/esm/types/domain/Agent.d.ts +1 -1
- package/esm/types/domain/Agent.d.ts.map +1 -1
- package/esm/types/domain/CallLog.d.ts +14 -26
- package/esm/types/domain/CallLog.d.ts.map +1 -1
- package/esm/types/domain/CallSession.d.ts +3 -4
- package/esm/types/domain/CallSession.d.ts.map +1 -1
- package/esm/types/domain/Contact.d.ts +8 -0
- package/esm/types/domain/Contact.d.ts.map +1 -1
- package/esm/types/domain/MeetingAuthorization.d.ts +6 -0
- package/esm/types/domain/MeetingAuthorization.d.ts.map +1 -1
- package/esm/types/domain/Phone/CTIPhone.d.ts +2 -0
- package/esm/types/domain/Phone/CTIPhone.d.ts.map +1 -1
- package/esm/types/domain/Phone/Phone.d.ts +12 -2
- package/esm/types/domain/Phone/Phone.d.ts.map +1 -1
- package/esm/types/domain/Phone/WebRTCPhone.d.ts +24 -20
- package/esm/types/domain/Phone/WebRTCPhone.d.ts.map +1 -1
- package/esm/types/domain/Room.d.ts +10 -12
- package/esm/types/domain/Room.d.ts.map +1 -1
- package/esm/types/domain/Session.d.ts +1 -1
- package/esm/types/domain/Session.d.ts.map +1 -1
- package/esm/types/domain/SipLine.d.ts +3 -3
- package/esm/types/domain/SipLine.d.ts.map +1 -1
- package/esm/types/domain/types.d.ts +64 -10
- package/esm/types/domain/types.d.ts.map +1 -1
- package/esm/types/index.d.ts +51 -314
- package/esm/types/index.d.ts.map +1 -1
- package/esm/types/lib/WazoSessionDescriptionHandler.d.ts +5 -4
- package/esm/types/lib/WazoSessionDescriptionHandler.d.ts.map +1 -1
- package/esm/types/service/CallApi.d.ts +3 -3
- package/esm/types/service/CallApi.d.ts.map +1 -1
- package/esm/types/service/IssueReporter.d.ts.map +1 -1
- package/esm/types/simple/Auth.d.ts +0 -40
- package/esm/types/simple/Auth.d.ts.map +1 -1
- package/esm/types/simple/Phone.d.ts +0 -113
- package/esm/types/simple/Phone.d.ts.map +1 -1
- package/esm/types/simple/Websocket.d.ts +0 -16
- package/esm/types/simple/Websocket.d.ts.map +1 -1
- package/esm/types/simple/index.d.ts +8 -8
- package/esm/types/simple/index.d.ts.map +1 -1
- package/esm/types/simple/room/Participant.d.ts +4 -3
- package/esm/types/simple/room/Participant.d.ts.map +1 -1
- package/esm/types/simple/room/Room.d.ts +29 -18
- package/esm/types/simple/room/Room.d.ts.map +1 -1
- package/esm/types/simple/room/SipRoom.d.ts +1 -1
- package/esm/types/simple/room/SipRoom.d.ts.map +1 -1
- package/esm/types/simple/room/Stream.d.ts +1 -1
- package/esm/types/simple/room/Stream.d.ts.map +1 -1
- package/esm/types/utils/PhoneNumberUtil.d.ts +1 -1
- package/esm/types/utils/PhoneNumberUtil.d.ts.map +1 -1
- package/esm/types/utils/api-requester.d.ts +1 -1
- package/esm/types/utils/api-requester.d.ts.map +1 -1
- package/esm/types/utils/sdp.d.ts +20 -5
- package/esm/types/utils/sdp.d.ts.map +1 -1
- package/esm/types/web-rtc-client.d.ts +51 -49
- package/esm/types/web-rtc-client.d.ts.map +1 -1
- package/esm/types/websocket-client.d.ts.map +1 -1
- package/esm/utils/__tests__/PhoneNumberUtil.test.js +0 -6
- package/esm/utils/__tests__/api-requester.test.js +0 -2
- package/esm/utils/__tests__/sdp.test.js +4 -18
- package/esm/utils/api-requester.js +1 -2
- package/esm/utils/sdp.js +8 -3
- package/esm/web-rtc-client.js +99 -136
- package/esm/websocket-client.js +1 -2
- package/index.js +1 -0
- package/lib/__tests__/api-client.test.js +0 -10
- package/lib/__tests__/web-rtc-client.test.js +2 -15
- package/lib/api/amid.js +12 -4
- package/lib/api/chatd.js +0 -1
- package/lib/api/dird.js +19 -22
- package/lib/checker/checks/ice-ipv4.js +2 -3
- package/lib/checker/checks/symmetric-nat.js +7 -4
- package/lib/domain/AdHocAPIConference.js +1 -1
- package/lib/domain/CallLog.js +1 -1
- package/lib/domain/Contact.js +2 -1
- package/lib/domain/MeetingAuthorization.js +6 -0
- package/lib/domain/Phone/CTIPhone.js +2 -0
- package/lib/domain/Phone/WebRTCPhone.js +23 -18
- package/lib/domain/Session.js +2 -2
- package/lib/domain/__tests__/Agent.test.js +0 -2
- package/lib/domain/__tests__/Call.test.js +0 -1
- package/lib/domain/__tests__/CallLog.test.js +0 -1
- package/lib/domain/__tests__/CallSession.test.js +1 -2
- package/lib/domain/__tests__/Contact.test.js +2 -4
- package/lib/domain/__tests__/IndirectTransfer.test.js +0 -1
- package/lib/domain/__tests__/Profile.test.js +0 -1
- package/lib/domain/__tests__/Room.test.js +1 -25
- package/lib/domain/__tests__/Session.test.js +13 -14
- package/lib/domain/__tests__/SipLine.test.js +2 -3
- package/lib/index.js +93 -99
- package/lib/lib/WazoSessionDescriptionHandler.js +9 -15
- package/lib/service/IssueReporter.js +1 -3
- package/lib/service/__tests__/IssueReporter.test.js +0 -1
- package/lib/simple/Phone.js +1 -1
- package/lib/simple/Websocket.js +2 -2
- package/lib/simple/index.js +2 -1
- package/lib/simple/room/Room.js +17 -15
- package/lib/simple/room/SipRoom.js +1 -1
- package/lib/simple/room/Stream.js +1 -2
- package/lib/simple/room/__tests__/Participant.test.js +0 -2
- package/lib/simple/room/__tests__/RemoteParticipant.test.js +1 -2
- package/lib/types/api/amid.d.ts.map +1 -1
- package/lib/types/api/auth.d.ts +2 -2
- package/lib/types/api/auth.d.ts.map +1 -1
- package/lib/types/api/call-logd.d.ts +3 -3
- package/lib/types/api/call-logd.d.ts.map +1 -1
- package/lib/types/api/chatd.d.ts +9 -22
- package/lib/types/api/chatd.d.ts.map +1 -1
- package/lib/types/api/dird.d.ts +21 -14
- package/lib/types/api/dird.d.ts.map +1 -1
- package/lib/types/checker/checks/ice-ipv4.d.ts.map +1 -1
- package/lib/types/checker/checks/index.d.ts +1 -1
- package/lib/types/checker/checks/symmetric-nat.d.ts.map +1 -1
- package/lib/types/checker/checks/webrtc-transport.d.ts +2 -2
- package/lib/types/checker/checks/webrtc-transport.d.ts.map +1 -1
- package/lib/types/domain/Agent.d.ts +1 -1
- package/lib/types/domain/Agent.d.ts.map +1 -1
- package/lib/types/domain/CallLog.d.ts +14 -26
- package/lib/types/domain/CallLog.d.ts.map +1 -1
- package/lib/types/domain/CallSession.d.ts +3 -4
- package/lib/types/domain/CallSession.d.ts.map +1 -1
- package/lib/types/domain/Contact.d.ts +8 -0
- package/lib/types/domain/Contact.d.ts.map +1 -1
- package/lib/types/domain/MeetingAuthorization.d.ts +6 -0
- package/lib/types/domain/MeetingAuthorization.d.ts.map +1 -1
- package/lib/types/domain/Phone/CTIPhone.d.ts +2 -0
- package/lib/types/domain/Phone/CTIPhone.d.ts.map +1 -1
- package/lib/types/domain/Phone/Phone.d.ts +12 -2
- package/lib/types/domain/Phone/Phone.d.ts.map +1 -1
- package/lib/types/domain/Phone/WebRTCPhone.d.ts +24 -20
- package/lib/types/domain/Phone/WebRTCPhone.d.ts.map +1 -1
- package/lib/types/domain/Room.d.ts +10 -12
- package/lib/types/domain/Room.d.ts.map +1 -1
- package/lib/types/domain/Session.d.ts +1 -1
- package/lib/types/domain/Session.d.ts.map +1 -1
- package/lib/types/domain/SipLine.d.ts +3 -3
- package/lib/types/domain/SipLine.d.ts.map +1 -1
- package/lib/types/domain/types.d.ts +64 -10
- package/lib/types/domain/types.d.ts.map +1 -1
- package/lib/types/index.d.ts +51 -314
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/lib/WazoSessionDescriptionHandler.d.ts +5 -4
- package/lib/types/lib/WazoSessionDescriptionHandler.d.ts.map +1 -1
- package/lib/types/service/CallApi.d.ts +3 -3
- package/lib/types/service/CallApi.d.ts.map +1 -1
- package/lib/types/service/IssueReporter.d.ts.map +1 -1
- package/lib/types/simple/Auth.d.ts +0 -40
- package/lib/types/simple/Auth.d.ts.map +1 -1
- package/lib/types/simple/Phone.d.ts +0 -113
- package/lib/types/simple/Phone.d.ts.map +1 -1
- package/lib/types/simple/Websocket.d.ts +0 -16
- package/lib/types/simple/Websocket.d.ts.map +1 -1
- package/lib/types/simple/index.d.ts +8 -8
- package/lib/types/simple/index.d.ts.map +1 -1
- package/lib/types/simple/room/Participant.d.ts +4 -3
- package/lib/types/simple/room/Participant.d.ts.map +1 -1
- package/lib/types/simple/room/Room.d.ts +29 -18
- package/lib/types/simple/room/Room.d.ts.map +1 -1
- package/lib/types/simple/room/SipRoom.d.ts +1 -1
- package/lib/types/simple/room/SipRoom.d.ts.map +1 -1
- package/lib/types/simple/room/Stream.d.ts +1 -1
- package/lib/types/simple/room/Stream.d.ts.map +1 -1
- package/lib/types/utils/PhoneNumberUtil.d.ts +1 -1
- package/lib/types/utils/PhoneNumberUtil.d.ts.map +1 -1
- package/lib/types/utils/api-requester.d.ts +1 -1
- package/lib/types/utils/api-requester.d.ts.map +1 -1
- package/lib/types/utils/sdp.d.ts +20 -5
- package/lib/types/utils/sdp.d.ts.map +1 -1
- package/lib/types/web-rtc-client.d.ts +51 -49
- package/lib/types/web-rtc-client.d.ts.map +1 -1
- package/lib/types/websocket-client.d.ts.map +1 -1
- package/lib/utils/__tests__/PhoneNumberUtil.test.js +0 -6
- package/lib/utils/__tests__/api-requester.test.js +0 -2
- package/lib/utils/__tests__/sdp.test.js +6 -18
- package/lib/utils/api-requester.js +2 -3
- package/lib/utils/sdp.js +9 -3
- package/lib/web-rtc-client.js +105 -140
- package/lib/websocket-client.js +1 -2
- package/package.json +5 -18
- package/src/__tests__/api-client.test.ts +10 -19
- package/src/__tests__/web-rtc-client.test.ts +13 -25
- package/src/api/amid.ts +13 -4
- package/src/api/auth.ts +2 -5
- package/src/api/call-logd.ts +3 -3
- package/src/api/chatd.ts +10 -24
- package/src/api/dird.ts +33 -39
- package/src/checker/checks/ice-ipv4.ts +4 -5
- package/src/checker/checks/symmetric-nat.ts +11 -7
- package/src/checker/checks/webrtc-transport.ts +2 -2
- package/src/domain/AdHocAPIConference.ts +1 -1
- package/src/domain/Agent.ts +1 -1
- package/src/domain/CallLog.ts +19 -27
- package/src/domain/CallSession.ts +3 -4
- package/src/domain/Contact.ts +3 -1
- package/src/domain/MeetingAuthorization.ts +13 -0
- package/src/domain/Phone/CTIPhone.ts +4 -0
- package/src/domain/Phone/Phone.ts +11 -2
- package/src/domain/Phone/WebRTCPhone.ts +60 -52
- package/src/domain/Room.ts +12 -14
- package/src/domain/Session.ts +3 -3
- package/src/domain/SipLine.ts +3 -3
- package/src/domain/__tests__/Agent.test.ts +3 -5
- package/src/domain/__tests__/Call.test.ts +4 -5
- package/src/domain/__tests__/CallLog.test.ts +1 -3
- package/src/domain/__tests__/CallSession.test.ts +10 -11
- package/src/domain/__tests__/Contact.test.ts +2 -4
- package/src/domain/__tests__/IndirectTransfer.test.ts +6 -7
- package/src/domain/__tests__/Profile.test.ts +3 -4
- package/src/domain/__tests__/Room.test.ts +27 -51
- package/src/domain/__tests__/Session.test.ts +27 -28
- package/src/domain/__tests__/SipLine.test.ts +4 -5
- package/src/domain/types.ts +64 -11
- package/src/index.ts +51 -111
- package/src/lib/WazoSessionDescriptionHandler.ts +24 -30
- package/src/service/CallApi.ts +3 -3
- package/src/service/IssueReporter.ts +3 -5
- package/src/service/__tests__/IssueReporter.test.ts +1 -2
- package/src/simple/Auth.ts +1 -41
- package/src/simple/Phone.ts +9 -116
- package/src/simple/Websocket.ts +4 -20
- package/src/simple/index.ts +8 -7
- package/src/simple/room/Participant.ts +4 -3
- package/src/simple/room/Room.ts +44 -36
- package/src/simple/room/SipRoom.ts +4 -4
- package/src/simple/room/Stream.ts +2 -3
- package/src/simple/room/__tests__/Participant.test.ts +2 -4
- package/src/simple/room/__tests__/RemoteParticipant.test.ts +4 -3
- package/src/types/wazo.d.ts +1 -0
- package/src/utils/PhoneNumberUtil.ts +1 -1
- package/src/utils/__tests__/PhoneNumberUtil.test.ts +0 -6
- package/src/utils/__tests__/api-requester.test.ts +3 -4
- package/src/utils/__tests__/sdp.test.ts +16 -30
- package/src/utils/api-requester.ts +1 -4
- package/src/utils/sdp.ts +38 -17
- package/src/web-rtc-client.ts +196 -234
- package/src/websocket-client.ts +2 -3
- package/lib/.DS_Store +0 -0
|
@@ -11,7 +11,7 @@ import { OutgoingByeRequest, OutgoingInviteRequest, OutgoingRequest } from 'sip.
|
|
|
11
11
|
import { Inviter, Invitation, Registerer } from 'sip.js/lib/api';
|
|
12
12
|
import Emitter from './utils/Emitter';
|
|
13
13
|
import Heartbeat from './utils/Heartbeat';
|
|
14
|
-
import type { MediaConfig, UserAgentConfigOverrides, WebRtcConfig, UserAgentOptions } from './domain/types';
|
|
14
|
+
import type { MediaConfig, UserAgentConfigOverrides, WebRtcConfig, UserAgentOptions, PeerConnection, WazoSession } from './domain/types';
|
|
15
15
|
export declare const replaceLocalIpModifier: (description: Record<string, any>) => Promise<any>;
|
|
16
16
|
export declare const events: string[];
|
|
17
17
|
export declare const transportEvents: string[];
|
|
@@ -24,9 +24,11 @@ export default class WebRTCClient extends Emitter {
|
|
|
24
24
|
userAgent: UserAgent | null;
|
|
25
25
|
registerer: Registerer | null;
|
|
26
26
|
hasAudio: boolean;
|
|
27
|
-
audio:
|
|
28
|
-
audioElements: Record<string, HTMLAudioElement
|
|
29
|
-
|
|
27
|
+
audio: MediaTrackConstraintSet | boolean | undefined;
|
|
28
|
+
audioElements: Record<string, HTMLAudioElement & {
|
|
29
|
+
setSinkId?: (id: string) => void;
|
|
30
|
+
}>;
|
|
31
|
+
video: MediaTrackConstraintSet | boolean | undefined;
|
|
30
32
|
audioStreams: Record<string, any>;
|
|
31
33
|
audioOutputDeviceId: string | null | undefined;
|
|
32
34
|
audioOutputVolume: number;
|
|
@@ -37,7 +39,7 @@ export default class WebRTCClient extends Emitter {
|
|
|
37
39
|
heartbeatTimeoutCb: ((...args: Array<any>) => any) | null | undefined;
|
|
38
40
|
heartbeatCb: ((...args: Array<any>) => any) | null | undefined;
|
|
39
41
|
statsIntervals: Record<string, any>;
|
|
40
|
-
sipSessions: Record<string,
|
|
42
|
+
sipSessions: Record<string, WazoSession>;
|
|
41
43
|
conferences: Record<string, boolean>;
|
|
42
44
|
skipRegister: boolean;
|
|
43
45
|
networkMonitoringInterval: Record<string, any>;
|
|
@@ -65,7 +67,7 @@ export default class WebRTCClient extends Emitter {
|
|
|
65
67
|
static getIceServers(ip: string): Array<{
|
|
66
68
|
urls: Array<string>;
|
|
67
69
|
}>;
|
|
68
|
-
constructor(config: WebRtcConfig, session:
|
|
70
|
+
constructor(config: WebRtcConfig, session: WazoSession | null | undefined, uaConfigOverrides?: UserAgentConfigOverrides);
|
|
69
71
|
configureMedia(media: MediaConfig): void;
|
|
70
72
|
setMediaConstraints(media: MediaStreamConstraints): void;
|
|
71
73
|
createUserAgent(uaConfigOverrides?: UserAgentConfigOverrides): UserAgent;
|
|
@@ -78,48 +80,48 @@ export default class WebRTCClient extends Emitter {
|
|
|
78
80
|
_monkeyPatchRegisterer(registerer: Registerer | null | undefined): void;
|
|
79
81
|
unregister(): Promise<void>;
|
|
80
82
|
stop(): Promise<void>;
|
|
81
|
-
call(number: string, enableVideo?: boolean, audioOnly?: boolean, conference?: boolean):
|
|
83
|
+
call(number: string, enableVideo?: boolean, audioOnly?: boolean, conference?: boolean): WazoSession | null;
|
|
82
84
|
answer(session: Invitation, enableVideo?: boolean): Promise<void>;
|
|
83
|
-
hangup(session:
|
|
84
|
-
getStats(session:
|
|
85
|
-
startNetworkMonitoring(session:
|
|
86
|
-
stopNetworkMonitoring(session:
|
|
87
|
-
reject(session:
|
|
85
|
+
hangup(session: WazoSession): Promise<OutgoingByeRequest | null>;
|
|
86
|
+
getStats(session: WazoSession): Promise<RTCStatsReport | null>;
|
|
87
|
+
startNetworkMonitoring(session: WazoSession, interval?: number): void;
|
|
88
|
+
stopNetworkMonitoring(session: WazoSession): void;
|
|
89
|
+
reject(session: WazoSession): Promise<void>;
|
|
88
90
|
close(force?: boolean): Promise<void>;
|
|
89
91
|
getNumber(session: Inviter): string | null | undefined;
|
|
90
|
-
mute(session:
|
|
91
|
-
unmute(session:
|
|
92
|
-
isAudioMuted(session:
|
|
93
|
-
toggleCameraOn(session:
|
|
94
|
-
toggleCameraOff(session:
|
|
95
|
-
hold(session:
|
|
96
|
-
unhold(session:
|
|
97
|
-
upgradeToVideo(session:
|
|
98
|
-
downgradeToAudio(session:
|
|
92
|
+
mute(session: WazoSession): void;
|
|
93
|
+
unmute(session: WazoSession): void;
|
|
94
|
+
isAudioMuted(session: WazoSession): boolean;
|
|
95
|
+
toggleCameraOn(session: WazoSession): void;
|
|
96
|
+
toggleCameraOff(session: WazoSession): void;
|
|
97
|
+
hold(session: WazoSession, isConference?: boolean, hadVideo?: boolean): Promise<OutgoingInviteRequest | void>;
|
|
98
|
+
unhold(session: WazoSession, isConference?: boolean): Promise<OutgoingInviteRequest | void>;
|
|
99
|
+
upgradeToVideo(session: WazoSession, constraints: Record<string, any>, isConference: boolean): Promise<MediaStream | undefined>;
|
|
100
|
+
downgradeToAudio(session: WazoSession): void;
|
|
99
101
|
getStreamFromConstraints(constraints: Record<string, any>, conference?: boolean): Promise<MediaStream | null | undefined>;
|
|
100
102
|
getHeldSession(sessionId: string): any;
|
|
101
|
-
isCallHeld(session:
|
|
103
|
+
isCallHeld(session: WazoSession): boolean;
|
|
102
104
|
isVideoRemotelyHeld(sessionId: string): boolean;
|
|
103
|
-
sendDTMF(session:
|
|
105
|
+
sendDTMF(session: WazoSession, tone: string): boolean;
|
|
104
106
|
message(destination: string, message: string): void;
|
|
105
|
-
transfer(session:
|
|
106
|
-
atxfer(session:
|
|
107
|
-
sendMessage(sipSession:
|
|
107
|
+
transfer(session: WazoSession, target: string): void;
|
|
108
|
+
atxfer(session: WazoSession): Record<string, any>;
|
|
109
|
+
sendMessage(sipSession: WazoSession | null | undefined, body: string, contentType?: string): void;
|
|
108
110
|
pingServer(): OutgoingRequest | void;
|
|
109
111
|
getState(): UserAgentState;
|
|
110
112
|
getContactIdentifier(): string | null;
|
|
111
113
|
isFirefox(): boolean;
|
|
112
114
|
changeAudioOutputVolume(volume: number): void;
|
|
113
115
|
changeAudioOutputDevice(id: string): void;
|
|
114
|
-
changeAudioInputDevice(id: string, session:
|
|
115
|
-
changeVideoInputDevice(id: string, session?:
|
|
116
|
+
changeAudioInputDevice(id: string, session: WazoSession | null | undefined, force?: boolean): Promise<MediaStream | null>;
|
|
117
|
+
changeVideoInputDevice(id: string, session?: WazoSession): Promise<MediaStream | void>;
|
|
116
118
|
setVideoInputDevice(id: string): null | undefined;
|
|
117
|
-
changeSessionVideoInputDevice(id: string | null | undefined, session:
|
|
119
|
+
changeSessionVideoInputDevice(id: string | null | undefined, session: WazoSession): Promise<MediaStream | void>;
|
|
118
120
|
getAudioDeviceId(): string | null | undefined;
|
|
119
121
|
getVideoDeviceId(): string | null;
|
|
120
|
-
reinvite(sipSession:
|
|
122
|
+
reinvite(sipSession: WazoSession, newConstraints?: Record<string, any> | null | undefined, conference?: boolean, audioOnly?: boolean, iceRestart?: boolean): Promise<OutgoingInviteRequest | void>;
|
|
121
123
|
getUserMedia(constraints: Record<string, any>): Promise<MediaStream>;
|
|
122
|
-
getPeerConnection(sessionId: string):
|
|
124
|
+
getPeerConnection(sessionId: string): RTCPeerConnection | null | undefined;
|
|
123
125
|
getLocalStream(sessionId: string): MediaStream | null;
|
|
124
126
|
getLocalTracks(sessionId: string): MediaStreamTrack[];
|
|
125
127
|
hasLocalVideo(sessionId: string): boolean;
|
|
@@ -133,18 +135,18 @@ export default class WebRTCClient extends Emitter {
|
|
|
133
135
|
getRemoteVideoStreamFromPc(sessionId: string): MediaStream | null | undefined;
|
|
134
136
|
hasVideo(sessionId: string): boolean;
|
|
135
137
|
hasAVideoTrack(sessionId: string): boolean;
|
|
136
|
-
getSipSessionId(sipSession:
|
|
138
|
+
getSipSessionId(sipSession: WazoSession | null | undefined): string;
|
|
137
139
|
waitForRegister(): Promise<void>;
|
|
138
|
-
sessionWantsToDoVideo(session:
|
|
140
|
+
sessionWantsToDoVideo(session: WazoSession): boolean;
|
|
139
141
|
hasHeartbeat(): boolean;
|
|
140
142
|
startHeartbeat(): void;
|
|
141
143
|
stopHeartbeat(): void;
|
|
142
144
|
setOnHeartbeatTimeout(cb: (...args: Array<any>) => any): void;
|
|
143
145
|
setOnHeartbeatCallback(cb: (...args: Array<any>) => any): void;
|
|
144
|
-
onCallEnded(session:
|
|
146
|
+
onCallEnded(session: WazoSession): void;
|
|
145
147
|
attemptReconnection(): void;
|
|
146
|
-
storeSipSession(session:
|
|
147
|
-
getSipSession(id: string):
|
|
148
|
+
storeSipSession(session: WazoSession): void;
|
|
149
|
+
getSipSession(id: string): WazoSession | null | undefined;
|
|
148
150
|
getSipSessionIds(): string[];
|
|
149
151
|
setLocalMediaStream(sipSessionId: string, newStream: MediaStream): void;
|
|
150
152
|
updateLocalStream(sipSessionId: string, newStream: MediaStream): void;
|
|
@@ -162,7 +164,7 @@ export default class WebRTCClient extends Emitter {
|
|
|
162
164
|
_getAudioConstraints(): MediaTrackConstraints | boolean;
|
|
163
165
|
_getVideoConstraints(video?: boolean): MediaTrackConstraints | boolean;
|
|
164
166
|
_connectIfNeeded(): Promise<any>;
|
|
165
|
-
_buildConfig(config: WebRtcConfig, session:
|
|
167
|
+
_buildConfig(config: WebRtcConfig, session: WazoSession | null | undefined): Promise<WebRtcConfig>;
|
|
166
168
|
_createUaOptions(uaOptionsOverrides?: UserAgentConfigOverrides): UserAgentOptions;
|
|
167
169
|
_getRtcOptions(): {
|
|
168
170
|
mandatory: {
|
|
@@ -170,28 +172,28 @@ export default class WebRTCClient extends Emitter {
|
|
|
170
172
|
OfferToReceiveVideo: boolean;
|
|
171
173
|
};
|
|
172
174
|
};
|
|
173
|
-
_setupSession(session:
|
|
174
|
-
_onEarlyProgress(session:
|
|
175
|
-
_onAccepted(session:
|
|
176
|
-
_isAudioOnly(session:
|
|
177
|
-
_setupMedias(session:
|
|
178
|
-
_cleanupMedia(session?:
|
|
175
|
+
_setupSession(session: WazoSession): void;
|
|
176
|
+
_onEarlyProgress(session: WazoSession): void;
|
|
177
|
+
_onAccepted(session: WazoSession, sessionDialog?: SessionDialog, withEvent?: boolean, initAllTracks?: boolean): void;
|
|
178
|
+
_isAudioOnly(session: WazoSession): boolean;
|
|
179
|
+
_setupMedias(session: WazoSession, newStream?: MediaStream | null | undefined): void;
|
|
180
|
+
_cleanupMedia(session?: WazoSession): void;
|
|
179
181
|
_cleanupStream(stream: MediaStream): void;
|
|
180
|
-
_toggleAudio(session:
|
|
181
|
-
_toggleVideo(session:
|
|
182
|
+
_toggleAudio(session: WazoSession, muteAudio: boolean): void;
|
|
183
|
+
_toggleVideo(session: WazoSession, muteCamera: boolean): void;
|
|
182
184
|
/**
|
|
183
185
|
* @param pc RTCPeerConnection
|
|
184
186
|
*/
|
|
185
|
-
_getRemoteStream(pc:
|
|
187
|
+
_getRemoteStream(pc: PeerConnection): MediaStream | null;
|
|
186
188
|
_cleanupRegister(): void;
|
|
187
|
-
_startSendingStats(session:
|
|
188
|
-
_stopSendingStats(session:
|
|
189
|
+
_startSendingStats(session: WazoSession): void;
|
|
190
|
+
_stopSendingStats(session: WazoSession): void;
|
|
189
191
|
_makeURI(target: string): URI | undefined;
|
|
190
192
|
_disconnectTransport(force?: boolean): Promise<void>;
|
|
191
193
|
_fetchNetworkStats(sessionId: string): Promise<Record<string, any> | null | undefined>;
|
|
192
194
|
_accept(session: Invitation, options?: InvitationAcceptOptions): Promise<void>;
|
|
193
195
|
_reject(session: Invitation, options?: InvitationRejectOptions): Promise<void>;
|
|
194
196
|
_cancel(session: Inviter, options?: InviterCancelOptions): Promise<void>;
|
|
195
|
-
_bye(session:
|
|
197
|
+
_bye(session: WazoSession, options?: SessionByeOptions): Promise<OutgoingByeRequest | null>;
|
|
196
198
|
}
|
|
197
199
|
//# sourceMappingURL=web-rtc-client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"web-rtc-client.d.ts","sourceRoot":"","sources":["../../src/web-rtc-client.ts"],"names":[],"mappings":"AAGA,OAAO,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"web-rtc-client.d.ts","sourceRoot":"","sources":["../../src/web-rtc-client.ts"],"names":[],"mappings":"AAGA,OAAO,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAClF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAK5E,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGjE,OAAO,EAAE,GAAG,EAAE,MAAM,wBAAwB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAUtD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAA6C,MAAM,gBAAgB,CAAC;AAE5G,OAAO,OAAO,MAAM,iBAAiB,CAAC;AAGtC,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAG1C,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAwB,EAAE,YAAY,EAAE,gBAAgB,EAAoB,cAAc,EAAE,WAAW,EAAiB,MAAM,gBAAgB,CAAC;AAG1K,eAAO,MAAM,sBAAsB,gBAAiB,OAAO,MAAM,EAAE,GAAG,CAAC,iBAGrE,CAAC;AAyBH,eAAO,MAAM,MAAM,UAA0D,CAAC;AAC9E,eAAO,MAAM,eAAe,UAAsD,CAAC;AACnF,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAM/C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAC/C,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,YAAY,CAAC;IAErB,iBAAiB,CAAC,EAAE,wBAAwB,CAAC;IAE7C,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAE5B,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAE9B,QAAQ,EAAE,OAAO,CAAC;IAElB,KAAK,EAAE,uBAAuB,GAAG,OAAO,GAAG,SAAS,CAAC;IAErD,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG;QAAE,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,CAAC,CAAC;IAEvF,KAAK,EAAE,uBAAuB,GAAG,OAAO,GAAG,SAAS,CAAC;IAErD,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAElC,mBAAmB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAE/C,iBAAiB,EAAE,MAAM,CAAC;IAE1B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAElC,iBAAiB,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAEpD,iBAAiB,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;IAEhD,SAAS,EAAE,SAAS,CAAC;IAErB,kBAAkB,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAEtE,WAAW,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAE/D,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEpC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAEzC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAErC,YAAY,EAAE,OAAO,CAAC;IAEtB,yBAAyB,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE/C,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAEzD,WAAW,EAAE,OAAO,CAAC;IAGrB,aAAa,EAAE,MAAM,CAAC;IAEtB,UAAU,EAAE,MAAM,CAAC;IAEnB,YAAY,EAAE,MAAM,CAAC;IAErB,mBAAmB,EAAE,MAAM,CAAC;IAE5B,MAAM,EAAE,MAAM,CAAC;IAEf,SAAS,EAAE,MAAM,CAAC;IAElB,YAAY,EAAE,MAAM,CAAC;IAErB,eAAe,EAAE,MAAM,CAAC;IAExB,OAAO,EAAE,MAAM,CAAC;IAEhB,QAAQ,EAAE,MAAM,CAAC;IAEjB,QAAQ,EAAE,MAAM,CAAC;IAEjB,QAAQ,EAAE,MAAM,CAAC;IAEjB,WAAW,EAAE,MAAM,CAAC;IAEpB,QAAQ,EAAE,MAAM,CAAC;IAEjB,0BAA0B,EAAE,MAAM,CAAC;IAEnC,gBAAgB,EAAE,MAAM,CAAC;IAEzB,cAAc,EAAE,MAAM,CAAC;IAEvB,eAAe,EAAE,MAAM,CAAC;IAExB,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAKxC,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,CAAC;QACtC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;KACrB,CAAC;gBAUU,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,wBAAwB;IA2DvH,cAAc,CAAC,KAAK,EAAE,WAAW;IAMjC,mBAAmB,CAAC,KAAK,EAAE,sBAAsB;IAKjD,eAAe,CAAC,iBAAiB,CAAC,EAAE,wBAAwB,GAAG,SAAS;IAqDxE,WAAW,IAAI,OAAO;IAItB,YAAY,IAAI,OAAO;IAIvB,YAAY,IAAI,OAAO;IAIvB,SAAS;IAaH,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK;IAkB1B,QAAQ,CAAC,KAAK,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA+GxC,sBAAsB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;IA8BjE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CjC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,SAAS,UAAQ,EAAE,UAAU,UAAQ,GAAG,WAAW,GAAG,IAAI;IAwFtG,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoC3D,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAiChE,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAWpE,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,SAAO,GAAG,IAAI;IAUnE,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAgB3C,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB3C,KAAK,CAAC,KAAK,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA6CzC,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS;IAStD,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQhC,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQlC,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAqC3C,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQ1C,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAQ3C,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,UAAQ,EAAE,QAAQ,UAAQ,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IA0DzG,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,YAAY,UAAQ,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IA4CnF,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IA+CrI,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAqBtC,wBAAwB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,UAAQ,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IAoB7H,cAAc,CAAC,SAAS,EAAE,MAAM;IAIhC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIzC,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAY/C,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAYrD,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUnD,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAwBpD,MAAM,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IA8BjD,WAAW,CAAC,UAAU,gCAA2B,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,SAAe,GAAG,IAAI;IA0BlG,UAAU,IAAI,eAAe,GAAG,IAAI;IAsBpC,QAAQ,IAAI,cAAc;IAK1B,oBAAoB,IAAI,MAAM,GAAG,IAAI;IAIrC,SAAS,IAAI,OAAO;IAIpB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAa7C,uBAAuB,CAAC,EAAE,EAAE,MAAM;IAgB5B,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAuEzH,sBAAsB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAQ5F,mBAAmB,CAAC,EAAE,EAAE,MAAM;IAoB9B,6BAA6B,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAwD/G,gBAAgB,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS;IAI7C,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAIjC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAgB,EAAE,UAAU,UAAQ,EAAE,SAAS,UAAQ,EAAE,UAAU,UAAQ,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAwF5L,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC;IAQ1E,iBAAiB,CAAC,SAAS,EAAE,MAAM;IAWnC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAKrD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAUrD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAKzC,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI/C,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS;IAKtE,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAKtD,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAUtD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAK1C,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIhD,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS;IASvE,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS;IAU7E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIpC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI1C,eAAe,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM;IAqB7D,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC;IAKtC,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAapD,YAAY,IAAI,OAAO;IAIvB,cAAc,IAAI,IAAI;IAatB,aAAa,IAAI,IAAI;IAKrB,qBAAqB,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,IAAI;IAI7D,sBAAsB,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,IAAI;IAI9D,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAUvC,mBAAmB,IAAI,IAAI;IAW3B,eAAe,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAO3C,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,GAAG,SAAS;IAIzD,gBAAgB,IAAI,MAAM,EAAE;IAI5B,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI;IAkBvE,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI;IAwBrE,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAO,GAAG,IAAI;IA4B7D,qBAAqB,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,UAAQ,EAAE,WAAW,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAyChJ,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIxC,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB;IAoB1D,iBAAiB,IAAI,IAAI;IAMzB,YAAY,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAiBtG,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAiBnD,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B1C,MAAM,IAAI,OAAO;IAIjB,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO;IAI/C,SAAS,IAAI,OAAO;IAIpB,oBAAoB,IAAI,qBAAqB,GAAG,OAAO;IAKvD,oBAAoB,CAAC,KAAK,UAAQ,GAAG,qBAAqB,GAAG,OAAO;IASpE,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC;IAwChC,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IAoBlG,gBAAgB,CAAC,kBAAkB,GAAE,wBAA6B,GAAG,gBAAgB;IAmFrF,cAAc;;;;;;IAUd,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAyEzC,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAW5C,WAAW,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,aAAa,EAAE,SAAS,UAAO,EAAE,aAAa,UAAO,GAAG,IAAI;IAkE9G,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAI3C,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,GAAE,WAAW,GAAG,IAAI,GAAG,SAAgB,GAAG,IAAI;IA6D1F,aAAa,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI;IAkC1C,cAAc,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAIzC,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IAyB5D,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,GAAG,IAAI;IAqB7D;;OAEG;IACH,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,WAAW,GAAG,IAAI;IAsBxD,gBAAgB,IAAI,IAAI;IAQxB,kBAAkB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAwB9C,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAgB7C,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS;IAInC,oBAAoB,CAAC,KAAK,UAAQ;IAwBlC,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IAgHtF,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,GAAE,uBAA4B;IA2BlE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,GAAE,uBAA4B;IAmBlE,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,GAAE,oBAAyB;IAa5D,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,GAAE,iBAAsB;CAcjE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../src/websocket-client.ts"],"names":[],"mappings":"AACA,OAAO,
|
|
1
|
+
{"version":3,"file":"websocket-client.d.ts","sourceRoot":"","sources":["../../src/websocket-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,17 +43,11 @@ describe('getCallableNumber', () => {
|
|
|
43
43
|
expect(getCallableNumber('9000', 'US')).toBe('9000');
|
|
44
44
|
});
|
|
45
45
|
it('works without a country', () => {
|
|
46
|
-
// @ts-expect-error
|
|
47
46
|
expect(getCallableNumber('06 75 45')).toBe('067545');
|
|
48
|
-
// @ts-expect-error
|
|
49
47
|
expect(getCallableNumber('067-545')).toBe('067545');
|
|
50
|
-
// @ts-expect-error
|
|
51
48
|
expect(getCallableNumber('8008')).toBe('8008');
|
|
52
|
-
// @ts-expect-error
|
|
53
49
|
expect(getCallableNumber('80.08')).toBe('8008');
|
|
54
|
-
// @ts-expect-error
|
|
55
50
|
expect(getCallableNumber('*10')).toBe('*10');
|
|
56
|
-
// @ts-expect-error
|
|
57
51
|
expect(getCallableNumber('9000')).toBe('9000');
|
|
58
52
|
});
|
|
59
53
|
});
|
|
@@ -75,7 +75,6 @@ describe('Retrieving headers', () => {
|
|
|
75
75
|
describe('Calling fetch', () => {
|
|
76
76
|
it('should call fetch without body but query string in get method', async () => {
|
|
77
77
|
jest.mock('node-fetch/src/index', () => { });
|
|
78
|
-
// @ts-ignore
|
|
79
78
|
global.fetch = jest.fn(() => Promise.resolve({
|
|
80
79
|
json: () => Promise.resolve({}),
|
|
81
80
|
headers: {
|
|
@@ -102,7 +101,6 @@ describe('With a refresh token', () => {
|
|
|
102
101
|
it('should retry the call with a new token', async () => {
|
|
103
102
|
jest.mock('node-fetch/src/index', () => { });
|
|
104
103
|
let calls = 0;
|
|
105
|
-
// @ts-ignore
|
|
106
104
|
global.fetch = jest.fn(() => {
|
|
107
105
|
calls++;
|
|
108
106
|
return Promise.resolve({
|
|
@@ -92,17 +92,13 @@ describe('SDP utils', () => {
|
|
|
92
92
|
describe('Parsing candidate', () => {
|
|
93
93
|
it('should parse a single candidate', () => {
|
|
94
94
|
const parsed = parseCandidate(candidate);
|
|
95
|
-
// @ts-expect-error
|
|
96
95
|
expect(parsed.type).toBe('relay');
|
|
97
|
-
// @ts-expect-error
|
|
98
96
|
expect(parsed.ip).toBe('14.72.2.1');
|
|
99
97
|
});
|
|
100
98
|
});
|
|
101
99
|
describe('Validating candidates', () => {
|
|
102
100
|
it('should parse a single candidate', () => {
|
|
103
|
-
|
|
104
|
-
expect(areCandidateValid([null])).toBeFalsy();
|
|
105
|
-
// @ts-expect-error
|
|
101
|
+
expect(areCandidateValid([])).toBeFalsy();
|
|
106
102
|
expect(areCandidateValid([parseCandidate(candidate)])).toBeTruthy();
|
|
107
103
|
});
|
|
108
104
|
});
|
|
@@ -116,13 +112,10 @@ describe('SDP utils', () => {
|
|
|
116
112
|
describe('Fixing sdp', () => {
|
|
117
113
|
it('should fix a SDP without candidate or IN ip', () => {
|
|
118
114
|
const candidates = [parseCandidate(candidate)];
|
|
119
|
-
// @ts-expect-error
|
|
120
115
|
const fixedSdp = fixSdp(badMobileSdp, candidates);
|
|
121
116
|
const parsed = sdpParser.parse(fixedSdp);
|
|
122
|
-
// @ts-expect-error
|
|
123
117
|
expect(parsed.media[0].candidates.length).toBe(1);
|
|
124
118
|
expect(parsed.media[0].port).toBe(57021);
|
|
125
|
-
// @ts-expect-error
|
|
126
119
|
expect(parsed.origin.address).toBe('14.72.2.1');
|
|
127
120
|
expect(fixedSdp.indexOf('IN 0.0.0.0')).toBe(-1);
|
|
128
121
|
});
|
|
@@ -131,8 +124,7 @@ describe('SDP utils', () => {
|
|
|
131
124
|
it('should set a bundle for each m section', async () => {
|
|
132
125
|
const invalid = fixBundle(invalidBundle);
|
|
133
126
|
const parsed = sdpParser.parse(invalid);
|
|
134
|
-
|
|
135
|
-
expect(parsed.groups[0].mids).toBe('0 1');
|
|
127
|
+
expect((parsed.groups?.[0]).mids).toBe('0 1');
|
|
136
128
|
});
|
|
137
129
|
});
|
|
138
130
|
describe('Deactivate video', () => {
|
|
@@ -159,13 +151,9 @@ a=candidate:0 1 UDP 2113667327 203.0.113.1 54400 typ host
|
|
|
159
151
|
a=candidate:3996450952 1 udp 41819903 14.72.21.2 65092 typ relay raddr 0.0.0.0 rport 0 generation 0 network-id 3 network-cost 10
|
|
160
152
|
`;
|
|
161
153
|
const fixedAudioWithoutCandidate = sdpParser.parse(addIcesInAllBundles(audioWithoutCandidate));
|
|
162
|
-
// @ts-expect-error
|
|
163
154
|
expect(fixedAudioWithoutCandidate.media[0].candidates[0].type).toBe('host');
|
|
164
|
-
// @ts-expect-error
|
|
165
155
|
expect(fixedAudioWithoutCandidate.media[0].candidates[1].type).toBe('relay');
|
|
166
|
-
// @ts-expect-error
|
|
167
156
|
expect(fixedAudioWithoutCandidate.media[1].candidates[0].type).toBe('host');
|
|
168
|
-
// @ts-expect-error
|
|
169
157
|
expect(fixedAudioWithoutCandidate.media[1].candidates[1].type).toBe('relay');
|
|
170
158
|
// It should not add candidate if already present
|
|
171
159
|
const audioWithCandidate = `
|
|
@@ -177,10 +165,8 @@ m=video 54400 RTP/SAVPF 0 96
|
|
|
177
165
|
a=candidate:0 1 UDP 2113667327 203.0.113.1 54400 typ host
|
|
178
166
|
`;
|
|
179
167
|
const fixedAudioWithCandidate = sdpParser.parse(addIcesInAllBundles(audioWithCandidate));
|
|
180
|
-
|
|
181
|
-
expect(fixedAudioWithCandidate.media[
|
|
182
|
-
// @ts-expect-error
|
|
183
|
-
expect(fixedAudioWithCandidate.media[1].candidates[0].type).toBe('host');
|
|
168
|
+
expect((fixedAudioWithCandidate.media?.[0]).candidates[0].type).toBe('srflx');
|
|
169
|
+
expect((fixedAudioWithCandidate.media?.[1]).candidates[0].type).toBe('host');
|
|
184
170
|
});
|
|
185
171
|
});
|
|
186
172
|
});
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/* eslint-disable @typescript-eslint/default-param-last */
|
|
2
1
|
/* global window */
|
|
3
2
|
/* eslint-disable global-require */
|
|
4
3
|
/* eslint-disable import/no-dynamic-require */
|
|
@@ -189,7 +188,7 @@ export default class ApiRequester {
|
|
|
189
188
|
_isTokenNotFound(err) {
|
|
190
189
|
return err && err.reason && err.reason[0] === 'No such token';
|
|
191
190
|
}
|
|
192
|
-
_replayWithNewToken(err, path, method, body = null, headers = null, parse) {
|
|
191
|
+
_replayWithNewToken(err, path, method, body = null, headers = null, parse = undefined) {
|
|
193
192
|
const isTokenNotFound = this._isTokenNotFound(err);
|
|
194
193
|
let newPath = path;
|
|
195
194
|
logger.info('refreshing token', {
|
package/esm/utils/sdp.js
CHANGED
|
@@ -7,6 +7,7 @@ export const getCandidates = (rawSdp) => {
|
|
|
7
7
|
if (!sdp || !sdp.media) {
|
|
8
8
|
return [];
|
|
9
9
|
}
|
|
10
|
+
// @ts-ignore: Type 'undefined' is not assignable to type 'Candidate'
|
|
10
11
|
return sdp.media.map((media) => media.candidates).flat().filter((candidate) => !!candidate);
|
|
11
12
|
};
|
|
12
13
|
export const parseCandidate = (candidate) => {
|
|
@@ -14,25 +15,28 @@ export const parseCandidate = (candidate) => {
|
|
|
14
15
|
return null;
|
|
15
16
|
}
|
|
16
17
|
const result = sdpParser.parse(candidate.indexOf('a=') === 0 ? candidate : `a=${candidate}`);
|
|
18
|
+
// @ts-ignore: heads up -- Property 'candidates' does not exist on type 'SessionDescription'
|
|
17
19
|
return result.candidates ? result.candidates[0] : null;
|
|
18
20
|
};
|
|
19
21
|
const getSrflxOrRelay = (candidates) => candidates.filter(candidate => candidate && (candidate.type === 'srflx' || candidate.type === 'relay'));
|
|
20
|
-
export const areCandidateValid = (candidates) => getSrflxOrRelay(candidates).length > 0;
|
|
22
|
+
export const areCandidateValid = (candidates) => (candidates ? getSrflxOrRelay(candidates).length > 0 : false);
|
|
21
23
|
export const isSdpValid = (sdp) => {
|
|
22
24
|
const candidates = getCandidates(sdp);
|
|
23
25
|
return areCandidateValid(candidates);
|
|
24
26
|
};
|
|
25
27
|
export const fixBundle = (sdp) => {
|
|
26
28
|
const parsedSdp = sdpParser.parse(sdp);
|
|
27
|
-
const bundleIndex = parsedSdp.groups
|
|
29
|
+
const bundleIndex = parsedSdp.groups?.findIndex((group) => group.type === 'BUNDLE');
|
|
28
30
|
if (bundleIndex !== -1) {
|
|
31
|
+
// @ts-ignore
|
|
29
32
|
parsedSdp.groups[bundleIndex].mids = parsedSdp.media.map((media, index) => ('mid' in media ? media.mid : index)).join(' ');
|
|
30
33
|
}
|
|
31
34
|
return sdpParser.write(parsedSdp);
|
|
32
35
|
};
|
|
33
36
|
export const toggleVideoDirection = (sdp, direction) => {
|
|
34
37
|
const parsedSdp = sdpParser.parse(sdp);
|
|
35
|
-
|
|
38
|
+
// @ts-ignore: heads up -- odd rewriting of sdp.media
|
|
39
|
+
parsedSdp.media = parsedSdp.media.map(media => ({ ...media,
|
|
36
40
|
...(media.type === 'video' ? {
|
|
37
41
|
direction,
|
|
38
42
|
} : {}),
|
|
@@ -69,6 +73,7 @@ export const fixSdp = (sdp, candidates, forcePort = true) => {
|
|
|
69
73
|
const mainCandidate = getSrflxOrRelay(candidates)[0];
|
|
70
74
|
const ip = mainCandidate ? mainCandidate.ip : null;
|
|
71
75
|
if (ip) {
|
|
76
|
+
// @ts-ignore
|
|
72
77
|
parsedSdp.origin.address = ip;
|
|
73
78
|
}
|
|
74
79
|
parsedSdp.media = parsedSdp.media.map((media) => {
|