quickvo-sdk-js 1.3.0 → 1.3.1

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.
@@ -1,20 +1,70 @@
1
+ import { K_mediaType } from '../enums/mediaType';
1
2
  export declare class P2P {
2
- peerIns: RTCPeerConnection;
3
- constructor();
3
+ #private;
4
+ phoneyStreams: Map<K_mediaType, MediaStream>;
5
+ recv_peer_ins: RTCPeerConnection;
6
+ recv_offer: RTCSessionDescriptionInit;
7
+ recv_icecandidates: RTCIceCandidate[];
8
+ recv_answer: RTCSessionDescriptionInit;
9
+ transceiverMap: Map<"microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio", RTCRtpTransceiver>;
10
+ send_peer_ins: RTCPeerConnection;
11
+ send_offer: RTCSessionDescriptionInit;
12
+ send_icecandidates: RTCIceCandidate[];
13
+ send_answer: RTCSessionDescriptionInit;
14
+ tracks: MediaStreamTrack[];
15
+ constructor(phoneyStreams: Map<K_mediaType, MediaStream>);
4
16
  /**
5
- * initOffer
17
+ * sendIceConnected
6
18
  */
7
- initOffer: () => Promise<unknown>;
19
+ sendIceConnected: () => Promise<unknown>;
8
20
  /**
9
- * initAnswer
21
+ * recvIceConnected
10
22
  */
11
- initAnswer: (offer: RTCSessionDescriptionInit, offer_candidates: RTCIceCandidateInit[]) => Promise<unknown>;
23
+ recvIceConnected: () => Promise<unknown>;
24
+ getOffer: () => RTCSessionDescriptionInit;
25
+ getIcecandidates: () => RTCIceCandidate[];
26
+ /**
27
+ * createOffer
28
+ */
29
+ createOffer: () => Promise<RTCSessionDescriptionInit>;
30
+ /**
31
+ * initSender
32
+ */
33
+ initSenderPc: () => Promise<void>;
34
+ /**
35
+ * setOffer
36
+ */
37
+ setOffer: (offer: RTCSessionDescriptionInit) => Promise<void>;
38
+ /**
39
+ * createAnswer
40
+ */
41
+ createAnswer: (mediaTypes?: K_mediaType[]) => Promise<RTCSessionDescriptionInit>;
42
+ /**
43
+ * addCandidates
44
+ */
45
+ addCandidates: (remote_candidates: RTCIceCandidate[]) => Promise<unknown>;
12
46
  /**
13
47
  * setAnswer
14
48
  */
15
49
  setAnswer: (answer: RTCSessionDescriptionInit, answer_candidates: RTCIceCandidateInit[]) => Promise<unknown>;
50
+ getPhoneyStreams: (mediaType: K_mediaType) => MediaStream;
51
+ /**
52
+ * addSenders
53
+ */
54
+ addSenders: (mediaTypes?: K_mediaType[]) => Promise<("microphoneCamera_audio" | "microphoneCamera_video" | "screenSharing_video" | "screenSharing_audio")[]>;
55
+ /**
56
+ * getSenderTracks
57
+ */
58
+ getSenderTracks: (mediaTypes?: K_mediaType[]) => Promise<{
59
+ type: number;
60
+ enabled: boolean;
61
+ trackName: string;
62
+ location: string;
63
+ mid: string | null;
64
+ key: string;
65
+ }[]>;
16
66
  /**
17
- * close
67
+ * getTrack
18
68
  */
19
- close: () => void;
69
+ getTrack: (mediaType: K_mediaType) => MediaStreamTrack | undefined;
20
70
  }
@@ -126,4 +126,26 @@ export declare class RoomCalls extends RoomPeer {
126
126
  * setSession
127
127
  */
128
128
  setSession: () => void;
129
+ p2p: {
130
+ /**
131
+ * open
132
+ */
133
+ open: (remoteUserId: string, mediaTypes?: K_mediaType[]) => Promise<unknown>;
134
+ /**
135
+ * replaceSenderStreams
136
+ */
137
+ replaceSenderStreams: (remoteUserIds: string[], mediaTypes: K_mediaType[] | undefined, isReal: Boolean) => Promise<void>;
138
+ /**
139
+ * reportNetwork
140
+ */
141
+ reportNetwork: () => Promise<unknown>;
142
+ /**
143
+ * reportP2PConnect
144
+ */
145
+ reportP2PConnect: (userId: string, code: 0 | 1 | 2, reason?: string) => Promise<import('..').SendMessageRevolve<any>>;
146
+ /**
147
+ * close
148
+ */
149
+ close: (_userId: string) => Promise<void>;
150
+ };
129
151
  }
@@ -1,9 +1,10 @@
1
1
  import { K_mediaType } from '../enums/mediaType';
2
2
  import { QuickOptions, RoomUser, UserTrack } from '../types';
3
3
  import { RoomMedias } from './RoomMedias';
4
+ import { P2P } from './P2P';
4
5
  export declare class RoomUsers extends RoomMedias {
5
6
  constructor(options: QuickOptions);
6
- createP2P: () => Promise<void>;
7
+ getP2PIns: (userId: string) => Promise<P2P | undefined>;
7
8
  /**
8
9
  * getMaxVolumeUser
9
10
  */
@@ -147,6 +148,10 @@ export declare class RoomUsers extends RoomMedias {
147
148
  * updateUserPermissions
148
149
  */
149
150
  updateUserPermissions: (userId: string, permissions: number | undefined) => Promise<void>;
151
+ /**
152
+ * updateUserUseP2P
153
+ */
154
+ updateUserUseP2P: (userId: string, useP2P: boolean) => Promise<void>;
150
155
  /**
151
156
  * updateUserBase
152
157
  */
package/dist/types.d.ts CHANGED
@@ -248,6 +248,10 @@ export interface RoomUser {
248
248
  updateStreams: {
249
249
  [key in K_mediaType]: boolean;
250
250
  };
251
+ /**
252
+ * 是否使用P2P
253
+ */
254
+ useP2P: boolean;
251
255
  /**
252
256
  * 数据更新时间
253
257
  */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "quickvo-sdk-js",
3
3
  "description": "提供快捷接入单对单、单对多、群体会议、舞台会议等音视频功能。",
4
- "version": "1.3.0",
4
+ "version": "1.3.1",
5
5
  "type": "module",
6
6
  "files": [
7
7
  "dist"
@@ -22,7 +22,8 @@
22
22
  "pako": "^2.1.0",
23
23
  "pr-async-queue": "^0.1.3",
24
24
  "pr-audio-stream": "^0.1.1",
25
- "pr-tools": "^1.5.7",
25
+ "pr-nat-type": "^0.1.2",
26
+ "pr-tools": "^1.5.9",
26
27
  "pr-ws": "^0.3.2",
27
28
  "sdp-transform": "^2.15.0",
28
29
  "webm-duration-fix": "^1.0.4"