@rongcloud/plugin-call 5.0.5 → 5.0.9
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/dist/RCCallClient.d.ts +100 -0
- package/dist/RCCallSession.d.ts +232 -0
- package/dist/enums.d.ts +14 -0
- package/dist/eventEmitter.d.ts +4 -0
- package/dist/helper.d.ts +2 -0
- package/dist/index.d.ts +93 -10
- package/dist/index.esm.js +2 -2
- package/dist/index.js +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/interface.d.ts +294 -0
- package/dist/logger.d.ts +4 -0
- package/dist/timer.d.ts +12 -0
- package/dist/utils.d.ts +9 -0
- package/dist/validation.d.ts +14 -0
- package/package.json +5 -7
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { PluginContext, IRuntime, IRTCJoinedInfo } from '@rongcloud/engine';
|
|
2
|
+
import { RCCallErrorCode, IOfflineRecord } from '@rongcloud/plugin-call-engine';
|
|
3
|
+
import { IRCCallInGroupParams, IRCCallInitOptions, IRCCallParams } from './interface';
|
|
4
|
+
import { RCCallSession } from './RCCallSession';
|
|
5
|
+
export default class RCCallClient {
|
|
6
|
+
private _context;
|
|
7
|
+
private readonly _runtime;
|
|
8
|
+
/**
|
|
9
|
+
* rtc实例
|
|
10
|
+
*/
|
|
11
|
+
private readonly _rtcClient;
|
|
12
|
+
/**
|
|
13
|
+
* callEngine层实例
|
|
14
|
+
*/
|
|
15
|
+
private readonly _callEngine;
|
|
16
|
+
/**
|
|
17
|
+
* 其它参数
|
|
18
|
+
*/
|
|
19
|
+
private _options;
|
|
20
|
+
/**
|
|
21
|
+
* session列表
|
|
22
|
+
*/
|
|
23
|
+
private _sessionList;
|
|
24
|
+
constructor(_context: PluginContext, _runtime: IRuntime, _options: IRCCallInitOptions);
|
|
25
|
+
/**
|
|
26
|
+
* 监听onInvite
|
|
27
|
+
*/
|
|
28
|
+
private _onInvite;
|
|
29
|
+
/**
|
|
30
|
+
* 监听离线消息报告
|
|
31
|
+
* @param record
|
|
32
|
+
*/
|
|
33
|
+
_onOfflineRecord(record: IOfflineRecord): void;
|
|
34
|
+
/**
|
|
35
|
+
* 注册用户信息。注册后,在发起邀请或挂断等操作时,会将该信息一并发送给对端
|
|
36
|
+
* @param info.name 用户名称
|
|
37
|
+
* @param info.portraitUri 用户头像信息
|
|
38
|
+
* @param info.extra 预留拓展字段
|
|
39
|
+
*/
|
|
40
|
+
registerUserInfo(info?: {
|
|
41
|
+
name?: string;
|
|
42
|
+
portraitUri?: string;
|
|
43
|
+
extra?: string;
|
|
44
|
+
}): void;
|
|
45
|
+
/**
|
|
46
|
+
* 单呼,发送invite消息,回调回来接收stateMachine, 建session
|
|
47
|
+
* @param params.targetId 被呼叫一方的用户 id 必填
|
|
48
|
+
* @param params.mediaType 音频呼叫 or 音视频呼叫 必填
|
|
49
|
+
* @param params.listener (session上的监听) 必填
|
|
50
|
+
* @param params.constraints 获取音频或音视频资源时的参数 可选
|
|
51
|
+
* @param params.channelId 组织 Id 可选
|
|
52
|
+
* @param params.extra 消息扩展信息
|
|
53
|
+
* @param params.pushTitle 通知的标题
|
|
54
|
+
* @param params.pushContent 通知的内容
|
|
55
|
+
* @param params.bitrate 需要设置的码率参数
|
|
56
|
+
*
|
|
57
|
+
*/
|
|
58
|
+
call({ targetId, mediaType, listener, constraints, channelId, extra, pushTitle, pushContent, bitrate }: IRCCallParams): Promise<{
|
|
59
|
+
code: RCCallErrorCode;
|
|
60
|
+
session?: RCCallSession;
|
|
61
|
+
}>;
|
|
62
|
+
/**
|
|
63
|
+
* 发起群组呼叫
|
|
64
|
+
* @param params.targetId 群组 Id 必填
|
|
65
|
+
* @param params.userIds 被呼叫的群内成员 Id 必填
|
|
66
|
+
* @param params.mediaType 音频呼叫 or 音视频呼叫 必填
|
|
67
|
+
* @param params.listener (session上的监听) 必填
|
|
68
|
+
* @param params.constraints 获取音频或音视频资源时的参数 可选
|
|
69
|
+
* @param params.channelId 组织 Id 可选
|
|
70
|
+
* @param params.extra 消息扩展信息 可选
|
|
71
|
+
* @param params.pushTitle 通知的标题
|
|
72
|
+
* @param params.pushContent 通知的内容
|
|
73
|
+
* @param params.bitrate 需要设置的码率参数
|
|
74
|
+
*/
|
|
75
|
+
callInGroup({ targetId, userIds, mediaType, listener, constraints, channelId, extra, pushTitle, pushContent, bitrate }: IRCCallInGroupParams): Promise<{
|
|
76
|
+
code: RCCallErrorCode;
|
|
77
|
+
session?: RCCallSession;
|
|
78
|
+
}>;
|
|
79
|
+
/**
|
|
80
|
+
* 调RTC API 获得本地流
|
|
81
|
+
*/
|
|
82
|
+
private _getLocalTrackCore;
|
|
83
|
+
private _getLocalTrack;
|
|
84
|
+
/**
|
|
85
|
+
* 从sessionList删除某个session
|
|
86
|
+
*/
|
|
87
|
+
private _removeSession;
|
|
88
|
+
/**
|
|
89
|
+
* 获取己方其他端加入通话(已加入 RTC 房间)的用户信息
|
|
90
|
+
*/
|
|
91
|
+
getJoinedRoomInfo(): Promise<{
|
|
92
|
+
code: RCCallErrorCode;
|
|
93
|
+
data?: IRTCJoinedInfo[];
|
|
94
|
+
}>;
|
|
95
|
+
/**
|
|
96
|
+
* 销毁本地状态机(应对本地状态机异常无法重新建立通话)
|
|
97
|
+
*/
|
|
98
|
+
destroyStateMachine(): Promise<void>;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=RCCallClient.d.ts.map
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { ConversationType } from '@rongcloud/engine';
|
|
2
|
+
import { IUserData, IInviteOptions, RCCallErrorCode, RCCallMediaType, RCCallSessionState, RCCallStateMachine, RCCallUserState } from '@rongcloud/plugin-call-engine';
|
|
3
|
+
import { RCRTCClient, IMicphoneAudioProfile } from '@rongcloud/plugin-rtc';
|
|
4
|
+
import { IMediaStreamConstraints, IRCCallSessionOptions, ISessionListener } from './interface';
|
|
5
|
+
export declare class RCCallSession {
|
|
6
|
+
/**
|
|
7
|
+
* 状态机实例
|
|
8
|
+
*/
|
|
9
|
+
private _stateMachine;
|
|
10
|
+
/**
|
|
11
|
+
* rtc实例
|
|
12
|
+
*/
|
|
13
|
+
private readonly _rtcClient;
|
|
14
|
+
/**
|
|
15
|
+
* session的其它选项
|
|
16
|
+
*/
|
|
17
|
+
private _options;
|
|
18
|
+
/**
|
|
19
|
+
* RTC房间实例
|
|
20
|
+
*/
|
|
21
|
+
private _room;
|
|
22
|
+
/**
|
|
23
|
+
* 用户传进来的 对session的监听 (要在RCCallClient的_onInvite里判断,要求执行完onSession必须注册session的监听,所以这里是public)
|
|
24
|
+
*/
|
|
25
|
+
_listener: ISessionListener | null;
|
|
26
|
+
/**
|
|
27
|
+
* RTC订阅、发布重试的次数
|
|
28
|
+
*/
|
|
29
|
+
private readonly _RETRYCOUNT;
|
|
30
|
+
/**
|
|
31
|
+
* 加入房间定时器
|
|
32
|
+
*/
|
|
33
|
+
private joinRoomTimer;
|
|
34
|
+
constructor(
|
|
35
|
+
/**
|
|
36
|
+
* 状态机实例
|
|
37
|
+
*/
|
|
38
|
+
_stateMachine: RCCallStateMachine,
|
|
39
|
+
/**
|
|
40
|
+
* rtc实例
|
|
41
|
+
*/
|
|
42
|
+
_rtcClient: RCRTCClient,
|
|
43
|
+
/**
|
|
44
|
+
* session的其它选项
|
|
45
|
+
*/
|
|
46
|
+
_options?: IRCCallSessionOptions);
|
|
47
|
+
/**
|
|
48
|
+
* 加入房间
|
|
49
|
+
*/
|
|
50
|
+
private _joinRoom;
|
|
51
|
+
/**
|
|
52
|
+
* (初始化房间的时候) 订阅远程的流,把远程的流抛给用户
|
|
53
|
+
*/
|
|
54
|
+
private _subscribeInRoomRemoteTrack;
|
|
55
|
+
/**
|
|
56
|
+
* 可以重试的订阅
|
|
57
|
+
* @param params.tracks tracks
|
|
58
|
+
* @param params.isAllowSubscribeRetry 是否允许重试
|
|
59
|
+
* @param params.count 允许重试的次数
|
|
60
|
+
*/
|
|
61
|
+
private _subscribeRetry;
|
|
62
|
+
/**
|
|
63
|
+
* 发布本地资源的逻辑
|
|
64
|
+
*
|
|
65
|
+
*/
|
|
66
|
+
private _publish;
|
|
67
|
+
/**
|
|
68
|
+
* 可以重试的发布
|
|
69
|
+
* @param params.tracks tracks
|
|
70
|
+
* @param params.isAllowPublishRetry 是否允许重试
|
|
71
|
+
* @param params.count 允许重试的次数
|
|
72
|
+
*/
|
|
73
|
+
private _publishRetry;
|
|
74
|
+
/**
|
|
75
|
+
* 退出房间
|
|
76
|
+
*/
|
|
77
|
+
private _leaveRoom;
|
|
78
|
+
/**
|
|
79
|
+
* 出现异常后要处理的逻辑,
|
|
80
|
+
* @param endReason 原因
|
|
81
|
+
*/
|
|
82
|
+
private _exceptionClose;
|
|
83
|
+
/**
|
|
84
|
+
* 用户调用的,注册session上的监听
|
|
85
|
+
*/
|
|
86
|
+
registerSessionListener(listener: ISessionListener): void;
|
|
87
|
+
/**
|
|
88
|
+
* 调RTC API 获得本地流
|
|
89
|
+
*/
|
|
90
|
+
private _getLocalTrackCore;
|
|
91
|
+
private _getLocalTrack;
|
|
92
|
+
/**
|
|
93
|
+
* 通话中更换音频设备
|
|
94
|
+
*/
|
|
95
|
+
changeAudioDevice(audioConstraints?: IMicphoneAudioProfile): Promise<{
|
|
96
|
+
code: RCCallErrorCode;
|
|
97
|
+
}>;
|
|
98
|
+
/**
|
|
99
|
+
* 群呼叫中继续邀请
|
|
100
|
+
* @param userIds 被邀请用户 ID 列表
|
|
101
|
+
* @param options.extra 消息的扩展信息
|
|
102
|
+
* @param options.pushTitle 通知的标题
|
|
103
|
+
* @param options.pushContent 通知内容
|
|
104
|
+
*/
|
|
105
|
+
invite(userIds: string[], options?: IInviteOptions): Promise<{
|
|
106
|
+
code: RCCallErrorCode;
|
|
107
|
+
}>;
|
|
108
|
+
/**
|
|
109
|
+
* 同意接听
|
|
110
|
+
*/
|
|
111
|
+
accept(constraints?: IMediaStreamConstraints): Promise<{
|
|
112
|
+
code: RCCallErrorCode;
|
|
113
|
+
}>;
|
|
114
|
+
/**
|
|
115
|
+
* 挂断
|
|
116
|
+
*/
|
|
117
|
+
hungup(): Promise<{
|
|
118
|
+
code: RCCallErrorCode;
|
|
119
|
+
}>;
|
|
120
|
+
/**
|
|
121
|
+
* 通话媒体变更
|
|
122
|
+
* @param mediaType RCCallMediaType.AUDIO 改为音频通话 | RCCallMediaType.AUDIO_VIDEO 改为音视频通话
|
|
123
|
+
*/
|
|
124
|
+
_changeMediaType(mediaType: RCCallMediaType): Promise<{
|
|
125
|
+
code: RCCallErrorCode;
|
|
126
|
+
}>;
|
|
127
|
+
/**
|
|
128
|
+
* 获得本地视频
|
|
129
|
+
*/
|
|
130
|
+
private _getLocalVideoTracks;
|
|
131
|
+
/**
|
|
132
|
+
* 获得本地音频
|
|
133
|
+
*/
|
|
134
|
+
private _getLocalAudioTracks;
|
|
135
|
+
/**
|
|
136
|
+
* 把通话的MediaType升级到音视频
|
|
137
|
+
*/
|
|
138
|
+
private _setMediaTypeToAudioAndVideo;
|
|
139
|
+
/**
|
|
140
|
+
* 把通话的MediaType降级到音频
|
|
141
|
+
* @param isSendMesssage 是否需要发消息, 默认发消息
|
|
142
|
+
*/
|
|
143
|
+
private _setMediaTypeToAudio;
|
|
144
|
+
/**
|
|
145
|
+
* 通话降级,目前需求只做通话降级,音视频可以降级为音频,音频不能升到音视频, 发消息成功才算降级成功
|
|
146
|
+
*
|
|
147
|
+
*/
|
|
148
|
+
descendAbility(): Promise<{
|
|
149
|
+
code: RCCallErrorCode;
|
|
150
|
+
}>;
|
|
151
|
+
/**
|
|
152
|
+
* 禁用视频track
|
|
153
|
+
*/
|
|
154
|
+
disableVideoTrack(): Promise<{
|
|
155
|
+
code: RCCallErrorCode;
|
|
156
|
+
}>;
|
|
157
|
+
/**
|
|
158
|
+
* 启用视频track
|
|
159
|
+
*/
|
|
160
|
+
enableVideoTrack(): Promise<{
|
|
161
|
+
code: RCCallErrorCode;
|
|
162
|
+
}>;
|
|
163
|
+
/**
|
|
164
|
+
* 禁用音频track
|
|
165
|
+
*/
|
|
166
|
+
disableAudioTrack(): Promise<void>;
|
|
167
|
+
/**
|
|
168
|
+
* 启用音频track
|
|
169
|
+
*/
|
|
170
|
+
enableAudioTrack(): Promise<void>;
|
|
171
|
+
/**
|
|
172
|
+
* 销毁本地流
|
|
173
|
+
*/
|
|
174
|
+
private _destroyTracks;
|
|
175
|
+
/**
|
|
176
|
+
* 向外抛出本地流
|
|
177
|
+
*/
|
|
178
|
+
private _notifyTrackReady;
|
|
179
|
+
/**
|
|
180
|
+
* 房间上注册事件
|
|
181
|
+
*/
|
|
182
|
+
private _registerRoomEventListener;
|
|
183
|
+
/**
|
|
184
|
+
* 注册房间质量数据监听器
|
|
185
|
+
*/
|
|
186
|
+
private _registerReportListener;
|
|
187
|
+
/**
|
|
188
|
+
* 通话唯一标识
|
|
189
|
+
*/
|
|
190
|
+
getSessionId(): string;
|
|
191
|
+
/**
|
|
192
|
+
* 获取房间当前会话 Id,当房间内已无成员时房间会回收,重新加入时 sessionId 将更新,(用户录制资源用的)
|
|
193
|
+
*/
|
|
194
|
+
getRTCSessionId(): string | null;
|
|
195
|
+
/**
|
|
196
|
+
* 目标 ID,单呼对方人员 Id, 群呼群组 Id
|
|
197
|
+
*/
|
|
198
|
+
getTargetId(): string;
|
|
199
|
+
/**
|
|
200
|
+
* 获取会话类型
|
|
201
|
+
*/
|
|
202
|
+
getConversationType(): ConversationType;
|
|
203
|
+
/**
|
|
204
|
+
* 组织 ID
|
|
205
|
+
*/
|
|
206
|
+
getChannelId(): string;
|
|
207
|
+
/**
|
|
208
|
+
* 房间人员列表,不包含本端信息
|
|
209
|
+
*/
|
|
210
|
+
getRemoteUsers(): IUserData[];
|
|
211
|
+
/**
|
|
212
|
+
* 房间人员列表,不包含本端信息
|
|
213
|
+
*/
|
|
214
|
+
getUsers(): IUserData[];
|
|
215
|
+
/**
|
|
216
|
+
* 获取人员状态
|
|
217
|
+
*/
|
|
218
|
+
getUserState(userId: string): RCCallUserState;
|
|
219
|
+
/**
|
|
220
|
+
* 获取session状态
|
|
221
|
+
*/
|
|
222
|
+
getState(): RCCallSessionState;
|
|
223
|
+
/**
|
|
224
|
+
* 获得会话发起者id
|
|
225
|
+
*/
|
|
226
|
+
getCallerId(): string;
|
|
227
|
+
/**
|
|
228
|
+
* 获得mediaType
|
|
229
|
+
*/
|
|
230
|
+
getMediaType(): RCCallMediaType;
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=RCCallSession.d.ts.map
|
package/dist/enums.d.ts
ADDED
package/dist/helper.d.ts
ADDED
package/dist/index.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* RCCall - v5.0.
|
|
3
|
-
* CommitId -
|
|
4
|
-
*
|
|
2
|
+
* RCCall - v5.0.9
|
|
3
|
+
* CommitId - f294f72dac7c00501b662e7a3beeaafe9ee5def6
|
|
4
|
+
* Mon Aug 08 2022 15:56:31 GMT+0800 (China Standard Time)
|
|
5
5
|
* ©2020 RongCloud, Inc. All rights reserved.
|
|
6
6
|
*/
|
|
7
7
|
import { ConversationType, RTCJoinType, LogLevel, PluginContext, IRuntime, IRTCJoinedInfo, IPluginGenerator } from '@rongcloud/engine';
|
|
8
|
-
import { RCCallStateMachine, RCCallErrorCode, RCCallMediaType, IUserData, RCCallUserState, RCCallSessionState, IEndSummary, IOfflineRecord, RCCallLanguage, RCCallEndReason, IInvitedUsers } from '@rongcloud/plugin-call-engine';
|
|
8
|
+
import { RCCallStateMachine, RCCallErrorCode, IInviteOptions, RCCallMediaType, IUserData, RCCallUserState, RCCallSessionState, IEndSummary, IOfflineRecord, RCCallLanguage, RCCallEndReason, IInvitedUsers } from '@rongcloud/plugin-call-engine';
|
|
9
9
|
export { IEndSummary, IInvitedUsers, IOfflineRecord, ISenderInfo, RCCallEndReason, RCCallErrorCode, RCCallLanguage, RCCallMediaType, RCCallSessionState, RCCallUserState } from '@rongcloud/plugin-call-engine';
|
|
10
10
|
import { RCRTCClient, IMicphoneAudioProfile, RCTrack, RCRTCCode, IRCRTCStateReport, RCRTCPingResult, RCLocalTrack, ICameraVideoProfile } from '@rongcloud/plugin-rtc';
|
|
11
|
+
export { IRCRTCStateReport } from '@rongcloud/plugin-rtc';
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* 产生session的场景
|
|
@@ -48,6 +49,10 @@ declare class RCCallSession {
|
|
|
48
49
|
* RTC订阅、发布重试的次数
|
|
49
50
|
*/
|
|
50
51
|
private readonly _RETRYCOUNT;
|
|
52
|
+
/**
|
|
53
|
+
* 加入房间定时器
|
|
54
|
+
*/
|
|
55
|
+
private joinRoomTimer;
|
|
51
56
|
constructor(
|
|
52
57
|
/**
|
|
53
58
|
* 状态机实例
|
|
@@ -115,8 +120,11 @@ declare class RCCallSession {
|
|
|
115
120
|
/**
|
|
116
121
|
* 群呼叫中继续邀请
|
|
117
122
|
* @param userIds 被邀请用户 ID 列表
|
|
123
|
+
* @param options.extra 消息的扩展信息
|
|
124
|
+
* @param options.pushTitle 通知的标题
|
|
125
|
+
* @param options.pushContent 通知内容
|
|
118
126
|
*/
|
|
119
|
-
invite(userIds: string[]): Promise<{
|
|
127
|
+
invite(userIds: string[], options?: IInviteOptions): Promise<{
|
|
120
128
|
code: RCCallErrorCode;
|
|
121
129
|
}>;
|
|
122
130
|
/**
|
|
@@ -205,7 +213,7 @@ declare class RCCallSession {
|
|
|
205
213
|
/**
|
|
206
214
|
* 获取房间当前会话 Id,当房间内已无成员时房间会回收,重新加入时 sessionId 将更新,(用户录制资源用的)
|
|
207
215
|
*/
|
|
208
|
-
getRTCSessionId(): string;
|
|
216
|
+
getRTCSessionId(): string | null;
|
|
209
217
|
/**
|
|
210
218
|
* 目标 ID,单呼对方人员 Id, 群呼群组 Id
|
|
211
219
|
*/
|
|
@@ -222,6 +230,10 @@ declare class RCCallSession {
|
|
|
222
230
|
* 房间人员列表,不包含本端信息
|
|
223
231
|
*/
|
|
224
232
|
getRemoteUsers(): IUserData[];
|
|
233
|
+
/**
|
|
234
|
+
* 房间人员列表,不包含本端信息
|
|
235
|
+
*/
|
|
236
|
+
getUsers(): IUserData[];
|
|
225
237
|
/**
|
|
226
238
|
* 获取人员状态
|
|
227
239
|
*/
|
|
@@ -280,7 +292,7 @@ interface IRCCallInitOptions {
|
|
|
280
292
|
/**
|
|
281
293
|
* 收到邀请后,产生新的session
|
|
282
294
|
*/
|
|
283
|
-
onSession: (session: RCCallSession) => void;
|
|
295
|
+
onSession: (session: RCCallSession, extra?: string) => void;
|
|
284
296
|
/**
|
|
285
297
|
* session已关闭
|
|
286
298
|
*/
|
|
@@ -412,6 +424,20 @@ interface IRCCallSessionOptions {
|
|
|
412
424
|
*/
|
|
413
425
|
produceType?: ProduceTypes;
|
|
414
426
|
}
|
|
427
|
+
interface IRCTrackBitrate {
|
|
428
|
+
/**
|
|
429
|
+
* 最大码率
|
|
430
|
+
*/
|
|
431
|
+
max: number;
|
|
432
|
+
/**
|
|
433
|
+
* 最小码率
|
|
434
|
+
*/
|
|
435
|
+
min: number;
|
|
436
|
+
/**
|
|
437
|
+
* 上行起始码率
|
|
438
|
+
*/
|
|
439
|
+
start?: number;
|
|
440
|
+
}
|
|
415
441
|
/**
|
|
416
442
|
* RCCallClient call方法的传参
|
|
417
443
|
*/
|
|
@@ -436,6 +462,25 @@ interface IRCCallParams {
|
|
|
436
462
|
video?: ICameraVideoProfile;
|
|
437
463
|
audio: IMicphoneAudioProfile;
|
|
438
464
|
};
|
|
465
|
+
/**
|
|
466
|
+
* 消息的扩展信息
|
|
467
|
+
*/
|
|
468
|
+
extra?: string;
|
|
469
|
+
/**
|
|
470
|
+
* 对方显示通知的标题
|
|
471
|
+
*/
|
|
472
|
+
pushTitle?: string;
|
|
473
|
+
/**
|
|
474
|
+
* 对方显示的通知内容
|
|
475
|
+
*/
|
|
476
|
+
pushContent?: string;
|
|
477
|
+
/**
|
|
478
|
+
* 设置码率
|
|
479
|
+
*/
|
|
480
|
+
bitrate?: {
|
|
481
|
+
video?: IRCTrackBitrate;
|
|
482
|
+
audio?: number;
|
|
483
|
+
};
|
|
439
484
|
}
|
|
440
485
|
interface IMediaStreamConstraints {
|
|
441
486
|
video?: ICameraVideoProfile;
|
|
@@ -452,8 +497,33 @@ interface IRCCallInGroupParams {
|
|
|
452
497
|
* session上要注册的监听事件
|
|
453
498
|
*/
|
|
454
499
|
listener: ISessionListener;
|
|
500
|
+
/**
|
|
501
|
+
* 组织 Id,可选
|
|
502
|
+
*/
|
|
455
503
|
channelId?: string;
|
|
504
|
+
/**
|
|
505
|
+
* 用于获取己方媒体资源的参数
|
|
506
|
+
*/
|
|
456
507
|
constraints?: IMediaStreamConstraints;
|
|
508
|
+
/**
|
|
509
|
+
* 消息的扩展信息
|
|
510
|
+
*/
|
|
511
|
+
extra?: string;
|
|
512
|
+
/**
|
|
513
|
+
* 对方显示通知的标题
|
|
514
|
+
*/
|
|
515
|
+
pushTitle?: string;
|
|
516
|
+
/**
|
|
517
|
+
* 对方显示的通知内容
|
|
518
|
+
*/
|
|
519
|
+
pushContent?: string;
|
|
520
|
+
/**
|
|
521
|
+
* 设置码率
|
|
522
|
+
*/
|
|
523
|
+
bitrate?: {
|
|
524
|
+
video?: IRCTrackBitrate;
|
|
525
|
+
audio?: number;
|
|
526
|
+
};
|
|
457
527
|
}
|
|
458
528
|
interface IDeviceChangeParams {
|
|
459
529
|
audio?: IMicphoneAudioProfile;
|
|
@@ -507,8 +577,13 @@ declare class RCCallClient {
|
|
|
507
577
|
* @param params.listener (session上的监听) 必填
|
|
508
578
|
* @param params.constraints 获取音频或音视频资源时的参数 可选
|
|
509
579
|
* @param params.channelId 组织 Id 可选
|
|
580
|
+
* @param params.extra 消息扩展信息
|
|
581
|
+
* @param params.pushTitle 通知的标题
|
|
582
|
+
* @param params.pushContent 通知的内容
|
|
583
|
+
* @param params.bitrate 需要设置的码率参数
|
|
584
|
+
*
|
|
510
585
|
*/
|
|
511
|
-
call({ targetId, mediaType, listener, constraints, channelId }: IRCCallParams): Promise<{
|
|
586
|
+
call({ targetId, mediaType, listener, constraints, channelId, extra, pushTitle, pushContent, bitrate }: IRCCallParams): Promise<{
|
|
512
587
|
code: RCCallErrorCode;
|
|
513
588
|
session?: RCCallSession;
|
|
514
589
|
}>;
|
|
@@ -518,10 +593,14 @@ declare class RCCallClient {
|
|
|
518
593
|
* @param params.userIds 被呼叫的群内成员 Id 必填
|
|
519
594
|
* @param params.mediaType 音频呼叫 or 音视频呼叫 必填
|
|
520
595
|
* @param params.listener (session上的监听) 必填
|
|
521
|
-
* @param params.channelId 组织 Id 可选
|
|
522
596
|
* @param params.constraints 获取音频或音视频资源时的参数 可选
|
|
597
|
+
* @param params.channelId 组织 Id 可选
|
|
598
|
+
* @param params.extra 消息扩展信息 可选
|
|
599
|
+
* @param params.pushTitle 通知的标题
|
|
600
|
+
* @param params.pushContent 通知的内容
|
|
601
|
+
* @param params.bitrate 需要设置的码率参数
|
|
523
602
|
*/
|
|
524
|
-
callInGroup({ targetId, userIds, mediaType, listener, constraints, channelId }: IRCCallInGroupParams): Promise<{
|
|
603
|
+
callInGroup({ targetId, userIds, mediaType, listener, constraints, channelId, extra, pushTitle, pushContent, bitrate }: IRCCallInGroupParams): Promise<{
|
|
525
604
|
code: RCCallErrorCode;
|
|
526
605
|
session?: RCCallSession;
|
|
527
606
|
}>;
|
|
@@ -541,6 +620,10 @@ declare class RCCallClient {
|
|
|
541
620
|
code: RCCallErrorCode;
|
|
542
621
|
data?: IRTCJoinedInfo[];
|
|
543
622
|
}>;
|
|
623
|
+
/**
|
|
624
|
+
* 销毁本地状态机(应对本地状态机异常无法重新建立通话)
|
|
625
|
+
*/
|
|
626
|
+
destroyStateMachine(): Promise<void>;
|
|
544
627
|
}
|
|
545
628
|
|
|
546
629
|
declare const installer: IPluginGenerator<RCCallClient, IRCCallInitOptions>;
|