mockrtc 0.1.0 → 0.2.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/client/mockrtc-admin-request-builder.d.ts +21 -0
- package/dist/client/mockrtc-admin-request-builder.js +171 -0
- package/dist/client/mockrtc-admin-request-builder.js.map +1 -0
- package/dist/client/mockrtc-client.d.ts +5 -1
- package/dist/client/mockrtc-client.js +20 -16
- package/dist/client/mockrtc-client.js.map +1 -1
- package/dist/client/mockrtc-remote-peer.d.ts +3 -2
- package/dist/client/mockrtc-remote-peer.js.map +1 -1
- package/dist/handling/handler-step-definitions.d.ts +3 -2
- package/dist/handling/handler-step-definitions.js.map +1 -1
- package/dist/handling/handler-steps.js +1 -1
- package/dist/handling/handler-steps.js.map +1 -1
- package/dist/main-browser.d.ts +2 -0
- package/dist/main-browser.js +5 -1
- package/dist/main-browser.js.map +1 -1
- package/dist/main.d.ts +5 -4
- package/dist/main.js +5 -1
- package/dist/main.js.map +1 -1
- package/dist/mockrtc-peer.d.ts +37 -6
- package/dist/mockrtc.d.ts +138 -1
- package/dist/mockrtc.js +1 -0
- package/dist/mockrtc.js.map +1 -1
- package/dist/server/mockrtc-admin-plugin.d.ts +2 -2
- package/dist/server/mockrtc-admin-plugin.js +147 -2
- package/dist/server/mockrtc-admin-plugin.js.map +1 -1
- package/dist/server/mockrtc-server-peer.d.ts +8 -2
- package/dist/server/mockrtc-server-peer.js +106 -5
- package/dist/server/mockrtc-server-peer.js.map +1 -1
- package/dist/server/mockrtc-server.d.ts +11 -3
- package/dist/server/mockrtc-server.js +44 -6
- package/dist/server/mockrtc-server.js.map +1 -1
- package/dist/webrtc/datachannel-stream.d.ts +2 -0
- package/dist/webrtc/datachannel-stream.js +12 -0
- package/dist/webrtc/datachannel-stream.js.map +1 -1
- package/dist/webrtc/mediatrack-stream.d.ts +4 -0
- package/dist/webrtc/mediatrack-stream.js +13 -1
- package/dist/webrtc/mediatrack-stream.js.map +1 -1
- package/dist/webrtc/mockrtc-connection.d.ts +1 -1
- package/dist/webrtc/mockrtc-connection.js +77 -60
- package/dist/webrtc/mockrtc-connection.js.map +1 -1
- package/dist/webrtc/rtc-connection.d.ts +23 -4
- package/dist/webrtc/rtc-connection.js +45 -6
- package/dist/webrtc/rtc-connection.js.map +1 -1
- package/dist/webrtc-hooks.js +4 -2
- package/dist/webrtc-hooks.js.map +1 -1
- package/package.json +12 -6
- package/src/client/mockrtc-admin-request-builder.ts +184 -0
- package/src/client/mockrtc-client.ts +26 -22
- package/src/client/mockrtc-remote-peer.ts +9 -8
- package/src/handling/handler-step-definitions.ts +6 -4
- package/src/handling/handler-steps.ts +6 -5
- package/src/main-browser.ts +4 -0
- package/src/main.ts +18 -4
- package/src/mockrtc-peer.ts +41 -6
- package/src/mockrtc.ts +163 -1
- package/src/server/mockrtc-admin-plugin.ts +159 -6
- package/src/server/mockrtc-server-peer.ts +183 -6
- package/src/server/mockrtc-server.ts +75 -14
- package/src/webrtc/datachannel-stream.ts +16 -0
- package/src/webrtc/mediatrack-stream.ts +16 -3
- package/src/webrtc/mockrtc-connection.ts +21 -6
- package/src/webrtc/rtc-connection.ts +79 -14
- package/src/webrtc-hooks.ts +7 -4
- package/test/integration/events.spec.ts +536 -0
- package/test/integration/matching.spec.ts +68 -0
- package/test/integration/proxy.spec.ts +66 -1
- package/test/test-setup.ts +19 -0
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# MockRTC [](https://github.com/httptoolkit/mockrtc/actions) [](https://npmjs.com/package/mockrtc)
|
|
1
|
+
# MockRTC [](https://github.com/httptoolkit/mockrtc/actions) [](https://npmjs.com/package/mockrtc)
|
|
2
2
|
|
|
3
3
|
> _Part of [HTTP Toolkit](https://httptoolkit.tech): powerful tools for building, testing & debugging HTTP(S), WebSockets and WebRTC_
|
|
4
4
|
|
|
@@ -287,4 +287,4 @@ You might also be interested in scrolling through MockRTC's [test suite](https:/
|
|
|
287
287
|
|
|
288
288
|
_This project has received funding from the European Union’s Horizon 2020 research and innovation programme within the framework of the NGI-POINTER Project funded under grant agreement No 871528._
|
|
289
289
|
|
|
290
|
-

|
|
290
|
+

|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import * as stream from 'stream';
|
|
3
|
+
import { AdminQuery } from 'mockttp/dist/client/admin-query';
|
|
4
|
+
import { HandlerStepDefinition } from '../handling/handler-step-definitions';
|
|
5
|
+
import { MockRTCEvent, MockRTCEventData } from '../mockrtc';
|
|
6
|
+
/**
|
|
7
|
+
* This is part of Mockttp's experimental 'pluggable admin' API. This may change
|
|
8
|
+
* unpredictably, even in minor releases.
|
|
9
|
+
*
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare class MockRTCAdminRequestBuilder {
|
|
13
|
+
buildCreatePeerQuery(handlerSteps: Array<HandlerStepDefinition>, adminStream: stream.Duplex): AdminQuery<{
|
|
14
|
+
createPeer: {
|
|
15
|
+
peerId: string;
|
|
16
|
+
};
|
|
17
|
+
}, {
|
|
18
|
+
peerId: string;
|
|
19
|
+
}>;
|
|
20
|
+
buildSubscriptionRequest<E extends MockRTCEvent>(event: E): AdminQuery<MockRTCEventData[E]> | undefined;
|
|
21
|
+
}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* SPDX-FileCopyrightText: 2022 Tim Perry <tim@httptoolkit.tech>
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.MockRTCAdminRequestBuilder = void 0;
|
|
8
|
+
const graphql_tag_1 = require("graphql-tag");
|
|
9
|
+
// Long-term, it'd be great to use the 'official' export path of mockttp/pluggable-admin, but
|
|
10
|
+
// if we do so, then TypeScript <4.7 doesn't understand it here or downstream, so we get errors.
|
|
11
|
+
// We don't want to use the main-exported version to avoid bundling all of Mockttp in browsers.
|
|
12
|
+
// For now we have to use the direct import. We can update once TS 4.7 is widely used.
|
|
13
|
+
const BrowserPluggableAdmin = require("mockttp/dist/pluggable-admin-api/pluggable-admin.browser");
|
|
14
|
+
/**
|
|
15
|
+
* This is part of Mockttp's experimental 'pluggable admin' API. This may change
|
|
16
|
+
* unpredictably, even in minor releases.
|
|
17
|
+
*
|
|
18
|
+
* @internal
|
|
19
|
+
*/
|
|
20
|
+
class MockRTCAdminRequestBuilder {
|
|
21
|
+
buildCreatePeerQuery(handlerSteps, adminStream) {
|
|
22
|
+
return {
|
|
23
|
+
query: (0, graphql_tag_1.default) `
|
|
24
|
+
mutation CreatePeer($peerData: RTCHandlerData!) {
|
|
25
|
+
createPeer(data: $peerData) {
|
|
26
|
+
peerId
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
`,
|
|
30
|
+
variables: {
|
|
31
|
+
peerData: {
|
|
32
|
+
steps: handlerSteps.map(step => BrowserPluggableAdmin.Serialization.serialize(step, adminStream))
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
transformResponse: ({ createPeer }) => createPeer
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
buildSubscriptionRequest(event) {
|
|
39
|
+
const query = {
|
|
40
|
+
'peer-connected': (0, graphql_tag_1.default) `subscription OnPeerConnected {
|
|
41
|
+
peerConnected {
|
|
42
|
+
peerId
|
|
43
|
+
sessionId
|
|
44
|
+
|
|
45
|
+
metadata
|
|
46
|
+
timingEvents
|
|
47
|
+
|
|
48
|
+
localSessionDescription { type, sdp }
|
|
49
|
+
remoteSessionDescription { type, sdp }
|
|
50
|
+
selectedLocalCandidate { address, port, protocol, type }
|
|
51
|
+
selectedRemoteCandidate { address, port, protocol, type }
|
|
52
|
+
}
|
|
53
|
+
}`,
|
|
54
|
+
'peer-disconnected': (0, graphql_tag_1.default) `subscription OnPeerDisconnected {
|
|
55
|
+
peerDisconnected {
|
|
56
|
+
peerId
|
|
57
|
+
sessionId
|
|
58
|
+
timingEvents
|
|
59
|
+
}
|
|
60
|
+
}`,
|
|
61
|
+
'external-peer-attached': (0, graphql_tag_1.default) `subscription OnExternalPeerAttached {
|
|
62
|
+
externalPeerAttached {
|
|
63
|
+
peerId
|
|
64
|
+
sessionId
|
|
65
|
+
timingEvents
|
|
66
|
+
externalConnection {
|
|
67
|
+
sessionId
|
|
68
|
+
localSessionDescription { type, sdp }
|
|
69
|
+
remoteSessionDescription { type, sdp }
|
|
70
|
+
selectedLocalCandidate { address, port, protocol, type }
|
|
71
|
+
selectedRemoteCandidate { address, port, protocol, type }
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}`,
|
|
75
|
+
'data-channel-opened': (0, graphql_tag_1.default) `subscription OnDataChannelOpen {
|
|
76
|
+
dataChannelOpened {
|
|
77
|
+
peerId
|
|
78
|
+
sessionId
|
|
79
|
+
channelId
|
|
80
|
+
channelLabel
|
|
81
|
+
channelProtocol
|
|
82
|
+
|
|
83
|
+
eventTimestamp
|
|
84
|
+
timingEvents
|
|
85
|
+
}
|
|
86
|
+
}`,
|
|
87
|
+
'data-channel-message-sent': (0, graphql_tag_1.default) `subscription OnDataChannelMessageSent {
|
|
88
|
+
dataChannelMessageSent {
|
|
89
|
+
peerId
|
|
90
|
+
sessionId
|
|
91
|
+
channelId
|
|
92
|
+
direction
|
|
93
|
+
content
|
|
94
|
+
isBinary
|
|
95
|
+
|
|
96
|
+
eventTimestamp
|
|
97
|
+
timingEvents
|
|
98
|
+
}
|
|
99
|
+
}`,
|
|
100
|
+
'data-channel-message-received': (0, graphql_tag_1.default) `subscription OnDataChannelMessageReceived {
|
|
101
|
+
dataChannelMessageReceived {
|
|
102
|
+
peerId
|
|
103
|
+
sessionId
|
|
104
|
+
channelId
|
|
105
|
+
direction
|
|
106
|
+
content
|
|
107
|
+
isBinary
|
|
108
|
+
|
|
109
|
+
eventTimestamp
|
|
110
|
+
timingEvents
|
|
111
|
+
}
|
|
112
|
+
}`,
|
|
113
|
+
'data-channel-closed': (0, graphql_tag_1.default) `subscription OnDataChannelClose {
|
|
114
|
+
dataChannelClosed {
|
|
115
|
+
peerId
|
|
116
|
+
sessionId
|
|
117
|
+
channelId
|
|
118
|
+
|
|
119
|
+
eventTimestamp
|
|
120
|
+
timingEvents
|
|
121
|
+
}
|
|
122
|
+
}`,
|
|
123
|
+
'media-track-opened': (0, graphql_tag_1.default) `subscription OnDataChannelClose {
|
|
124
|
+
mediaTrackOpened {
|
|
125
|
+
peerId
|
|
126
|
+
sessionId
|
|
127
|
+
trackMid
|
|
128
|
+
trackType
|
|
129
|
+
trackDirection
|
|
130
|
+
|
|
131
|
+
eventTimestamp
|
|
132
|
+
timingEvents
|
|
133
|
+
}
|
|
134
|
+
}`,
|
|
135
|
+
'media-track-stats': (0, graphql_tag_1.default) `subscription OnDataChannelClose {
|
|
136
|
+
mediaTrackStats {
|
|
137
|
+
peerId
|
|
138
|
+
sessionId
|
|
139
|
+
trackMid
|
|
140
|
+
totalBytesSent
|
|
141
|
+
totalBytesReceived
|
|
142
|
+
|
|
143
|
+
eventTimestamp
|
|
144
|
+
timingEvents
|
|
145
|
+
}
|
|
146
|
+
}`,
|
|
147
|
+
'media-track-closed': (0, graphql_tag_1.default) `subscription OnDataChannelClose {
|
|
148
|
+
mediaTrackClosed {
|
|
149
|
+
peerId
|
|
150
|
+
sessionId
|
|
151
|
+
trackMid
|
|
152
|
+
|
|
153
|
+
eventTimestamp
|
|
154
|
+
timingEvents
|
|
155
|
+
}
|
|
156
|
+
}`
|
|
157
|
+
}[event];
|
|
158
|
+
if (!query)
|
|
159
|
+
return; // Unrecognized event, we can't subscribe to this.
|
|
160
|
+
return {
|
|
161
|
+
query,
|
|
162
|
+
transformResponse: (result) => {
|
|
163
|
+
if (result.content)
|
|
164
|
+
result.content = Buffer.from(result.content, 'base64');
|
|
165
|
+
return result;
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
exports.MockRTCAdminRequestBuilder = MockRTCAdminRequestBuilder;
|
|
171
|
+
//# sourceMappingURL=mockrtc-admin-request-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockrtc-admin-request-builder.js","sourceRoot":"","sources":["../../src/client/mockrtc-admin-request-builder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,6CAA8B;AAG9B,6FAA6F;AAC7F,gGAAgG;AAChG,+FAA+F;AAC/F,sFAAsF;AACtF,kGAAkG;AAMlG;;;;;GAKG;AACH,MAAa,0BAA0B;IAEnC,oBAAoB,CAChB,YAA0C,EAC1C,WAA0B;QAK1B,OAAO;YACH,KAAK,EAAE,IAAA,qBAAG,EAAA;;;;;;aAMT;YACD,SAAS,EAAE;gBACP,QAAQ,EAAE;oBACN,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAC3B,qBAAqB,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CACnE;iBACJ;aACJ;YACD,iBAAiB,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU;SACpD,CAAC;IACN,CAAC;IAED,wBAAwB,CAAyB,KAAQ;QACrD,MAAM,KAAK,GAAG;YACV,gBAAgB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;;;cAanB;YACF,mBAAmB,EAAE,IAAA,qBAAG,EAAA;;;;;;cAMtB;YACF,wBAAwB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;;;cAa3B;YACF,qBAAqB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;cAWxB;YACF,2BAA2B,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;;cAY9B;YACF,+BAA+B,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;;cAYlC;YACF,qBAAqB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;cASxB;YACF,oBAAoB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;cAWvB;YACF,mBAAmB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;;;cAWtB;YACF,oBAAoB,EAAE,IAAA,qBAAG,EAAA;;;;;;;;;cASvB;SACL,CAAC,KAAK,CAAC,CAAC;QAET,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,kDAAkD;QAEtE,OAAO;YACH,KAAK;YACL,iBAAiB,EAAE,CAAC,MAAW,EAAE,EAAE;gBAC/B,IAAI,MAAM,CAAC,OAAO;oBAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC3E,OAAO,MAAM,CAAC;YAClB,CAAC;SACJ,CAAC;IACN,CAAC;CACJ;AA/JD,gEA+JC"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import type { PluggableAdmin } from 'mockttp';
|
|
2
|
-
import { MockRTC, MockRTCOptions, MockRTCPeerBuilder } from "../mockrtc";
|
|
2
|
+
import { MockRTC, MockRTCEvent, MockRTCOptions, MockRTCPeerBuilder } from "../mockrtc";
|
|
3
|
+
import type { MockRTCPeer } from '../mockrtc-peer';
|
|
3
4
|
export declare type MockRTCClientOptions = PluggableAdmin.AdminClientOptions & MockRTCOptions;
|
|
4
5
|
export declare class MockRTCClient implements MockRTC {
|
|
5
6
|
private options;
|
|
6
7
|
private adminClient;
|
|
8
|
+
private requestBuilder;
|
|
7
9
|
constructor(options?: MockRTCClientOptions);
|
|
10
|
+
getMatchingPeer(): MockRTCPeer;
|
|
8
11
|
buildPeer(): MockRTCPeerBuilder;
|
|
9
12
|
private buildPeerFromData;
|
|
10
13
|
start(): Promise<void>;
|
|
11
14
|
stop(): Promise<void>;
|
|
15
|
+
on(event: MockRTCEvent, callback: any): Promise<void>;
|
|
12
16
|
}
|
|
@@ -14,7 +14,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
14
14
|
};
|
|
15
15
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
16
|
exports.MockRTCClient = void 0;
|
|
17
|
-
const graphql_tag_1 = require("graphql-tag");
|
|
18
17
|
// Long-term, it'd be great to use the 'official' export path of mockttp/pluggable-admin, but
|
|
19
18
|
// if we do so, then TypeScript <4.7 doesn't understand it here or downstream, so we get errors.
|
|
20
19
|
// We don't want to use the main-exported version to avoid bundling all of Mockttp in browsers.
|
|
@@ -22,30 +21,21 @@ const graphql_tag_1 = require("graphql-tag");
|
|
|
22
21
|
const BrowserPluggableAdmin = require("mockttp/dist/pluggable-admin-api/pluggable-admin.browser");
|
|
23
22
|
const mockrtc_remote_peer_1 = require("./mockrtc-remote-peer");
|
|
24
23
|
const handler_builder_1 = require("../handling/handler-builder");
|
|
24
|
+
const mockrtc_admin_request_builder_1 = require("./mockrtc-admin-request-builder");
|
|
25
25
|
class MockRTCClient {
|
|
26
26
|
constructor(options = {}) {
|
|
27
27
|
this.options = options;
|
|
28
28
|
this.buildPeerFromData = (handlerSteps) => __awaiter(this, void 0, void 0, function* () {
|
|
29
29
|
const { adminStream } = this.adminClient;
|
|
30
|
-
const peerData = yield this.adminClient.sendQuery(
|
|
31
|
-
query: (0, graphql_tag_1.default) `
|
|
32
|
-
mutation CreatePeer($peerData: RTCHandlerData!) {
|
|
33
|
-
createPeer(data: $peerData) {
|
|
34
|
-
peerId
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
`,
|
|
38
|
-
variables: {
|
|
39
|
-
peerData: {
|
|
40
|
-
steps: handlerSteps.map(step => BrowserPluggableAdmin.Serialization.serialize(step, adminStream))
|
|
41
|
-
}
|
|
42
|
-
},
|
|
43
|
-
transformResponse: ({ createPeer }) => createPeer
|
|
44
|
-
});
|
|
30
|
+
const peerData = yield this.adminClient.sendQuery(this.requestBuilder.buildCreatePeerQuery(handlerSteps, adminStream));
|
|
45
31
|
const { peerId } = peerData;
|
|
46
32
|
return new mockrtc_remote_peer_1.MockRTCRemotePeer(peerId, this.adminClient);
|
|
47
33
|
});
|
|
48
34
|
this.adminClient = new BrowserPluggableAdmin.AdminClient(options);
|
|
35
|
+
this.requestBuilder = new mockrtc_admin_request_builder_1.MockRTCAdminRequestBuilder();
|
|
36
|
+
}
|
|
37
|
+
getMatchingPeer() {
|
|
38
|
+
return new mockrtc_remote_peer_1.MockRTCRemotePeer('matching-peer', this.adminClient);
|
|
49
39
|
}
|
|
50
40
|
buildPeer() {
|
|
51
41
|
return new handler_builder_1.MockRTCHandlerBuilder(this.buildPeerFromData);
|
|
@@ -62,6 +52,20 @@ class MockRTCClient {
|
|
|
62
52
|
yield this.adminClient.stop();
|
|
63
53
|
});
|
|
64
54
|
}
|
|
55
|
+
on(event, callback) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
const subscriptionRequest = this.requestBuilder.buildSubscriptionRequest(event);
|
|
58
|
+
if (!subscriptionRequest) {
|
|
59
|
+
// We just return an immediately promise if we don't recognize the event, which will quietly
|
|
60
|
+
// succeed but never call the corresponding callback (the same as the server and most event
|
|
61
|
+
// sources in the same kind of situation). This is what happens when the *client* doesn't
|
|
62
|
+
// recognize the event. Subscribe() below handles the unknown-to-server case.
|
|
63
|
+
console.warn(`Ignoring subscription for event unrecognized by MockRTC client: ${event}`);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
return this.adminClient.subscribe(subscriptionRequest, callback);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
65
69
|
}
|
|
66
70
|
exports.MockRTCClient = MockRTCClient;
|
|
67
71
|
//# sourceMappingURL=mockrtc-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockrtc-client.js","sourceRoot":"","sources":["../../src/client/mockrtc-client.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"mockrtc-client.js","sourceRoot":"","sources":["../../src/client/mockrtc-client.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAGH,6FAA6F;AAC7F,gGAAgG;AAChG,+FAA+F;AAC/F,sFAAsF;AACtF,kGAAkG;AAOlG,+DAA0D;AAC1D,iEAAoE;AAEpE,mFAA6E;AAM7E,MAAa,aAAa;IAKtB,YACY,UAAgC,EAAE;QAAlC,YAAO,GAAP,OAAO,CAA2B;QActC,sBAAiB,GAAG,CAAO,YAAqC,EAAwB,EAAE;YAC9F,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;YAEzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAC7C,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,YAAY,EAAE,WAAW,CAAC,CACtE,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;YAE5B,OAAO,IAAI,uCAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3D,CAAC,CAAA,CAAA;QAtBG,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAqB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,cAAc,GAAG,IAAI,0DAA0B,EAAE,CAAC;IAC3D,CAAC;IAED,eAAe;QACX,OAAO,IAAI,uCAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACpE,CAAC;IAED,SAAS;QACL,OAAO,IAAI,uCAAqB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC;IAcK,KAAK;;YACP,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;gBACzB,MAAM,EAAE,IAAI,CAAC,OAAO;aACvB,CAAC,CAAC;QACP,CAAC;KAAA;IAEK,IAAI;;YACN,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QAClC,CAAC;KAAA;IAEK,EAAE,CAAC,KAAmB,EAAE,QAAa;;YACvC,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAEhF,IAAI,CAAC,mBAAmB,EAAE;gBACtB,4FAA4F;gBAC5F,2FAA2F;gBAC3F,yFAAyF;gBACzF,6EAA6E;gBAC7E,OAAO,CAAC,IAAI,CAAC,mEAAmE,KAAK,EAAE,CAAC,CAAC;gBACzF,OAAO;aACV;YAED,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;QACrE,CAAC;KAAA;CACJ;AAxDD,sCAwDC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import * as PluggableAdmin from 'mockttp/dist/pluggable-admin-api/pluggable-admin.browser';
|
|
3
|
+
import { MockRTCSessionDescription } from '../mockrtc';
|
|
3
4
|
import { MockRTCPeer, MockRTCOfferParams, MockRTCExternalOfferParams, MockRTCExternalAnswerParams, MockRTCAnswerParams, MockRTCSession, OfferOptions, AnswerOptions } from "../mockrtc-peer";
|
|
4
5
|
export declare class MockRTCRemotePeer implements MockRTCPeer {
|
|
5
6
|
readonly peerId: string;
|
|
@@ -7,8 +8,8 @@ export declare class MockRTCRemotePeer implements MockRTCPeer {
|
|
|
7
8
|
constructor(peerId: string, adminClient: PluggableAdmin.AdminClient<{}>);
|
|
8
9
|
createOffer(options?: OfferOptions): Promise<MockRTCOfferParams>;
|
|
9
10
|
createExternalOffer(options?: OfferOptions): Promise<MockRTCExternalOfferParams>;
|
|
10
|
-
answerOffer(offer:
|
|
11
|
-
answerExternalOffer(offer:
|
|
11
|
+
answerOffer(offer: MockRTCSessionDescription, options?: AnswerOptions): Promise<MockRTCAnswerParams>;
|
|
12
|
+
answerExternalOffer(offer: MockRTCSessionDescription, options?: AnswerOptions): Promise<MockRTCExternalAnswerParams>;
|
|
12
13
|
getSession(sessionId: string): MockRTCSession;
|
|
13
14
|
getAllMessages(): Promise<(string | Buffer)[]>;
|
|
14
15
|
getMessagesOnChannel(channelName: string): Promise<Array<string | Buffer>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mockrtc-remote-peer.js","sourceRoot":"","sources":["../../src/client/mockrtc-remote-peer.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAEH,6CAAkC;
|
|
1
|
+
{"version":3,"file":"mockrtc-remote-peer.js","sourceRoot":"","sources":["../../src/client/mockrtc-remote-peer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import * as PluggableAdmin from 'mockttp/dist/pluggable-admin-api/pluggable-admin.browser';
|
|
3
|
+
import { MockRTCSessionDescription } from '../mockrtc';
|
|
3
4
|
export declare type Serializable = PluggableAdmin.Serialization.Serializable;
|
|
4
5
|
export declare const Serializable: typeof PluggableAdmin.Serialization.Serializable;
|
|
5
6
|
declare type ClientServerChannel = PluggableAdmin.Serialization.ClientServerChannel;
|
|
@@ -41,8 +42,8 @@ export declare class EchoStepDefinition extends Serializable implements HandlerS
|
|
|
41
42
|
}
|
|
42
43
|
export declare class PeerProxyStepDefinition extends Serializable implements HandlerStepDefinition {
|
|
43
44
|
readonly type = "peer-proxy";
|
|
44
|
-
protected getAnswer: (offer:
|
|
45
|
-
constructor(connectionTarget: RTCPeerConnection | ((offer:
|
|
45
|
+
protected getAnswer: (offer: MockRTCSessionDescription) => Promise<RTCSessionDescriptionInit>;
|
|
46
|
+
constructor(connectionTarget: RTCPeerConnection | ((offer: MockRTCSessionDescription) => Promise<RTCSessionDescriptionInit>));
|
|
46
47
|
serialize(channel: ClientServerChannel): {};
|
|
47
48
|
}
|
|
48
49
|
export declare class DynamicProxyStepDefinition extends Serializable implements HandlerStepDefinition {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-step-definitions.js","sourceRoot":"","sources":["../../src/handling/handler-step-definitions.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;AAEH,2FAA2F;
|
|
1
|
+
{"version":3,"file":"handler-step-definitions.js","sourceRoot":"","sources":["../../src/handling/handler-step-definitions.ts"],"names":[],"mappings":"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"}
|
|
@@ -164,7 +164,7 @@ class PeerProxyStep extends handler_step_definitions_1.PeerProxyStepDefinition {
|
|
|
164
164
|
// We mirror the internal peer's SDP as an offer to the given connection:
|
|
165
165
|
const externalOffer = yield externalConn.getMirroredLocalOffer(connection.getRemoteDescription().sdp);
|
|
166
166
|
externalConn.setRemoteDescription(yield this.getAnswer(externalOffer));
|
|
167
|
-
connection.proxyTrafficTo(externalConn);
|
|
167
|
+
yield connection.proxyTrafficTo(externalConn);
|
|
168
168
|
// This step keeps running indefinitely, until the connection closes
|
|
169
169
|
return new Promise((resolve) => connection.on('connection-closed', resolve));
|
|
170
170
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler-steps.js","sourceRoot":"","sources":["../../src/handling/handler-steps.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"handler-steps.js","sourceRoot":"","sources":["../../src/handling/handler-steps.ts"],"names":[],"mappings":"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"}
|
package/dist/main-browser.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { MockRTC, MockRTCOptions } from "./mockrtc";
|
|
2
2
|
import { MockRTCClientOptions } from "./client/mockrtc-client";
|
|
3
|
+
export * as HandlerStepDefinitions from "./handling/handler-step-definitions";
|
|
4
|
+
export { MockRTCAdminRequestBuilder } from "./client/mockrtc-admin-request-builder";
|
|
3
5
|
export type { MockRTC, MockRTCOptions };
|
|
4
6
|
export type { MockRTCPeer, MockRTCSession, MockRTCOfferParams, MockRTCAnswerParams, MockRTCExternalOfferParams, MockRTCExternalAnswerParams, OfferOptions, AnswerOptions } from './mockrtc-peer';
|
|
5
7
|
export { MOCKRTC_CONTROL_CHANNEL } from './webrtc/control-channel';
|
package/dist/main-browser.js
CHANGED
|
@@ -4,8 +4,12 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.getAdminServer = exports.getRemote = exports.getLocal = exports.hookAllWebRTC = exports.hookWebRTCConnection = exports.MOCKRTC_CONTROL_CHANNEL = void 0;
|
|
7
|
+
exports.getAdminServer = exports.getRemote = exports.getLocal = exports.hookAllWebRTC = exports.hookWebRTCConnection = exports.MOCKRTC_CONTROL_CHANNEL = exports.MockRTCAdminRequestBuilder = exports.HandlerStepDefinitions = void 0;
|
|
8
8
|
const mockrtc_client_1 = require("./client/mockrtc-client");
|
|
9
|
+
// Export the required structures to remotely build and send rules to the admin API:
|
|
10
|
+
exports.HandlerStepDefinitions = require("./handling/handler-step-definitions");
|
|
11
|
+
var mockrtc_admin_request_builder_1 = require("./client/mockrtc-admin-request-builder");
|
|
12
|
+
Object.defineProperty(exports, "MockRTCAdminRequestBuilder", { enumerable: true, get: function () { return mockrtc_admin_request_builder_1.MockRTCAdminRequestBuilder; } });
|
|
9
13
|
var control_channel_1 = require("./webrtc/control-channel");
|
|
10
14
|
Object.defineProperty(exports, "MOCKRTC_CONTROL_CHANNEL", { enumerable: true, get: function () { return control_channel_1.MOCKRTC_CONTROL_CHANNEL; } });
|
|
11
15
|
var webrtc_hooks_1 = require("./webrtc-hooks");
|
package/dist/main-browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main-browser.js","sourceRoot":"","sources":["../src/main-browser.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAMH,4DAA8E;
|
|
1
|
+
{"version":3,"file":"main-browser.js","sourceRoot":"","sources":["../src/main-browser.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAMH,4DAA8E;AAE9E,oFAAoF;AACpF,gFAA8E;AAC9E,wFAAoF;AAA3E,2IAAA,0BAA0B,OAAA;AAkBnC,4DAAmE;AAA1D,0HAAA,uBAAuB,OAAA;AAChC,+CAGwB;AAFpB,oHAAA,oBAAoB,OAAA;AACpB,6GAAA,aAAa,OAAA;AAGjB,SAAgB,QAAQ;IACpB,OAAO,IAAI,8BAAa,EAAE,CAAC;AAC/B,CAAC;AAFD,4BAEC;AAED,SAAgB,SAAS,CAAC,UAAgC,EAAE;IACxD,OAAO,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAFD,8BAEC;AAED,SAAgB,cAAc;IAC1B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;AACjE,CAAC;AAFD,wCAEC"}
|
package/dist/main.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { MockRTC, MockRTCOptions, MockRTCPeerBuilder } from "./mockrtc";
|
|
1
|
+
import { MockRTC, MockRTCOptions, MockRTCPeerBuilder, MockRTCEvent, MockRTCEventData, MockRTCSessionDescription, SelectedRTCCandidate, TimingEvents } from "./mockrtc";
|
|
2
2
|
import { MockRTCAdminServer } from "./server/mockrtc-admin-server";
|
|
3
3
|
export { MockRTCAdminPlugin } from "./server/mockrtc-admin-plugin";
|
|
4
4
|
import { MockRTCClientOptions } from "./client/mockrtc-client";
|
|
5
|
-
export
|
|
5
|
+
export * as HandlerStepDefinitions from "./handling/handler-step-definitions";
|
|
6
|
+
export { MockRTCAdminRequestBuilder } from "./client/mockrtc-admin-request-builder";
|
|
6
7
|
export type { HandlerStep } from "./handling/handler-steps";
|
|
7
8
|
export type { MockRTCHandlerBuilder } from "./handling/handler-builder";
|
|
8
9
|
export type { MockRTCServerPeer } from "./server/mockrtc-server-peer";
|
|
@@ -12,8 +13,8 @@ export type { MockRTCConnection } from "./webrtc/mockrtc-connection";
|
|
|
12
13
|
export type { DataChannelStream } from "./webrtc/datachannel-stream";
|
|
13
14
|
export type { MediaTrackStream } from "./webrtc/mediatrack-stream";
|
|
14
15
|
export type { PluggableAdmin } from 'mockttp';
|
|
15
|
-
export type { MockRTC, MockRTCOptions, MockRTCClientOptions, MockRTCPeerBuilder, MockRTCAdminServer };
|
|
16
|
-
export type { MockRTCPeer, MockRTCPeerOptions, MockRTCSession, MockRTCOfferParams, MockRTCAnswerParams, MockRTCExternalOfferParams, MockRTCExternalAnswerParams, OfferOptions, AnswerOptions } from './mockrtc-peer';
|
|
16
|
+
export type { MockRTC, MockRTCOptions, MockRTCClientOptions, MockRTCPeerBuilder, MockRTCAdminServer, MockRTCEvent, MockRTCEventData, MockRTCSessionDescription, SelectedRTCCandidate, TimingEvents };
|
|
17
|
+
export type { MockRTCPeer, MockRTCPeerOptions, MockRTCSession, MockRTCOfferParams, MockRTCAnswerParams, MockRTCExternalOfferParams, MockRTCExternalAnswerParams, OfferOptions, AnswerOptions, ConnectionMetadata } from './mockrtc-peer';
|
|
17
18
|
export { MOCKRTC_CONTROL_CHANNEL, type MockRTCControlMessage } from './webrtc/control-channel';
|
|
18
19
|
export { hookWebRTCConnection, hookAllWebRTC } from "./webrtc-hooks";
|
|
19
20
|
/**
|
package/dist/main.js
CHANGED
|
@@ -4,12 +4,16 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.getAdminServer = exports.getRemote = exports.getLocal = exports.hookAllWebRTC = exports.hookWebRTCConnection = exports.MOCKRTC_CONTROL_CHANNEL = exports.MockRTCAdminPlugin = void 0;
|
|
7
|
+
exports.getAdminServer = exports.getRemote = exports.getLocal = exports.hookAllWebRTC = exports.hookWebRTCConnection = exports.MOCKRTC_CONTROL_CHANNEL = exports.MockRTCAdminRequestBuilder = exports.HandlerStepDefinitions = exports.MockRTCAdminPlugin = void 0;
|
|
8
8
|
const mockrtc_server_1 = require("./server/mockrtc-server");
|
|
9
9
|
const mockrtc_admin_server_1 = require("./server/mockrtc-admin-server");
|
|
10
10
|
var mockrtc_admin_plugin_1 = require("./server/mockrtc-admin-plugin");
|
|
11
11
|
Object.defineProperty(exports, "MockRTCAdminPlugin", { enumerable: true, get: function () { return mockrtc_admin_plugin_1.MockRTCAdminPlugin; } });
|
|
12
12
|
const mockrtc_client_1 = require("./client/mockrtc-client");
|
|
13
|
+
// Export the required structures to remotely build and send rules to the admin API:
|
|
14
|
+
exports.HandlerStepDefinitions = require("./handling/handler-step-definitions");
|
|
15
|
+
var mockrtc_admin_request_builder_1 = require("./client/mockrtc-admin-request-builder");
|
|
16
|
+
Object.defineProperty(exports, "MockRTCAdminRequestBuilder", { enumerable: true, get: function () { return mockrtc_admin_request_builder_1.MockRTCAdminRequestBuilder; } });
|
|
13
17
|
var control_channel_1 = require("./webrtc/control-channel");
|
|
14
18
|
Object.defineProperty(exports, "MOCKRTC_CONTROL_CHANNEL", { enumerable: true, get: function () { return control_channel_1.MOCKRTC_CONTROL_CHANNEL; } });
|
|
15
19
|
var webrtc_hooks_1 = require("./webrtc-hooks");
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAaH,4DAAwD;AACxD,wEAAmE;AACnE,sEAAmE;AAA1D,0HAAA,kBAAkB,OAAA;AAE3B,4DAA8E;AAE9E,oFAAoF;AACpF,gFAA8E;AAC9E,wFAAoF;AAA3E,2IAAA,0BAA0B,OAAA;AA0CnC,4DAGkC;AAF9B,0HAAA,uBAAuB,OAAA;AAG3B,+CAGwB;AAFpB,oHAAA,oBAAoB,OAAA;AACpB,6GAAA,aAAa,OAAA;AAGjB;;;;;;;;;;;;;GAaG;AACH,SAAgB,QAAQ;IACpB,OAAO,IAAI,8BAAa,EAAE,CAAC;AAC/B,CAAC;AAFD,4BAEC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,UAAgC,EAAE;IACxD,OAAO,IAAI,8BAAa,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAFD,8BAEC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,cAAc;IAC1B,OAAO,IAAI,yCAAkB,EAAE,CAAC;AACpC,CAAC;AAFD,wCAEC"}
|
package/dist/mockrtc-peer.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
import { MockRTCSessionDescription } from './mockrtc';
|
|
2
3
|
export interface MockRTCPeerOptions {
|
|
4
|
+
debug?: boolean;
|
|
3
5
|
recordMessages?: boolean;
|
|
4
6
|
}
|
|
5
7
|
/**
|
|
@@ -91,7 +93,7 @@ export interface MockRTCSession {
|
|
|
91
93
|
/**
|
|
92
94
|
* Create a new offer for this session, to renegotiate the existing connection.
|
|
93
95
|
*/
|
|
94
|
-
createOffer(options?: OfferOptions): Promise<
|
|
96
|
+
createOffer(options?: OfferOptions): Promise<MockRTCSessionDescription>;
|
|
95
97
|
/**
|
|
96
98
|
* Provide an answer to complete an offer for this session, to renegotiate the existing connection.
|
|
97
99
|
*/
|
|
@@ -99,15 +101,15 @@ export interface MockRTCSession {
|
|
|
99
101
|
/**
|
|
100
102
|
* Get an answer given an offer from elsewhere, to renegotiate the existing connection.
|
|
101
103
|
*/
|
|
102
|
-
answerOffer(offer: RTCSessionDescriptionInit, options?: AnswerOptions): Promise<
|
|
104
|
+
answerOffer(offer: RTCSessionDescriptionInit, options?: AnswerOptions): Promise<MockRTCSessionDescription>;
|
|
103
105
|
}
|
|
104
106
|
export interface MockRTCOfferParams {
|
|
105
|
-
offer:
|
|
107
|
+
offer: MockRTCSessionDescription;
|
|
106
108
|
setAnswer: (answer: RTCSessionDescriptionInit) => Promise<void>;
|
|
107
109
|
session: MockRTCSession;
|
|
108
110
|
}
|
|
109
111
|
export interface MockRTCAnswerParams {
|
|
110
|
-
answer:
|
|
112
|
+
answer: MockRTCSessionDescription;
|
|
111
113
|
session: MockRTCSession;
|
|
112
114
|
}
|
|
113
115
|
export interface OfferOptions {
|
|
@@ -126,6 +128,15 @@ export interface OfferOptions {
|
|
|
126
128
|
* This option has no effect if mirrorSDP is not set.
|
|
127
129
|
*/
|
|
128
130
|
addDataStream?: boolean;
|
|
131
|
+
/**
|
|
132
|
+
* Extra metadata to associate with the connection. This will be exposed on
|
|
133
|
+
* events like peer-connected, and can be used to add context to connections.
|
|
134
|
+
*
|
|
135
|
+
* If this value is provided during renegotiation, it is merged key-wise with
|
|
136
|
+
* any existing metadata value for the connection (i.e. existing metadata
|
|
137
|
+
* values will not change, unless a new value for the same key is provided).
|
|
138
|
+
*/
|
|
139
|
+
connectionMetadata?: ConnectionMetadata;
|
|
129
140
|
}
|
|
130
141
|
export interface AnswerOptions {
|
|
131
142
|
/**
|
|
@@ -133,15 +144,35 @@ export interface AnswerOptions {
|
|
|
133
144
|
* create an equivalent answer, including the same media params.
|
|
134
145
|
*/
|
|
135
146
|
mirrorSDP?: string;
|
|
147
|
+
/**
|
|
148
|
+
* Extra metadata to associate with the connection. This will be exposed on
|
|
149
|
+
* events like peer-connected, and can be used to add context to connections.
|
|
150
|
+
*
|
|
151
|
+
* If this value is provided during renegotiation, it is merged key-wise with
|
|
152
|
+
* any existing metadata value for the connection (i.e. existing metadata
|
|
153
|
+
* values will not change, unless a new value for the same key is provided).
|
|
154
|
+
*/
|
|
155
|
+
connectionMetadata?: ConnectionMetadata;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Extra metadata to associate with the connection. This will be exposed on
|
|
159
|
+
* events like peer-connected, and can be used to add context to connections.
|
|
160
|
+
*
|
|
161
|
+
* The only defined value is 'userAgent' which must be a client user agent
|
|
162
|
+
* string (in a browser, the navigator.userAgent value) if defined.
|
|
163
|
+
*/
|
|
164
|
+
export interface ConnectionMetadata {
|
|
165
|
+
userAgent?: string;
|
|
166
|
+
[k: string]: any;
|
|
136
167
|
}
|
|
137
168
|
export interface MockRTCExternalOfferParams {
|
|
138
169
|
id: string;
|
|
139
|
-
offer:
|
|
170
|
+
offer: MockRTCSessionDescription;
|
|
140
171
|
setAnswer: (answer: RTCSessionDescriptionInit) => Promise<void>;
|
|
141
172
|
session: MockRTCSession;
|
|
142
173
|
}
|
|
143
174
|
export interface MockRTCExternalAnswerParams {
|
|
144
175
|
id: string;
|
|
145
|
-
answer:
|
|
176
|
+
answer: MockRTCSessionDescription;
|
|
146
177
|
session: MockRTCSession;
|
|
147
178
|
}
|