larksr_websdk 3.2.327 → 3.2.330

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.
@@ -11,22 +11,24 @@ interface ILarkSRConfig {
11
11
  * 必选项 根元素。组件会挂载到跟元素下面
12
12
  * 注意*不要*设置为 document.documentElement
13
13
  * 默认模式下会通过旋转根元素实现强制横屏模式。
14
- * @see handelRootElementSize
14
+ * @see handleRootElementSize
15
15
  * @see scaleMode
16
16
  */
17
17
  rootElement: HTMLElement;
18
18
  /**
19
- * 必选项 服务器地址. LarkServer 前台访问的地址
19
+ * 可选项 服务器地址. LarkServer 前台访问的地址
20
20
  * 如: http://192.168.0.55:8181/
21
+ * 当使用托管服务时服务器地址自动分配,可留空。
22
+ * 使用托管服务时@see CreateLarkSRClientFromePXYHost @see larksr.connectWithPxyHost
21
23
  */
22
- serverAddress: string;
24
+ serverAddress?: string;
23
25
  /**
24
26
  * 可选项。 sdk 授权码。如果不在此处填,则必须在后续的实例里调用 initSDKAuthCode 初始化。
25
27
  */
26
28
  authCode?: string;
27
29
  /**
28
30
  * 可选项,授权是否成功
29
- * @deprecated 目前不会回调该参数。如果SDK验证失败将在 connect 返回失败
31
+ * @deprecated 目前不会回调该参数。如果SDK验证失败将在 connect 返回失败
30
32
  */
31
33
  authCodeCallback?: (isSuccess: boolean, e: any) => void;
32
34
  /**
@@ -95,13 +97,14 @@ interface ILarkSRConfig {
95
97
  /**
96
98
  * 可选项,优选选择的视频编码格式
97
99
  */
98
- perferDecoder?: 'auto' | 'vp8' | 'vp9' | 'h264' | 'av1x';
100
+ preferDecoder?: 'auto' | 'vp8' | 'vp9' | 'h264' | 'h265' | 'hevc' | 'av1x';
99
101
  /**
100
102
  * 可选项,视频在容器中的缩放模式
101
- * 'contain' | 'fill_clip' | 'fill_stretch'
103
+ * ScaleMode: 'contain' | 'fill_clip' | 'fill_stretch'
102
104
  * contain: 以应用原始尺寸的缩放
103
105
  * fill_clip: 裁剪模式,完全填充屏幕但保留宽高比
104
106
  * fill_stretch: 拉伸模式,完全填充屏幕但不保留宽高比
107
+ * 对应后台应用管理->应用编辑->通用高级设置->窗口初始显示方式,该配置优先级高于后台配置
105
108
  */
106
109
  scaleMode?: ScaleMode;
107
110
  /**
@@ -109,17 +112,27 @@ interface ILarkSRConfig {
109
112
  * 0 -》 用户手动触发
110
113
  * 1 -》 首次点击进入触发
111
114
  * 2 -》 每次点击触发
115
+ * 对应后台应用管理->应用编辑->通用高级设置->全屏模式,该配置优先级高于后台配置
112
116
  */
113
117
  fullScreenMode?: number;
114
118
  /**
115
119
  * 可选项,手机端的全屏模式,值同 fullScreenMode
120
+ * 对应后台应用管理->应用编辑->移动端高级设置->全屏模式,该配置优先级高于后台配置
116
121
  */
117
122
  mobileFullScreenMode?: number;
118
123
  /**
119
124
  * 可选项,手机端是否强制横屏
125
+ * 对应后台应用管理->应用编辑->移动端高级设置->手机端时是否强制横屏,该配置优先级高于后台配置
120
126
  */
121
127
  mobileForceLandscape?: boolean;
122
128
  /**
129
+ * 可选项
130
+ * 初始化鼠标模式, true 锁定,false 非锁定
131
+ * 对应后台应用管理->应用编辑->通用高级设置->初始化鼠标模式,该配置优先级高于后台配置
132
+ */
133
+ initCursorMode?: boolean;
134
+ /**
135
+ * 可选项
123
136
  * 渲染服务器外网端口映射
124
137
  * 格式为 key=[渲染服务器IP:PORT] value=[外网IP:PORT]
125
138
  * {
@@ -133,26 +146,28 @@ interface ILarkSRConfig {
133
146
  */
134
147
  publicPortMapping?: PublicPortMapping;
135
148
  /**
149
+ * 可选项
136
150
  * 是否提示输入文字 APP_REQUEST_INPUT
137
151
  * 当服务端检测到输入法事件后会抛出事件,可在 web 层添加输入框,配合 inputText 发送文字到云端
138
152
  * 默认打开,当手动关闭时将不会抛出 APP_REQUEST_INPUT 事件
139
153
  */
140
154
  textInputEventPrompt?: boolean;
141
-
142
155
  /**
156
+ * 可选项
143
157
  * 当启用音频输入功能,是否自动连入音频设备。
144
158
  * 默认关闭。
145
- * 需要注意默认打开的时系统中默认的音频设备。
159
+ * 需要注意默认打开的是系统中默认的音频设备。
146
160
  */
147
161
  audioInputAutoStart?: boolean;
148
-
149
162
  /**
163
+ * 可选项
150
164
  * 当启用视频输入功能,是否自动连入视频设备。
151
165
  * 默认关闭。
152
166
  * 需要注意默认打开的是系统中默认的视频设备。
153
167
  */
154
168
  videoInputAutoStart?: boolean;
155
169
  /**
170
+ * 可选项
156
171
  * mouseZoomDirection
157
172
  * 用于移动端捏合缩放操作与应用鼠标缩放的对应关系
158
173
  * 1:鼠标滚轮向上为放大,
@@ -160,10 +175,38 @@ interface ILarkSRConfig {
160
175
  */
161
176
  mouseZoomDirection?: number;
162
177
  /**
163
- * 触摸指令模式,对应后台应用管理->应用编辑->移动端高级设置->触摸指令模式 优先级高于后台配置
178
+ * 可选项
164
179
  * 触摸指令,移动端的触摸指令对应为云端的触屏还是鼠标
165
180
  * 'touchScreen' | 'mouse'
181
+ * 触摸指令模式,对应后台应用管理->应用编辑->移动端高级设置->触摸指令模式 优先级高于后台配置
166
182
  */
167
183
  touchOperateMode?: 'touchScreen' | 'mouse';
184
+ /**
185
+ * 可选项
186
+ * 优先使用渲染服务器点对点连接外网ip
187
+ * 如果配置将覆盖后台设置的 preferPublicIp 参数
188
+ */
189
+ preferPublicIp?: string;
190
+ /**
191
+ * 可选项
192
+ * 是否自动播放。默认开启。
193
+ * 如果关闭,连接成功之后会有提示UI,用户手动触发。
194
+ * 开启自动播放时也不能保证所有浏览器自动播放成功,当播放失败或者浏览器不支持自动播放时,
195
+ * 也会显示播放按钮,用户点击播放按钮手动播放。
196
+ */
197
+ autoPlay?: boolean;
198
+ /**
199
+ * 可选项
200
+ * 在播放失败或者手动播放模式下是否显示播放的按钮。
201
+ * 默认开启。要注意,如果关闭情况下要添加好提示或UI,引导用户点击播放。
202
+ * UI中要让用户触发 larksr.videoComponent.playVideo();
203
+ */
204
+ showPlayButton?: boolean;
205
+ /**
206
+ * 可选项
207
+ * 语言设置,目前只支持种英文两种,默认中文
208
+ * zh-CN 中文 en 英文
209
+ */
210
+ language?: string;
168
211
  }
