larksr_websdk 3.2.318 → 3.2.321
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/doc/config.md +20 -0
- package/dist/doc/events.md +9 -0
- package/dist/doc/functions.md +72 -2
- package/dist/doc/member_variables.md +160 -0
- package/dist/doc/update.md +138 -1
- package/dist/larksr-web-sdk.min.js +1 -1
- package/dist/types/api.d.ts +3 -0
- package/dist/types/appli_params.d.ts +4 -0
- package/dist/types/index.d.ts +2 -1
- package/dist/types/lark/application.d.ts +4 -1
- package/dist/types/lark/peer_connection.d.ts +5 -2
- package/dist/types/larksr.d.ts +64 -5
- package/dist/types/operation/gesture.d.ts +3 -1
- package/dist/types/operation/gesture_handler.d.ts +37 -0
- package/dist/types/operation/keyboard_handler.d.ts +3 -0
- package/dist/types/operation/operation.d.ts +30 -5
- package/dist/types/utils/capabilities.d.ts +2 -0
- package/dist/types/utils/ios-inner-height.d.ts +4 -0
- package/dist/types/utils/unit.d.ts +0 -5
- package/package.json +2 -1
- package/types/api.d.ts +3 -0
- package/types/appli_params.d.ts +4 -0
- package/types/index.d.ts +2 -1
- package/types/lark/application.d.ts +4 -1
- package/types/lark/peer_connection.d.ts +5 -2
- package/types/larksr.d.ts +64 -5
- package/types/operation/gesture.d.ts +3 -1
- package/types/operation/gesture_handler.d.ts +37 -0
- package/types/operation/keyboard_handler.d.ts +3 -0
- package/types/operation/operation.d.ts +30 -5
- package/types/utils/capabilities.d.ts +2 -0
- package/types/utils/ios-inner-height.d.ts +4 -0
- package/types/utils/unit.d.ts +0 -5
package/dist/doc/config.md
CHANGED
|
@@ -134,5 +134,25 @@ interface ILarkSRConfig {
|
|
|
134
134
|
* 需要注意默认打开的时系统中默认的音频设备。
|
|
135
135
|
*/
|
|
136
136
|
audioInputAutoStart?: boolean;
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* 当启用视频输入功能,是否自动连入视频设备。
|
|
140
|
+
* 默认关闭。
|
|
141
|
+
* 需要注意默认打开的是系统中默认的视频设备。
|
|
142
|
+
*/
|
|
143
|
+
videoInputAutoStart?: boolean;
|
|
144
|
+
/**
|
|
145
|
+
* mouseZoomDirection
|
|
146
|
+
* 用于移动端捏合缩放操作与应用鼠标缩放的对应关系
|
|
147
|
+
* 1:鼠标滚轮向上为放大,
|
|
148
|
+
* 0:鼠标滚轮向下为放大(default)
|
|
149
|
+
*/
|
|
150
|
+
mouseZoomDirection?: number;
|
|
151
|
+
/**
|
|
152
|
+
* 触摸指令模式,对应后台应用管理->应用编辑->移动端高级设置->触摸指令模式 优先级高于后台配置
|
|
153
|
+
* 触摸指令,移动端的触摸指令对应为云端的触屏还是鼠标
|
|
154
|
+
* 'touchScreen' | 'mouse'
|
|
155
|
+
*/
|
|
156
|
+
touchOperateMode?: 'touchScreen' | 'mouse';
|
|
137
157
|
}
|
|
138
158
|
```
|
package/dist/doc/events.md
CHANGED
|
@@ -21,6 +21,15 @@ larksr.on('connect', function(e) {
|
|
|
21
21
|
* LarkSR 实例完整事件定义
|
|
22
22
|
*/
|
|
23
23
|
declare const enum LarkSRClientEvent {
|
|
24
|
+
/**
|
|
25
|
+
* TASK 创建成功,返回 Task 相关信息
|
|
26
|
+
*/
|
|
27
|
+
TASK_CREATE_SUCCESS = 'taskcreatesuccess',
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* TASK 创建失败
|
|
31
|
+
*/
|
|
32
|
+
TASK_CREATE_FAILED = 'taskcreatefailed',
|
|
24
33
|
/**
|
|
25
34
|
* 连接渲染服务器成功 .
|
|
26
35
|
*/
|
package/dist/doc/functions.md
CHANGED
|
@@ -299,6 +299,7 @@ larksr.on('aivoicedmresult', (e) => {
|
|
|
299
299
|
|
|
300
300
|
> 该功能匹配的服务端版本最低为 V3.2.51
|
|
301
301
|
> 使用该功能要注意在后台开启智能语音功能
|
|
302
|
+
> 注意要在连接成功之后打开媒体设备。即 `mediaPlayed` 之后调用才有效
|
|
302
303
|
|
|
303
304
|
```typescript
|
|
304
305
|
/**
|
|
@@ -325,12 +326,77 @@ getConnectedAudioinputDevices(): Promise<MediaDeviceInfo[] | undefined>;
|
|
|
325
326
|
setAudioEnable(enable: boolean): void | undefined;
|
|
326
327
|
```
|
|
327
328
|
|
|
329
|
+
larksr 配置项自动打开麦克风配置,在`new LarkSR({ ... 此处省略其他配置 ... audioInputAutoStart: true})` 时传入,
|
|
330
|
+
|
|
331
|
+
> 手动传入的 `audioInputAutoStart` 优先级高于后台配置
|
|
332
|
+
|
|
333
|
+
```javascript
|
|
334
|
+
/**
|
|
335
|
+
* 当启用音频输入功能,是否自动连入音频设备。
|
|
336
|
+
* 默认关闭。
|
|
337
|
+
* 需要注意默认打开的是系统中默认的音频设备。
|
|
338
|
+
*/
|
|
339
|
+
audioInputAutoStart?: boolean;
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
## 视频输入接口
|
|
343
|
+
|
|
344
|
+
客户端打开后云端应用可直接通过读取服务端的摄像头读取视频数据。
|
|
345
|
+
|
|
346
|
+
> 该功能匹配的服务端版本最低为 V3.2.61
|
|
347
|
+
> 使用该功能要注意在后台应用管理中开启视频输入功能
|
|
348
|
+
> 注意要在连接成功之后打开媒体设备。即 `mediaPlayed` 之后调用才有效
|
|
349
|
+
|
|
350
|
+
```typescript
|
|
351
|
+
/**
|
|
352
|
+
* 打开一个视频设备,要注意浏览器限制在 https 或者 localhost 下才能打开视频
|
|
353
|
+
* @param audio boolean 是否同时开启音频
|
|
354
|
+
* @param cameraId 视频设备id,如果不传将打开默认设备。@see getConnectedVideoinputDevices
|
|
355
|
+
* @returns Promise
|
|
356
|
+
*/
|
|
357
|
+
openVideo(audio?: boolean, cameraId?: string);
|
|
358
|
+
/**
|
|
359
|
+
* 打开默认媒体设备,要注意浏览器限制在 https 或者 localhost 下
|
|
360
|
+
* 如果需要指定特殊的媒体设备请单独使用 @see openAudio @see openVideo
|
|
361
|
+
* @param video 是否包含视频
|
|
362
|
+
* @param audio 是否包含音频
|
|
363
|
+
* @returns Promise
|
|
364
|
+
*/
|
|
365
|
+
openDefaultMedia(video?: boolean, audio?: boolean)>;
|
|
366
|
+
/**
|
|
367
|
+
* 返回已连接的视频设备
|
|
368
|
+
* @returns Promise<MediaDeviceInfo[]>
|
|
369
|
+
*/
|
|
370
|
+
getConnectedVideoinputDevices();
|
|
371
|
+
/**
|
|
372
|
+
* 设置当前已开启的视频track是否启用状态
|
|
373
|
+
* @param enable 是否启用
|
|
374
|
+
* @returns void
|
|
375
|
+
*/
|
|
376
|
+
setVideoEnable(enable: boolean);
|
|
377
|
+
```
|
|
378
|
+
|
|
379
|
+
larksr 配置项自动打开视频输入配置,在`new LarkSR({ ... 此处省略其他配置 ... videoInputAutoStart: true})` 时传入
|
|
380
|
+
|
|
381
|
+
> 手动传入的 `videoInputAutoStart` 优先级高于后台配置
|
|
382
|
+
|
|
383
|
+
```javascript
|
|
384
|
+
/**
|
|
385
|
+
* 当启用视频输入功能,是否自动连入视频设备。
|
|
386
|
+
* 默认关闭。
|
|
387
|
+
* 需要注意默认打开的是系统中默认的视频设备。
|
|
388
|
+
*/
|
|
389
|
+
videoInputAutoStart?: boolean;
|
|
390
|
+
```
|
|
391
|
+
|
|
328
392
|
## 其他
|
|
329
393
|
|
|
330
394
|
```typescript
|
|
331
395
|
/**
|
|
332
|
-
* 采集一帧图像
|
|
333
|
-
|
|
396
|
+
* 采集一帧图像
|
|
397
|
+
* @params data: any 抛出采集事件时抛出的附加data,比如采集的时间戳
|
|
398
|
+
* @return { data: any, base64: base64string } 返回传入的 data 和采集的 base64 字符串
|
|
399
|
+
*/
|
|
334
400
|
captrueFrame(data: any)
|
|
335
401
|
/**
|
|
336
402
|
* 设置是否强制横屏显示内容.
|
|
@@ -339,4 +405,8 @@ captrueFrame(data: any)
|
|
|
339
405
|
* @param force 是否强制横屏
|
|
340
406
|
*/
|
|
341
407
|
setMobileForceLandScape(force: boolean): void;
|
|
408
|
+
/**
|
|
409
|
+
* 从DOM种删除渲染组件,注意删除渲染组件之后将无法再次进入应用,所有状态将失效,不可恢复,只能重新new LarkSR
|
|
410
|
+
*/
|
|
411
|
+
destroy(): void;
|
|
342
412
|
```
|
|
@@ -148,6 +148,166 @@ larksr.op.setGamepadEnable(enable: boolean);
|
|
|
148
148
|
larksr.op.setTouchEnable(enable: boolean);
|
|
149
149
|
```
|
|
150
150
|
|
|
151
|
+
### 操作类中的 keyboardhandler
|
|
152
|
+
|
|
153
|
+
```javascript
|
|
154
|
+
// 设置键盘事件默认拦截浏览器默认行为。
|
|
155
|
+
// 在 preventKeys 中的将拦截,如果数组设置为空则全部不拦截
|
|
156
|
+
// 默认拦截 F1 F5 F12
|
|
157
|
+
larksr.op.keyboardHandler.preventKeys = [["F1", "F5", "F12"]];
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### 操作类中的 gestureHandler
|
|
161
|
+
|
|
162
|
+
gestureHandler 处理将移动端触摸事件对应为鼠标事件的过程。
|
|
163
|
+
|
|
164
|
+
#### 调节触摸事件触发参数
|
|
165
|
+
|
|
166
|
+
```javascript
|
|
167
|
+
// 触摸事件在对应为鼠标事件中,提供的鼠标相对移动的速度。
|
|
168
|
+
// 即 rx = (pxNew-pxOld) * relativeMouseMoveSpeed
|
|
169
|
+
// ry = (pyNew-pyOld)* relativeMouseMoveSpeed
|
|
170
|
+
// 可能会影响使用相对移动(rawInput)判断的云端应用的效果
|
|
171
|
+
larksr.op.gestureHandler.relativeMouseMoveSpeed = 2;
|
|
172
|
+
// 触摸模拟为鼠标事件时,模拟点击的判断范围。
|
|
173
|
+
// 实际的鼠标事件点击时一般不会移动,而触摸操作基本上一定会触发移动事件
|
|
174
|
+
// 如果要模拟PC上的击事件,比如单击或双击,在鼠标按下和抬起之间不应再插入鼠标移动
|
|
175
|
+
// 当触发移动事件时,超出该判断范围才发送移动事件。
|
|
176
|
+
// 注意,修改该值可能会导致云端应用上判断单击或双击失败,如果云端应用不包含类似操作基本影响不大
|
|
177
|
+
larksr.op.gestureHandler.tapLimitRadius = 20;
|
|
178
|
+
// 在该时间范围下将尝试发送单机按下事件,修改该值可能会导致单机事件的触发成功率
|
|
179
|
+
larksr.op.gestureHandler.tapLimitTimeout = 100;
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
#### 拦截触摸事件回调
|
|
183
|
+
|
|
184
|
+
可以通过拦截触摸事件回调的方式,设置具体的触摸事件和鼠标事件的对应关系。
|
|
185
|
+
|
|
186
|
+
> 通过 larksr.op.gestureHandler 设置回调函数
|
|
187
|
+
> 下面例子中的 GESTURE_TYPE 为 SDK 导出的手势事件类型,如果用 amd 方式引入的 SDK,所有导出类型均在 larksr_websdk 全局对象下。
|
|
188
|
+
> 如果是使用其他方式引入 SDK,如 improt 方式导入 `import { GESTURE_TYPE } from 'larksr_websdk'`
|
|
189
|
+
> 以下示例代码忽略 larksr 创建等过程
|
|
190
|
+
|
|
191
|
+
```javascript
|
|
192
|
+
// 参数 event 有如下字段
|
|
193
|
+
// event : {
|
|
194
|
+
// type: GESTURE_TYPE; 手势事件的类型
|
|
195
|
+
// x: number; 转换为云端的坐标 x
|
|
196
|
+
// y: number; 转换为云端的坐标 y
|
|
197
|
+
// rx: number; 转换为云端的坐标 rx
|
|
198
|
+
// ry: number; 转换为云端的坐标 ry
|
|
199
|
+
// edge: boolean; 是否到触摸边缘
|
|
200
|
+
// rawEvent: any; 未转换为云端坐标的触摸事件
|
|
201
|
+
// }
|
|
202
|
+
//
|
|
203
|
+
larksr.op.gestureHandler = (event) => {
|
|
204
|
+
console.log(event);
|
|
205
|
+
const p = event;
|
|
206
|
+
switch (event.type) {
|
|
207
|
+
// 单只触摸开始移动鼠标到当前位置
|
|
208
|
+
case GESTURE_TYPE.SINGLE_FINGER_TOUCH_START:
|
|
209
|
+
larksr.mouseMove(p.x, p.y, p.rx, p.ry);
|
|
210
|
+
break;
|
|
211
|
+
// 单指单击 -》左键单击
|
|
212
|
+
case GESTURE_TYPE.SINGLE_FINGER_TAP:
|
|
213
|
+
larksr.mouseTap(p.x, p.y, CloudLark.MouseKey.LEFT);
|
|
214
|
+
break;
|
|
215
|
+
// 单指按下 -》 移动鼠标, 按下鼠标
|
|
216
|
+
case GESTURE_TYPE.SINGLE_FINGER_TAP_DOWN:
|
|
217
|
+
// move mouse first
|
|
218
|
+
larksr.mouseMove(p.x, p.y, p.rx, p.ry);
|
|
219
|
+
// sync tap down
|
|
220
|
+
larksr.mouseDown(p.x, p.y, CloudLark.MouseKey.LEFT);
|
|
221
|
+
break;
|
|
222
|
+
// 单指抬起 -》 移动鼠标, 抬起鼠标
|
|
223
|
+
case GESTURE_TYPE.SINGLE_FINGER_TAP_UP:
|
|
224
|
+
// move mouse first
|
|
225
|
+
larksr.moseMove(p.x, p.y, p.rx, p.ry);
|
|
226
|
+
// sync tap down
|
|
227
|
+
larksr.mouseUp(p.x, p.y, CloudLark.MouseKey.LEFT);
|
|
228
|
+
break;
|
|
229
|
+
// 单指滑动 -》 移动鼠标
|
|
230
|
+
case GESTURE_TYPE.SINGLE_FINGER_SWIPE:
|
|
231
|
+
larksr.moseMove(p.x, p.y, p.rx, p.ry);
|
|
232
|
+
break;
|
|
233
|
+
// 单指开始滑动 -》 鼠标左键按下
|
|
234
|
+
case GESTURE_TYPE.SINGLE_FINGER_SWIPE_START:
|
|
235
|
+
// sync tap down
|
|
236
|
+
larksr.mouseDown(p.x, p.y, CloudLark.MouseKey.LEFT);
|
|
237
|
+
break;
|
|
238
|
+
// 单指滑动结束 -》 鼠标左键抬起
|
|
239
|
+
case GESTURE_TYPE.SINGLE_FINGER_SWIPE_END:
|
|
240
|
+
larksr.mouseUp(p.x, p.y, CloudLark.MouseKey.LEFT);
|
|
241
|
+
break;
|
|
242
|
+
// 双指单击 -》 鼠标右键单击
|
|
243
|
+
case GESTURE_TYPE.DOUBLE_FINGER_TAP:
|
|
244
|
+
larksr.mouseTap(p.x, p.y, CloudLark.MouseKey.RIGHT);
|
|
245
|
+
break;
|
|
246
|
+
// 双指按下 -》 移动鼠标
|
|
247
|
+
case GESTURE_TYPE.DOUBLE_FINGER_TAP_DOWN:
|
|
248
|
+
// move mouse first
|
|
249
|
+
larksr.moseMove(p.x, p.y, p.rx, p.ry);
|
|
250
|
+
// 抬起所有
|
|
251
|
+
// sync tap down
|
|
252
|
+
larksr.mouseDown(p.x, p.y, CloudLark.MouseKey.RIGHT);
|
|
253
|
+
break;
|
|
254
|
+
case GESTURE_TYPE.DOUBLE_FINGER_TAP_UP:
|
|
255
|
+
// move mouse first
|
|
256
|
+
larksr.moseMove(p.x, p.y, p.rx, p.ry);
|
|
257
|
+
// sync tap up
|
|
258
|
+
larksr.mouseUp(p.x, p.y, CloudLark.MouseKey.RIGHT);
|
|
259
|
+
break;
|
|
260
|
+
// 双指移动 -》 滚动滚轮
|
|
261
|
+
case GESTURE_TYPE.DOUBLE_FINGER_SWIPE:
|
|
262
|
+
// move mouse mid
|
|
263
|
+
// this.$emitMouseWheel(p.x, p.y, e.motion.y);
|
|
264
|
+
larksr.moseMove(p.x, p.y, p.rx, p.ry);
|
|
265
|
+
break;
|
|
266
|
+
case GESTURE_TYPE.DOUBLE_FINGER_EXPAND:
|
|
267
|
+
// windows 消息 deltaY 上是 +120 下是 -120
|
|
268
|
+
// 双指扩展向外滑动
|
|
269
|
+
// 滚轮向下移动
|
|
270
|
+
// move mouse mid
|
|
271
|
+
larksr.mouseWheel(p.x, p.y, 120);
|
|
272
|
+
break;
|
|
273
|
+
case GESTURE_TYPE.DOUBLE_FINGER_SHRINK:
|
|
274
|
+
// windows 消息 deltaY 上是 +120 下是 -120
|
|
275
|
+
// 双指向内滑动
|
|
276
|
+
// 滚轮向上移动
|
|
277
|
+
larksr.mouseWheel(p.x, p.y, -120);
|
|
278
|
+
break;
|
|
279
|
+
case GESTURE_TYPE.DOUBLE_FINGER_SWIPE_END:
|
|
280
|
+
// sync tap up
|
|
281
|
+
larksr.mouseUp(p.x, p.y, CloudLark.MouseKey.RIGHT);
|
|
282
|
+
break;
|
|
283
|
+
// 三指单击 -》 鼠标中键单击
|
|
284
|
+
case GESTURE_TYPE.TRIPLE_FINGER_TAP:
|
|
285
|
+
larksr.mouseTap(p.x, p.y, CloudLark.MouseKey.MIDDLE);
|
|
286
|
+
break;
|
|
287
|
+
// 三指滑动 -》 移动鼠标
|
|
288
|
+
case GESTURE_TYPE.TRIPLE_FINGER_SWIPE:
|
|
289
|
+
larksr.mouseMove(p.x, p.y, p.rx, p.ry);
|
|
290
|
+
break;
|
|
291
|
+
// 三指滑动按下 -》 鼠标中键按下
|
|
292
|
+
case GESTURE_TYPE.TRIPLE_FINGER_SWIPE_START:
|
|
293
|
+
larksr.mouseMove(p.x, p.y, p.rx, p.ry);
|
|
294
|
+
//
|
|
295
|
+
larksr.mouseDown(p.x, p.y, CloudLark.MouseKey.MIDDLE);
|
|
296
|
+
break;
|
|
297
|
+
// 三指滑动按下 -》 鼠标中键抬起
|
|
298
|
+
case GESTURE_TYPE.TRIPLE_FINGER_SWIPE_END:
|
|
299
|
+
// sync tap up
|
|
300
|
+
larksr.mouseUp(p.x, p.y, CloudLark.MouseKey.MIDDLE);
|
|
301
|
+
break;
|
|
302
|
+
// 所有手指抬起
|
|
303
|
+
case GESTURE_TYPE.RELEASE:
|
|
304
|
+
break;
|
|
305
|
+
default:
|
|
306
|
+
break;
|
|
307
|
+
}
|
|
308
|
+
};
|
|
309
|
+
```
|
|
310
|
+
|
|
151
311
|
## 全屏锁屏
|
|
152
312
|
|
|
153
313
|
```javascript
|
package/dist/doc/update.md
CHANGED
|
@@ -70,7 +70,8 @@ setMobileForceLandScape(force: boolean): void;
|
|
|
70
70
|
新增麦克风输入接口。客户端打开后云端应用可直接通过读取声卡上的麦克风接收到音频。
|
|
71
71
|
|
|
72
72
|
> 该功能匹配的服务端版本最低为 V3.2.51
|
|
73
|
-
>
|
|
73
|
+
> 使用该功能要注意在后台应用管理中开启音频输入功能
|
|
74
|
+
> 注意要在连接成功之后打开媒体设备。即 `mediaPlayed` 之后调用才有效
|
|
74
75
|
|
|
75
76
|
```typescript
|
|
76
77
|
/**
|
|
@@ -96,3 +97,139 @@ getConnectedAudioinputDevices(): Promise<MediaDeviceInfo[] | undefined>;
|
|
|
96
97
|
*/
|
|
97
98
|
setAudioEnable(enable: boolean): void | undefined;
|
|
98
99
|
```
|
|
100
|
+
|
|
101
|
+
larksr 配置项新增自动打开麦克风配置,在`new LarkSR({ ... 此处省略其他配置 ... audioInputAutoStart: true})` 时传入,
|
|
102
|
+
|
|
103
|
+
> 手动传入的 `audioInputAutoStart` 优先级高于后台配置
|
|
104
|
+
|
|
105
|
+
```javascript
|
|
106
|
+
/**
|
|
107
|
+
* 当启用音频输入功能,是否自动连入音频设备。
|
|
108
|
+
* 默认关闭。
|
|
109
|
+
* 需要注意默认打开的是系统中默认的音频设备。
|
|
110
|
+
*/
|
|
111
|
+
audioInputAutoStart?: boolean;
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## V3.2.319
|
|
115
|
+
|
|
116
|
+
新增视频输入接口。客户端打开后云端应用可直接通过读取服务端的摄像头读取视频数据。
|
|
117
|
+
|
|
118
|
+
> 该功能匹配的服务端版本最低为 V3.2.61
|
|
119
|
+
> 使用该功能要注意在后台应用管理中开启视频输入功能
|
|
120
|
+
> 注意要在连接成功之后打开媒体设备。即 `mediaPlayed` 之后调用才有效
|
|
121
|
+
|
|
122
|
+
```typescript
|
|
123
|
+
/**
|
|
124
|
+
* 打开一个视频设备,要注意浏览器限制在 https 或者 localhost 下才能打开视频
|
|
125
|
+
* @param audio boolean 是否同时开启音频
|
|
126
|
+
* @param cameraId 视频设备id,如果不传将打开默认设备。@see getConnectedVideoinputDevices
|
|
127
|
+
* @returns Promise
|
|
128
|
+
*/
|
|
129
|
+
openVideo(audio?: boolean, cameraId?: string);
|
|
130
|
+
/**
|
|
131
|
+
* 打开默认媒体设备,要注意浏览器限制在 https 或者 localhost 下
|
|
132
|
+
* 如果需要指定特殊的媒体设备请单独使用 @see openAudio @see openVideo
|
|
133
|
+
* @param video 是否包含视频
|
|
134
|
+
* @param audio 是否包含音频
|
|
135
|
+
* @returns Promise
|
|
136
|
+
*/
|
|
137
|
+
openDefaultMedia(video?: boolean, audio?: boolean)>;
|
|
138
|
+
/**
|
|
139
|
+
* 返回已连接的视频设备
|
|
140
|
+
* @returns Promise<MediaDeviceInfo[]>
|
|
141
|
+
*/
|
|
142
|
+
getConnectedVideoinputDevices();
|
|
143
|
+
/**
|
|
144
|
+
* 设置当前已开启的视频track是否启用状态
|
|
145
|
+
* @param enable 是否启用
|
|
146
|
+
* @returns void
|
|
147
|
+
*/
|
|
148
|
+
setVideoEnable(enable: boolean);
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
larksr 配置项新增自动打开视频输入配置,在`new LarkSR({ ... 此处省略其他配置 ... videoInputAutoStart: true})` 时传入
|
|
152
|
+
|
|
153
|
+
> 手动传入的 `videoInputAutoStart` 优先级高于后台配置
|
|
154
|
+
|
|
155
|
+
```javascript
|
|
156
|
+
/**
|
|
157
|
+
* 当启用视频输入功能,是否自动连入视频设备。
|
|
158
|
+
* 默认关闭。
|
|
159
|
+
* 需要注意默认打开的是系统中默认的视频设备。
|
|
160
|
+
*/
|
|
161
|
+
videoInputAutoStart?: boolean;
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## V3.2.321
|
|
165
|
+
|
|
166
|
+
larksr 配置项新增默认放大手势和鼠标滚轮对应关系和是否使用触摸屏模式,在`new LarkSR({ ... 此处省略其他配置 ... mouseZoomDirection: 0, touchOperateMode: "mouse"})` 时传入
|
|
167
|
+
|
|
168
|
+
> 手动传入的配置优先级高于后台配置
|
|
169
|
+
|
|
170
|
+
```javascript
|
|
171
|
+
/**
|
|
172
|
+
* mouseZoomDirection
|
|
173
|
+
* 用于移动端捏合缩放操作与应用鼠标缩放的对应关系
|
|
174
|
+
* 1:鼠标滚轮向上为放大,
|
|
175
|
+
* 0:鼠标滚轮向下为放大(default)
|
|
176
|
+
*/
|
|
177
|
+
mouseZoomDirection?: number;
|
|
178
|
+
/**
|
|
179
|
+
* 触摸指令模式,对应后台应用管理->应用编辑->移动端高级设置->触摸指令模式 优先级高于后台配置
|
|
180
|
+
* 触摸指令,移动端的触摸指令对应为云端的触屏还是鼠标
|
|
181
|
+
* 'touchScreen' | 'mouse'
|
|
182
|
+
*/
|
|
183
|
+
touchOperateMode?: 'touchScreen' | 'mouse';
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
captrueFrame 方法会将截图和通过返回值带出来
|
|
187
|
+
|
|
188
|
+
```javascript
|
|
189
|
+
/**
|
|
190
|
+
* 采集一帧图像
|
|
191
|
+
* @params data: any 抛出采集事件时抛出的附加data,比如采集的时间戳
|
|
192
|
+
* @return { data: any, base64: base64string } 返回传入的 data 和采集的 base64 字符串
|
|
193
|
+
*/
|
|
194
|
+
captrueFrame(data: any)
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
新增销毁方法,要注意,销毁之后 larksr 对象不再可用
|
|
198
|
+
|
|
199
|
+
```javascript
|
|
200
|
+
/**
|
|
201
|
+
* 从DOM种删除渲染组件,注意删除渲染组件之后将无法再次进入应用,所有状态将失效,不可恢复,只能重新new LarkSR
|
|
202
|
+
*/
|
|
203
|
+
destroy(): void;
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
添加操作类中的 keyboardhandler 开放访问,可用配置拦截哪些按键的默认行为
|
|
207
|
+
|
|
208
|
+
```javascript
|
|
209
|
+
// 设置键盘事件默认拦截浏览器默认行为。
|
|
210
|
+
// 在 preventKeys 中的将拦截,如果数组设置为空则全部不拦截
|
|
211
|
+
// 默认拦截 F1 F5 F12
|
|
212
|
+
larksr.op.keyboardHandler.preventKeys = [["F1", "F5", "F12"]];
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
操作类中添加 gestureHandler 公开访问,gestureHandler 处理将移动端触摸事件对应为鼠标事件的过程。
|
|
216
|
+
|
|
217
|
+
可用通过 gestureHandler 调节触摸事件触发参数
|
|
218
|
+
|
|
219
|
+
```javascript
|
|
220
|
+
// 触摸事件在对应为鼠标事件中,提供的鼠标相对移动的速度。
|
|
221
|
+
// 即 rx = (pxNew-pxOld) * relativeMouseMoveSpeed
|
|
222
|
+
// ry = (pyNew-pyOld)* relativeMouseMoveSpeed
|
|
223
|
+
// 可能会影响使用相对移动(rawInput)判断的云端应用的效果
|
|
224
|
+
larksr.op.gestureHandler.relativeMouseMoveSpeed = 2;
|
|
225
|
+
// 触摸模拟为鼠标事件时,模拟点击的判断范围。
|
|
226
|
+
// 实际的鼠标事件点击时一般不会移动,而触摸操作基本上一定会触发移动事件
|
|
227
|
+
// 如果要模拟PC上的击事件,比如单击或双击,在鼠标按下和抬起之间不应再插入鼠标移动
|
|
228
|
+
// 当触发移动事件时,超出该判断范围才发送移动事件。
|
|
229
|
+
// 注意,修改该值可能会导致云端应用上判断单击或双击失败,如果云端应用不包含类似操作基本影响不大
|
|
230
|
+
larksr.op.gestureHandler.tapLimitRadius = 20;
|
|
231
|
+
// 在该时间范围下将尝试发送单机按下事件,修改该值可能会导致单机事件的触发成功率
|
|
232
|
+
larksr.op.gestureHandler.tapLimitTimeout = 100;
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
可用通过 gestureHandler 拦截触摸事件回调, 通过 `larksr.op.gestureHandler` 设置回调函数
|