@voicenter-team/opensips-js 1.0.10
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 +75 -0
- package/build/enum/call.event.listener.type.d.ts +7 -0
- package/build/enum/call.event.listener.type.js +10 -0
- package/build/enum/metric.keys.to.include.d.ts +2 -0
- package/build/enum/metric.keys.to.include.js +4 -0
- package/build/helpers/UA/index.d.ts +6 -0
- package/build/helpers/UA/index.js +9 -0
- package/build/helpers/audio.helper.d.ts +9 -0
- package/build/helpers/audio.helper.js +60 -0
- package/build/helpers/filter.helper.d.ts +2 -0
- package/build/helpers/filter.helper.js +14 -0
- package/build/helpers/time.helper.d.ts +16 -0
- package/build/helpers/time.helper.js +28 -0
- package/build/helpers/volume.helper.d.ts +2 -0
- package/build/helpers/volume.helper.js +76 -0
- package/build/helpers/webrtcmetrics/collector.d.ts +32 -0
- package/build/helpers/webrtcmetrics/collector.js +282 -0
- package/build/helpers/webrtcmetrics/engine.d.ts +20 -0
- package/build/helpers/webrtcmetrics/engine.js +164 -0
- package/build/helpers/webrtcmetrics/exporter.d.ts +116 -0
- package/build/helpers/webrtcmetrics/exporter.js +528 -0
- package/build/helpers/webrtcmetrics/extractor.d.ts +1 -0
- package/build/helpers/webrtcmetrics/extractor.js +976 -0
- package/build/helpers/webrtcmetrics/index.d.ts +63 -0
- package/build/helpers/webrtcmetrics/index.js +93 -0
- package/build/helpers/webrtcmetrics/metrics.d.ts +2 -0
- package/build/helpers/webrtcmetrics/metrics.js +8 -0
- package/build/helpers/webrtcmetrics/probe.d.ts +76 -0
- package/build/helpers/webrtcmetrics/probe.js +153 -0
- package/build/helpers/webrtcmetrics/utils/config.d.ts +12 -0
- package/build/helpers/webrtcmetrics/utils/config.js +28 -0
- package/build/helpers/webrtcmetrics/utils/helper.d.ts +13 -0
- package/build/helpers/webrtcmetrics/utils/helper.js +134 -0
- package/build/helpers/webrtcmetrics/utils/log.d.ts +7 -0
- package/build/helpers/webrtcmetrics/utils/log.js +71 -0
- package/build/helpers/webrtcmetrics/utils/models.d.ts +309 -0
- package/build/helpers/webrtcmetrics/utils/models.js +298 -0
- package/build/helpers/webrtcmetrics/utils/score.d.ts +4 -0
- package/build/helpers/webrtcmetrics/utils/score.js +235 -0
- package/build/helpers/webrtcmetrics/utils/shortUUId.d.ts +1 -0
- package/build/helpers/webrtcmetrics/utils/shortUUId.js +7 -0
- package/build/index.d.ts +170 -0
- package/build/index.js +849 -0
- package/package.json +61 -0
- package/src/types/declarations.d.ts +6 -0
- package/src/types/generic.d.ts +1 -0
- package/src/types/listeners.d.ts +42 -0
- package/src/types/rtc.d.ts +133 -0
- package/src/types/webrtcmetrics.d.ts +64 -0
@@ -0,0 +1,235 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.computeMOSForOutgoing = exports.computeMOS = exports.computeEModelMOSForOutgoing = exports.computeEModelMOS = void 0;
|
4
|
+
const models_1 = require("./models");
|
5
|
+
const helper_1 = require("./helper");
|
6
|
+
const computeScore = (r) => {
|
7
|
+
if (r < 0) {
|
8
|
+
return 1;
|
9
|
+
}
|
10
|
+
if (r > 100) {
|
11
|
+
return 4.5;
|
12
|
+
}
|
13
|
+
return 1 + 0.035 * r + (7.0 / 1000000) * r * (r - 60) * (100 - r);
|
14
|
+
};
|
15
|
+
const computeEModelMOS = (report, kind = models_1.VALUE.AUDIO, previousReport, beforeLastReport, ssrc) => {
|
16
|
+
const currentSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, report, models_1.DIRECTION.INBOUND);
|
17
|
+
const previousSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, previousReport, models_1.DIRECTION.INBOUND);
|
18
|
+
const beforeLastSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, beforeLastReport, models_1.DIRECTION.INBOUND);
|
19
|
+
const rttValues = [];
|
20
|
+
const jitterValues = [];
|
21
|
+
const packetsLoss = currentSSRCReport[kind].percent_packets_lost_in;
|
22
|
+
const currentJitter = currentSSRCReport[kind].delta_jitter_ms_in;
|
23
|
+
const lastJitter = (previousSSRCReport && previousSSRCReport[kind].delta_jitter_ms_in) || null;
|
24
|
+
const beforeLastJitter = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_jitter_ms_in) ||
|
25
|
+
null;
|
26
|
+
const currentRTTConnectivity = report.data.delta_rtt_connectivity_ms;
|
27
|
+
const lastRTTConnectivity = (previousReport && previousReport.data.delta_rtt_connectivity_ms) ||
|
28
|
+
null;
|
29
|
+
const beforeLastRTTConnectivity = (beforeLastReport && beforeLastReport.data.delta_rtt_connectivity_ms) ||
|
30
|
+
null;
|
31
|
+
if (currentRTTConnectivity) {
|
32
|
+
rttValues.push(currentRTTConnectivity);
|
33
|
+
}
|
34
|
+
if (lastRTTConnectivity) {
|
35
|
+
rttValues.push(lastRTTConnectivity);
|
36
|
+
}
|
37
|
+
if (beforeLastRTTConnectivity) {
|
38
|
+
rttValues.push(beforeLastRTTConnectivity);
|
39
|
+
}
|
40
|
+
// Put Jitter values
|
41
|
+
if (currentJitter) {
|
42
|
+
jitterValues.push(currentJitter);
|
43
|
+
}
|
44
|
+
if (previousReport && lastJitter) {
|
45
|
+
jitterValues.push(lastJitter);
|
46
|
+
}
|
47
|
+
if (beforeLastReport && beforeLastJitter) {
|
48
|
+
jitterValues.push(beforeLastJitter);
|
49
|
+
}
|
50
|
+
const rtt = rttValues.length > 0 ? (0, helper_1.average)(rttValues) : 100; // Default value if no value;
|
51
|
+
const jitter = jitterValues.length > 0 ? (0, helper_1.average)(jitterValues) : 10; // Default value if no value;
|
52
|
+
const rx = 93.2 - packetsLoss;
|
53
|
+
const ry = 0.18 * rx * rx - 27.9 * rx + 1126.62;
|
54
|
+
const d = (rtt + jitter) / 2;
|
55
|
+
const h = d - 177.3 < 0 ? 0 : 1;
|
56
|
+
const id = 0.024 * d + 0.11 * (d - 177.3) * h;
|
57
|
+
const r = ry - id;
|
58
|
+
return computeScore(r);
|
59
|
+
};
|
60
|
+
exports.computeEModelMOS = computeEModelMOS;
|
61
|
+
const computeEModelMOSForOutgoing = (report, kind = models_1.VALUE.AUDIO, previousReport, beforeLastReport, ssrc) => {
|
62
|
+
const currentSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, report, models_1.DIRECTION.OUTBOUND);
|
63
|
+
const previousSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, previousReport, models_1.DIRECTION.OUTBOUND);
|
64
|
+
const beforeLastSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, beforeLastReport, models_1.DIRECTION.OUTBOUND);
|
65
|
+
const rttValues = [];
|
66
|
+
const jitterValues = [];
|
67
|
+
const packetsLoss = currentSSRCReport[kind].percent_packets_lost_out;
|
68
|
+
const currentRtt = currentSSRCReport[kind].delta_rtt_ms_out;
|
69
|
+
const lastRtt = (previousSSRCReport && previousSSRCReport[kind].delta_rtt_ms_out) || null;
|
70
|
+
const beforeLastRtt = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_rtt_ms_out) ||
|
71
|
+
null;
|
72
|
+
const currentJitter = currentSSRCReport[kind].delta_jitter_ms_out;
|
73
|
+
const lastJitter = (previousSSRCReport && previousSSRCReport[kind].delta_jitter_ms_out) || null;
|
74
|
+
const beforeLastJitter = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_jitter_ms_out) ||
|
75
|
+
null;
|
76
|
+
const currentRTTConnectivity = report.data.delta_rtt_connectivity_ms;
|
77
|
+
const lastRTTConnectivity = (previousReport && previousReport.data.delta_rtt_connectivity_ms) ||
|
78
|
+
null;
|
79
|
+
const beforeLastRTTConnectivity = (beforeLastReport && beforeLastReport.data.delta_rtt_connectivity_ms) ||
|
80
|
+
null;
|
81
|
+
// Put RTT values when exist
|
82
|
+
if (currentRtt) {
|
83
|
+
rttValues.push(currentRtt);
|
84
|
+
}
|
85
|
+
else if (currentRTTConnectivity) {
|
86
|
+
rttValues.push(currentRTTConnectivity);
|
87
|
+
}
|
88
|
+
if (lastRtt) {
|
89
|
+
rttValues.push(lastRtt);
|
90
|
+
}
|
91
|
+
else if (lastRTTConnectivity) {
|
92
|
+
rttValues.push(lastRTTConnectivity);
|
93
|
+
}
|
94
|
+
if (beforeLastRtt) {
|
95
|
+
rttValues.push(beforeLastRtt);
|
96
|
+
}
|
97
|
+
else if (beforeLastRTTConnectivity) {
|
98
|
+
rttValues.push(beforeLastRTTConnectivity);
|
99
|
+
}
|
100
|
+
// Put Jitter values
|
101
|
+
if (currentJitter) {
|
102
|
+
jitterValues.push(currentJitter);
|
103
|
+
}
|
104
|
+
if (previousReport && lastJitter) {
|
105
|
+
jitterValues.push(lastJitter);
|
106
|
+
}
|
107
|
+
if (beforeLastReport && beforeLastJitter) {
|
108
|
+
jitterValues.push(beforeLastJitter);
|
109
|
+
}
|
110
|
+
const rtt = rttValues.length > 0 ? (0, helper_1.average)(rttValues) : 100; // Default value if no value;
|
111
|
+
const jitter = jitterValues.length > 0 ? (0, helper_1.average)(jitterValues) : 10; // Default value if no value;
|
112
|
+
const rx = 93.2 - packetsLoss;
|
113
|
+
const ry = 0.18 * rx * rx - 27.9 * rx + 1126.62;
|
114
|
+
const d = (rtt + jitter) / 2;
|
115
|
+
const h = d - 177.3 < 0 ? 0 : 1;
|
116
|
+
const id = 0.024 * d + 0.11 * (d - 177.3) * h;
|
117
|
+
const r = ry - id;
|
118
|
+
return computeScore(r);
|
119
|
+
};
|
120
|
+
exports.computeEModelMOSForOutgoing = computeEModelMOSForOutgoing;
|
121
|
+
const computeMOS = (report, kind = models_1.VALUE.AUDIO, previousReport, beforeLastReport, ssrc) => {
|
122
|
+
const currentSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, report, models_1.DIRECTION.INBOUND);
|
123
|
+
const previousSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, previousReport, models_1.DIRECTION.INBOUND);
|
124
|
+
const beforeLastSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, beforeLastReport, models_1.DIRECTION.INBOUND);
|
125
|
+
const rttValues = [];
|
126
|
+
const jitterValues = [];
|
127
|
+
const packetsLoss = currentSSRCReport[kind].percent_packets_lost_in / 100;
|
128
|
+
const currentJitter = currentSSRCReport[kind].delta_jitter_ms_in;
|
129
|
+
const lastJitter = (previousSSRCReport && previousSSRCReport[kind].delta_jitter_ms_in) || null;
|
130
|
+
const beforeLastJitter = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_jitter_ms_in) ||
|
131
|
+
null;
|
132
|
+
const currentRTTConnectivity = report.data.delta_rtt_connectivity_ms;
|
133
|
+
const lastRTTConnectivity = (previousReport && previousReport.data.delta_rtt_connectivity_ms) ||
|
134
|
+
null;
|
135
|
+
const beforeLastRTTConnectivity = (beforeLastReport && beforeLastReport.data.delta_rtt_connectivity_ms) ||
|
136
|
+
null;
|
137
|
+
// Put RTT values when exist
|
138
|
+
if (currentRTTConnectivity) {
|
139
|
+
rttValues.push(currentRTTConnectivity);
|
140
|
+
}
|
141
|
+
if (lastRTTConnectivity) {
|
142
|
+
rttValues.push(lastRTTConnectivity);
|
143
|
+
}
|
144
|
+
if (beforeLastRTTConnectivity) {
|
145
|
+
rttValues.push(beforeLastRTTConnectivity);
|
146
|
+
}
|
147
|
+
// Put Jitter values
|
148
|
+
if (currentJitter) {
|
149
|
+
jitterValues.push(currentJitter);
|
150
|
+
}
|
151
|
+
if (previousSSRCReport && lastJitter) {
|
152
|
+
jitterValues.push(lastJitter);
|
153
|
+
}
|
154
|
+
if (beforeLastSSRCReport && beforeLastJitter) {
|
155
|
+
jitterValues.push(beforeLastJitter);
|
156
|
+
}
|
157
|
+
const rtt = rttValues.length > 0 ? (0, helper_1.average)(rttValues) : 100; // Default value if no value;
|
158
|
+
const jitter = jitterValues.length > 0 ? (0, helper_1.average)(jitterValues) : 10; // Default value if no value;
|
159
|
+
const codecFittingParameterA = 0;
|
160
|
+
const codecFittingParameterB = 19.8;
|
161
|
+
const codecFittingParameterC = 29.7;
|
162
|
+
const ld = 30;
|
163
|
+
const d = (rtt + jitter) / 2 + ld;
|
164
|
+
const h = d - 177.3 < 0 ? 0 : 1;
|
165
|
+
const id = 0.024 * d + 0.11 * (d - 177.3) * h;
|
166
|
+
const ie = codecFittingParameterA +
|
167
|
+
codecFittingParameterB * Math.log(1 + codecFittingParameterC * packetsLoss);
|
168
|
+
const r = 93.2 - (ie + id);
|
169
|
+
return computeScore(r);
|
170
|
+
};
|
171
|
+
exports.computeMOS = computeMOS;
|
172
|
+
const computeMOSForOutgoing = (report, kind = models_1.VALUE.AUDIO, previousReport, beforeLastReport, ssrc) => {
|
173
|
+
const currentSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, report, models_1.DIRECTION.OUTBOUND);
|
174
|
+
const previousSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, previousReport, models_1.DIRECTION.OUTBOUND);
|
175
|
+
const beforeLastSSRCReport = (0, helper_1.getSSRCDataFromBunch)(ssrc, beforeLastReport, models_1.DIRECTION.OUTBOUND);
|
176
|
+
const rttValues = [];
|
177
|
+
const jitterValues = [];
|
178
|
+
const packetsLoss = currentSSRCReport[kind].percent_packets_lost_out / 100;
|
179
|
+
const currentRtt = currentSSRCReport[kind].delta_rtt_ms_out;
|
180
|
+
const lastRtt = (previousSSRCReport && previousSSRCReport[kind].delta_rtt_ms_out) || null;
|
181
|
+
const beforeLastRtt = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_rtt_ms_out) ||
|
182
|
+
null;
|
183
|
+
const currentJitter = currentSSRCReport[kind].delta_jitter_ms_out;
|
184
|
+
const lastJitter = (previousSSRCReport && previousSSRCReport[kind].delta_jitter_ms_out) || null;
|
185
|
+
const beforeLastJitter = (beforeLastSSRCReport && beforeLastSSRCReport[kind].delta_jitter_ms_out) ||
|
186
|
+
null;
|
187
|
+
const currentRTTConnectivity = report.data.delta_rtt_connectivity_ms;
|
188
|
+
const lastRTTConnectivity = (previousReport && previousReport.data.delta_rtt_connectivity_ms) ||
|
189
|
+
null;
|
190
|
+
const beforeLastRTTConnectivity = (beforeLastReport && beforeLastReport.data.delta_rtt_connectivity_ms) ||
|
191
|
+
null;
|
192
|
+
// Put RTT values when exist
|
193
|
+
if (currentRtt) {
|
194
|
+
rttValues.push(currentRtt);
|
195
|
+
}
|
196
|
+
else if (currentRTTConnectivity) {
|
197
|
+
rttValues.push(currentRTTConnectivity);
|
198
|
+
}
|
199
|
+
if (lastRtt) {
|
200
|
+
rttValues.push(lastRtt);
|
201
|
+
}
|
202
|
+
else if (lastRTTConnectivity) {
|
203
|
+
rttValues.push(lastRTTConnectivity);
|
204
|
+
}
|
205
|
+
if (beforeLastRtt) {
|
206
|
+
rttValues.push(beforeLastRtt);
|
207
|
+
}
|
208
|
+
else if (beforeLastRTTConnectivity) {
|
209
|
+
rttValues.push(beforeLastRTTConnectivity);
|
210
|
+
}
|
211
|
+
// Put Jitter values
|
212
|
+
if (currentJitter) {
|
213
|
+
jitterValues.push(currentJitter);
|
214
|
+
}
|
215
|
+
if (previousSSRCReport && lastJitter) {
|
216
|
+
jitterValues.push(lastJitter);
|
217
|
+
}
|
218
|
+
if (beforeLastSSRCReport && beforeLastJitter) {
|
219
|
+
jitterValues.push(beforeLastJitter);
|
220
|
+
}
|
221
|
+
const rtt = rttValues.length > 0 ? (0, helper_1.average)(rttValues) : 100; // Default value if no value;
|
222
|
+
const jitter = jitterValues.length > 0 ? (0, helper_1.average)(jitterValues) : 10; // Default value if no value;
|
223
|
+
const codecFittingParameterA = 0;
|
224
|
+
const codecFittingParameterB = 19.8;
|
225
|
+
const codecFittingParameterC = 29.7;
|
226
|
+
const ld = 30;
|
227
|
+
const d = (rtt + jitter) / 2 + ld;
|
228
|
+
const h = d - 177.3 < 0 ? 0 : 1;
|
229
|
+
const id = 0.024 * d + 0.11 * (d - 177.3) * h;
|
230
|
+
const ie = codecFittingParameterA +
|
231
|
+
codecFittingParameterB * Math.log(1 + codecFittingParameterC * packetsLoss);
|
232
|
+
const r = 93.2 - (ie + id);
|
233
|
+
return computeScore(r);
|
234
|
+
};
|
235
|
+
exports.computeMOSForOutgoing = computeMOSForOutgoing;
|
@@ -0,0 +1 @@
|
|
1
|
+
export default function shortUUID(): string;
|
package/build/index.d.ts
ADDED
@@ -0,0 +1,170 @@
|
|
1
|
+
import JsSIP from 'jssip';
|
2
|
+
import UA from './helpers/UA';
|
3
|
+
import { TempTimeData, ITimeData } from './helpers/time.helper';
|
4
|
+
import { WebrtcMetricsConfigType, MediaDeviceType } from '@/types/webrtcmetrics';
|
5
|
+
import { ListenersKeyType, ListenerCallbackFnType } from '@/types/listeners';
|
6
|
+
import { RTCSessionExtended, ICall, IntervalType, ListenerEventType, IRoom, IDoCallParam, ICallStatus, IRoomUpdate, IOpenSIPSJSOptions } from '@/types/rtc';
|
7
|
+
import { SendMessageOptions } from 'jssip/lib/Message';
|
8
|
+
export interface InnerState {
|
9
|
+
isMuted: boolean;
|
10
|
+
muteWhenJoin: boolean;
|
11
|
+
isDND: boolean;
|
12
|
+
activeCalls: {
|
13
|
+
[key: string]: ICall;
|
14
|
+
};
|
15
|
+
activeRooms: {
|
16
|
+
[key: number]: IRoom;
|
17
|
+
};
|
18
|
+
callTime: {
|
19
|
+
[key: string]: TempTimeData;
|
20
|
+
};
|
21
|
+
callStatus: {
|
22
|
+
[key: string]: ICallStatus;
|
23
|
+
};
|
24
|
+
timeIntervals: {
|
25
|
+
[key: string]: IntervalType;
|
26
|
+
};
|
27
|
+
callMetrics: {
|
28
|
+
[key: string]: any;
|
29
|
+
};
|
30
|
+
availableMediaDevices: Array<MediaDeviceInfo>;
|
31
|
+
selectedMediaDevices: {
|
32
|
+
[key in MediaDeviceType]: string;
|
33
|
+
};
|
34
|
+
microphoneInputLevel: number;
|
35
|
+
speakerVolume: number;
|
36
|
+
originalStream: MediaStream | null;
|
37
|
+
listeners: {
|
38
|
+
[key: string]: Array<(call: RTCSessionExtended, event: ListenerEventType | undefined) => void>;
|
39
|
+
};
|
40
|
+
metricConfig: WebrtcMetricsConfigType;
|
41
|
+
}
|
42
|
+
declare class OpenSIPSJS extends UA {
|
43
|
+
private initialized;
|
44
|
+
private readonly options;
|
45
|
+
private readonly newRTCSessionEventName;
|
46
|
+
private readonly activeCalls;
|
47
|
+
private _currentActiveRoomId;
|
48
|
+
private _callAddingInProgress;
|
49
|
+
private state;
|
50
|
+
constructor(options: IOpenSIPSJSOptions);
|
51
|
+
on<T extends ListenersKeyType>(type: T, listener: ListenerCallbackFnType<T>): this;
|
52
|
+
off<T extends ListenersKeyType>(type: T, listener: ListenerCallbackFnType<T>): this;
|
53
|
+
emit(type: ListenersKeyType, args: any): boolean;
|
54
|
+
get sipDomain(): string;
|
55
|
+
get sipOptions(): {
|
56
|
+
mediaConstraints: {
|
57
|
+
audio: {
|
58
|
+
deviceId: {
|
59
|
+
exact: string;
|
60
|
+
};
|
61
|
+
};
|
62
|
+
video: boolean;
|
63
|
+
};
|
64
|
+
session_timers: boolean;
|
65
|
+
extraHeaders: [string];
|
66
|
+
pcConfig: import("@/types/rtc").RTCConfiguration;
|
67
|
+
};
|
68
|
+
get currentActiveRoomId(): number | undefined;
|
69
|
+
private set currentActiveRoomId(value);
|
70
|
+
get callAddingInProgress(): string | undefined;
|
71
|
+
private set callAddingInProgress(value);
|
72
|
+
get muteWhenJoin(): boolean;
|
73
|
+
set muteWhenJoin(value: boolean);
|
74
|
+
get isDND(): boolean;
|
75
|
+
set isDND(value: boolean);
|
76
|
+
get speakerVolume(): number;
|
77
|
+
set speakerVolume(value: number);
|
78
|
+
get microphoneInputLevel(): number;
|
79
|
+
set microphoneInputLevel(value: number);
|
80
|
+
get getActiveCalls(): {
|
81
|
+
[key: string]: ICall;
|
82
|
+
};
|
83
|
+
get getActiveRooms(): {
|
84
|
+
[key: number]: IRoom;
|
85
|
+
};
|
86
|
+
get isMuted(): boolean;
|
87
|
+
set isMuted(value: boolean);
|
88
|
+
get getInputDeviceList(): MediaDeviceInfo[];
|
89
|
+
get getOutputDeviceList(): MediaDeviceInfo[];
|
90
|
+
get getUserMediaConstraints(): {
|
91
|
+
audio: {
|
92
|
+
deviceId: {
|
93
|
+
exact: string;
|
94
|
+
};
|
95
|
+
};
|
96
|
+
video: boolean;
|
97
|
+
};
|
98
|
+
get getInputDefaultDevice(): MediaDeviceInfo | undefined;
|
99
|
+
get getOutputDefaultDevice(): MediaDeviceInfo | undefined;
|
100
|
+
get selectedInputDevice(): string;
|
101
|
+
set selectedInputDevice(deviceId: string);
|
102
|
+
get selectedOutputDevice(): string;
|
103
|
+
set selectedOutputDevice(deviceId: string);
|
104
|
+
get originalStream(): MediaStream | null;
|
105
|
+
private setAvailableMediaDevices;
|
106
|
+
updateDeviceList(): Promise<void>;
|
107
|
+
setMediaDevices(setDefaults?: boolean): Promise<void>;
|
108
|
+
setCallTime(value: ITimeData): void;
|
109
|
+
removeCallTime(callId: string): void;
|
110
|
+
private setTimeInterval;
|
111
|
+
private removeTimeInterval;
|
112
|
+
private _stopCallTimer;
|
113
|
+
setMetricsConfig(config: WebrtcMetricsConfigType): void;
|
114
|
+
sendDTMF(callId: string, value: string): void;
|
115
|
+
doMute(value: boolean): void;
|
116
|
+
sendMessage(target: string | JsSIP.URI, body: string, options?: SendMessageOptions): import("jssip/lib/Message").Message;
|
117
|
+
doCallHold({ callId, toHold, automatic }: {
|
118
|
+
callId: string;
|
119
|
+
toHold: boolean;
|
120
|
+
automatic?: boolean;
|
121
|
+
}): void;
|
122
|
+
private _cancelAllOutgoingUnanswered;
|
123
|
+
callAnswer(callId: string): void;
|
124
|
+
callMove(callId: string, roomId: number): Promise<void>;
|
125
|
+
updateCall(value: ICall): void;
|
126
|
+
updateRoom(value: IRoomUpdate): void;
|
127
|
+
private _addCall;
|
128
|
+
private _addCallStatus;
|
129
|
+
private _updateCallStatus;
|
130
|
+
private _removeCallStatus;
|
131
|
+
private _addRoom;
|
132
|
+
setMicrophone(dId: string): Promise<void>;
|
133
|
+
private _setOriginalStream;
|
134
|
+
setSpeaker(dId: string): Promise<void>;
|
135
|
+
private removeRoom;
|
136
|
+
private deleteRoomIfEmpty;
|
137
|
+
private checkInitialized;
|
138
|
+
private muteReconfigure;
|
139
|
+
private roomReconfigure;
|
140
|
+
private _doConference;
|
141
|
+
_muteReconfigure(call: ICall): void;
|
142
|
+
muteCaller(callId: string, value: boolean): void;
|
143
|
+
callTerminate(callId: string): void;
|
144
|
+
callTransfer(callId: string, target: string): void;
|
145
|
+
callMerge(roomId: number): void;
|
146
|
+
setDND(value: boolean): void;
|
147
|
+
private _startCallTimer;
|
148
|
+
setCurrentActiveRoomId(roomId: number | undefined): Promise<void>;
|
149
|
+
private getNewRoomId;
|
150
|
+
subscribe(type: string, listener: (c: RTCSessionExtended) => void): void;
|
151
|
+
removeIListener(value: string): void;
|
152
|
+
private addCall;
|
153
|
+
private _triggerListener;
|
154
|
+
private _removeCall;
|
155
|
+
private _activeCallListRemove;
|
156
|
+
private newRTCSessionCallback;
|
157
|
+
private setInitialized;
|
158
|
+
start(): this;
|
159
|
+
setMuteWhenJoin(value: boolean): void;
|
160
|
+
private _setCallMetrics;
|
161
|
+
private _removeCallMetrics;
|
162
|
+
private _getCallQuality;
|
163
|
+
private _triggerAddStream;
|
164
|
+
doCall({ target, addToCurrentRoom }: IDoCallParam): void;
|
165
|
+
callChangeRoom({ callId, roomId }: {
|
166
|
+
callId: string;
|
167
|
+
roomId: number;
|
168
|
+
}): Promise<void>;
|
169
|
+
}
|
170
|
+
export default OpenSIPSJS;
|