169
212
  ```
@@ -24,12 +24,32 @@ declare const enum LarkSRClientEvent {
24
24
  /**
25
25
  * TASK 创建成功,返回 Task 相关信息
26
26
  */
27
- TASK_CREATE_SUCCESS = 'taskcreatesuccess',
28
-
27
+ TASK_CREATE_SUCCESS = "taskcreatesuccess",
29
28
  /**
30
29
  * TASK 创建失败
31
30
  */
32
- TASK_CREATE_FAILED = 'taskcreatefailed',
31
+ TASK_CREATE_FAILED = "taskcreatefailed",
32
+ /**
33
+ * 渲染资源不足
34
+ * {
35
+ // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
36
+ // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
37
+ // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
38
+ // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
39
+ // 815=应用运行数量已达到最大授权并发数量,请稍后再试
40
+ // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
41
+ // 817=渲染资源不足,请稍后再试
42
+ // 820=暂无活跃的GPU节点
43
+ // 821=节点资源使用率已达到设置的阈值
44
+ // 823=单节点运行应用数量已达到单节点最大授权并发数量,请稍后再试
45
+ code?: 817,
46
+
47
+ // 错误信息
48
+ message:? "",
49
+ }
50
+ *
51
+ */
52
+ RESOURCE_NOT_ENOUGH = "resourcenotenough",
33
53
  /**
34
54
  * 连接渲染服务器成功 .
35
55
  */
@@ -53,7 +73,11 @@ declare const enum LarkSRClientEvent {
53
73
  /**
54
74
  * 获取到远端视频流 .
55
75
  */
56
- GOT_REMOTE_STREAM = "gotremotesteam",
76
+ GOT_REMOTE_STREAM = "gotremotestream",
77
+ /**
78
+ * 获取到远端音频流 .
79
+ */
80
+ GOT_REMOTE_AUDIO_STREAM = "gotremoteaudiostream",
57
81
  /**
58
82
  * 视频加载成功,等待播放 .
59
83
  */
@@ -106,16 +130,6 @@ declare const enum LarkSRClientEvent {
106
130
  * 截图成功.
107
131
  */
108
132
  CAPTURE_FRAME = "captureframe",
109
- /**
110
- * 服务端 3.2.7.0 添加
111
- * rtmp 直播推流状态
112
- */
113
- RTMP_STREAM_STATE = "rtmpstreamstate",
114
- /**
115
- * 服务端 3.2.7.0 添加
116
- * rtmp 直播推流出错
117
- */
118
- RTMP_STREAM_ERROR = "rtmpstreamerror"
119
133
  /**
120
134
  * 数据通道打开 .
121
135
  */
@@ -145,5 +159,36 @@ declare const enum LarkSRClientEvent {
145
159
  * 一般信息提示
146
160
  */
147
161
  INFO = "info",
162
+ /**
163
+ * 语音对话的状态
164
+ */
165
+ AI_VOICE_STATUS = "aivoicestatus",
166
+ /**
167
+ * 语音识别转文字的结果
168
+ */
169
+ AI_VOICE_ASR_RESULT = "aivoiceasrresult",
170
+ /**
171
+ * 对话返回的结果
172
+ */
173
+ AI_VOICE_DM_RESULT = "aivoicedmresult",
174
+ /**
175
+ * 对话出错详细信息
176
+ */
177
+ AI_VOICE_ERROR = "aivoiceerror",
178
+ /**
179
+ * 服务端 3.2.7.0 添加
180
+ *
181
+ */
182
+ TOUCH_CTR_MAPPING = "touchctrmapping",
183
+ /**
184
+ * 服务端 3.2.7.0 添加
185
+ * rtmp 直播推流状态
186
+ */
187
+ RTMP_STREAM_STATE = "rtmpstreamstate",
188
+ /**
189
+ * 服务端 3.2.7.0 添加
190
+ * rtmp 直播推流出错
191
+ */
192
+ RTMP_STREAM_ERROR = "rtmpstreamerror"
148
193
  }
149
194
  ```
