-
Notifications
You must be signed in to change notification settings - Fork 2
/
createWebRTCCall.ts
91 lines (87 loc) · 2.22 KB
/
createWebRTCCall.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
import { IWebRTCCall } from '@telnyx/webrtc/lib/Modules/Verto/webrtc/interfaces';
const mockCallOptions = {
destinationNumber: 'some_value',
remoteCallerName: 'some_value',
remoteCallerNumber: 'some_value',
callerName: 'some_value',
callerNumber: 'some_value',
id: '',
remoteSdp: '',
localStream: undefined,
remoteStream: undefined,
localElement: undefined,
remoteElement: undefined,
iceServers: undefined,
audio: undefined,
video: undefined,
attach: undefined,
useStereo: undefined,
micId: '',
micLabel: '',
camId: '',
camLabel: '',
speakerId: '',
userVariables: Object,
screenShare: undefined,
onNotification: Function,
googleMaxBitrate: undefined,
googleMinBitrate: undefined,
googleStartBitrate: undefined,
ringtoneFile: '',
ringbackFile: '',
};
const mockWebRTCCall: IWebRTCCall = {
id: 'some_value',
state: 'some_value',
prevState: 'some_value',
direction: 'some_value',
options: mockCallOptions,
cause: 'some_value',
causeCode: 0,
channels: ['some_value'],
role: 'some_value',
extension: 'some_value',
localStream: undefined,
remoteStream: undefined,
invite: () => {},
answer: () => {},
hangup: (params, execute) => {},
transfer: (destination) => {},
replace: (replaceCallID) => {},
hold: () => {},
unhold: () => {},
toggleHold: () => {},
dtmf: (dtmf) => {},
message: (to, body) => {},
muteAudio: () => {},
unmuteAudio: () => {},
toggleAudioMute: () => {},
setAudioInDevice: (deviceId) => Promise.resolve(),
muteVideo: () => {},
unmuteVideo: () => {},
toggleVideoMute: () => {},
setVideoDevice: (deviceId) => Promise.resolve(),
deaf: () => {},
undeaf: () => {},
toggleDeaf: () => {},
setState: (state) => {},
handleMessage: (msg) => {},
_addChannel: (laChannel) => {},
handleConferenceUpdate: (packet, pvtData) => Promise.resolve(''),
startScreenShare: undefined,
stopScreenShare: undefined,
setAudioOutDevice: undefined,
switchCamera: undefined,
setSpeakerPhone: undefined,
};
function createMockWebRTCCall(callParams: Partial<IWebRTCCall>) {
return {
...mockWebRTCCall,
...callParams,
options: {
...mockCallOptions,
...callParams.options,
},
};
}
export default createMockWebRTCCall;