@@ -17,11 +17,50 @@ updateServerAddress(serverAddress: string): void;
17
17
  * @returns
18
18
  */
19
19
  initSDKAuthCode(id: string): Promise<void>;
20
+ /**
21
+ * 使用平行云托管平台时,使用 connectWithPxyHost 连接云端应用
22
+ * 托管平台 https://www.pingxingyun.com/console/#/
23
+ * @param params 同 connect 方法
24
+ * @return 同 connect 方法
25
+ */
26
+ connectWithPxyHost(params: {
27
+ appliId: string;
28
+ playerMode?: number;
29
+ userType?: number;
30
+ roomCode?: string;
31
+ taskId?: string;
32
+ regionId?: string;
33
+ groupId?: string;
34
+ }): Promise<void>;
20
35
  /**
21
36
  * 连接云端渲染资源
22
37
  * @params appID 云端资源的 ID
23
38
  * @returns Promise 调用接口并校验授权通过返回成功并自动开始连接
24
- */
39
+ * Promise 返回的错误对象:
40
+ * {
41
+ // type 0 渲染资源不足导致的错误,1 其他错误, 可用 type == 0 判断是否是渲染资源不足类型的错误
42
+ type: 0,
43
+
44
+ // 渲染资源不足时的事件类型,其他情况可能不返回,比如网络错误
45
+ eventType?:LarkSRClientEvent.RESOURCE_NOT_ENOUGH,
46
+
47
+ // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
48
+ // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
49
+ // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
50
+ // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
51
+ // 815=应用运行数量已达到最大授权并发数量,请稍后再试
52
+ // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
53
+ // 817=渲染资源不足,请稍后再试
54
+ // 820=暂无活跃的GPU节点
55
+ // 821=节点资源使用率已达到设置的阈值
56
+ // 823=单节点运行应用数量已达到单节点最大授权并发数量,请稍后再试
57
+ code?: 817,
58
+
59
+ // 错误信息
60
+ message:? "",
61
+ }
62
+ *
63
+ */
25
64
  connect(params: {
26
65
  appliId: string;
27
66
  playerMode?: number;
@@ -35,7 +74,7 @@ connect(params: {
35
74
  appKey?: string;
36
75
  timestamp?: string;
37
76
  signature?: string;
38
- }): Promise<void>;
77
+ } | any): Promise<void>;
39
78
  /**
40
79
  * 重新开始云渲染流程
41
80
  */
package/dist/doc/index.md CHANGED
@@ -75,7 +75,7 @@ client.connect({
75
75
  ## 文档目录
76
76
 
77
77
  ### [参数配置](./config.md)
78
- ### [LarkSR 对象方法](./functons.md)
78
+ ### [LarkSR 对象方法](./functions.md)
79
79
  ### [LarkSR 事件](./events.md)
80
80
  ### [LarkSR 对象成员](./member_variables.md)
81
81
  ### [SDK ID 加密](./sdkid_encryption.md)
@@ -276,4 +276,122 @@ onlyHandleRootElementTransform?: boolean;
276
276
  * @param serverAddress 服务器地址,如 http://192.168.0.55:8181/
277
277
  */
278
278
  updateServerAddress(serverAddress: string): void;
279
- ```
279
+ ```
280
+
281
+ ## V3.2.329
282
+
283
+ 1. 添加自动播放参数参数 `new LarkSR({ ... 此处省略其他配置 ... autoPlay: true, showPlayButton: true})`
284
+
285
+ SDK 内部添加播放按钮 UI,当自动播放失败或者手动播放模式时会显示出来,用户点击之后才会播放。
286
+
287
+ 自动播放模式下会尽可能直接播放不用手动点,包括可能静音播放。
288
+
289
+ ```javascript
290
+ /**
291
+ * 是否自动播放。默认开启。
292
+ * 如果关闭,连接成功之后会有提示UI,用户手动触发。
293
+ * 开启自动播放时也不能保证所有浏览器自动播放成功,当播放失败或者浏览器不支持自动播放时,
294
+ * 也会显示播放按钮,用户点击播放按钮手动播放。
295
+ */
296
+ autoPlay?: boolean;
297
+ /**
298
+ * 在播放失败或者手动播放模式下是否显示播放的按钮。
299
+ * 默认开启。要注意,如果关闭情况下要添加好提示或UI,引导用户点击播放。
300
+ * UI中要让用户触发 larksr.videoComponent.playVideo();
301
+ */
302
+ showPlayButton?: boolean;
303
+ ```
304
+
305
+ 2. 添加语言配置参数 `new LarkSR({ ... 此处省略其他配置 ... language: true})`
306
+
307
+ ```javascript
308
+ /**
309
+ * 语言设置,目前只支持种英文两种
310
+ * zh-CN 中文 en 英文
311
+ */
312
+ language?: string;
313
+ ```
314
+
315
+ 3. 添加渲染资源不足事件,在 `larksr.connect` 方法和 `resourcenotenough` 事件时抛出。可以根据服务端返回的 code 码判断具体情况,提示用户或进行后续处理。
316
+
317
+ `connect` 方法返回的 Promise:
318
+
319
+ ```javascript
320
+ /**
321
+ * 连接云端渲染资源
322
+ * @params appID 云端资源的 ID
323
+ * @returns Promise 调用接口并校验授权通过返回成功并自动开始连接
324
+ * Promise 返回的错误对象:
325
+ * {
326
+ // type 0 渲染资源不足导致的错误,1 其他错误, 可用 type == 0 判断是否是渲染资源不足类型的错误
327
+ type: 0,
328
+
329
+ // 渲染资源不足时的事件类型,其他情况可能不返回,比如网络错误
330
+ eventType?:LarkSRClientEvent.RESOURCE_NOT_ENOUGH,
331
+
332
+ // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
333
+ // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
334
+ // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
335
+ // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
336
+ // 815=应用运行数量已达到最大授权并发数量,请稍后再试
337
+ // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
338
+ // 817=渲染资源不足,请稍后再试
339
+ // 820=暂无活跃的GPU节点
340
+ // 821=节点资源使用率已达到设置的阈值
341
+ // 823=单节点运行应用数量已达到单节点最大授权并发数量,请稍后再试
342
+ code?: 817,
343
+
344
+ // 错误信息
345
+ message:? "",
346
+ }
347
+ *
348
+ */
349
+ connect(params: {
350
+ appliId: string;
351
+ playerMode?: number;
352
+ userType?: number;
353
+ roomCode?: string;
354
+ taskId?: string;
355
+ clientMac?: string;
356
+ groupId?: string;
357
+ regionId?: string;
358
+ targetServerIp?: string;
359
+ appKey?: string;
360
+ timestamp?: string;
361
+ signature?: string;
362
+ }): Promise<void>;
363
+ ```
364
+
365
+ 或者单独监听 `resourcenotenough`:
366
+
367
+ ```javascript
368
+ /**
369
+ * 渲染资源不足
370
+ * {
371
+ // 服务端返回的错误码,服务端请求正确返回时存在。需要注意渲染资源不足类型的错误码。
372
+ // 可用 type == 0 判断是否是渲染资源不足类型的错误,再用 code 进行细节处理,或者只用 type == 0 进行处理。
373
+ // 813=当前应用的运行数量已达到最大值:{0},请稍后再试
374
+ // 814=同一appKey下的应用运行数量达到最大值:{0},请稍后再试
375
+ // 815=应用运行数量已达到最大授权并发数量,请稍后再试
376
+ // 816=VR应用运行数量已达到最大授权并发数量,请稍后再试
377
+ // 817=渲染资源不足,请稍后再试
378
+ // 820=暂无活跃的GPU节点
379
+ // 821=节点资源使用率已达到设置的阈值
380
+ // 823=单节点运行应用数量已达到单节点最大授权并发数量,请稍后再试
381
+ code?: 817,
382
+
383
+ // 错误信息
384
+ message:? "",
385
+ }
386
+ *
387
+ */
388
+ RESOURCE_NOT_ENOUGH = 'resourcenotenough',
389
+ ```
390
+
391
+ ```javascript
392
+ // 此处省略 larksr 创建过程
393
+ // 监听连接成功事件
394
+ larksr.on('resourcenotenough', function(e) {
395
+ console.log("LarkSRClientEvent RESOURCE_NOT_ENOUGH", e);
396
+ });
397
+ ```