larksr_websdk 3.2.321 → 3.2.324

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.
@@ -106,6 +106,16 @@ declare const enum LarkSRClientEvent {
106
106
  * 截图成功.
107
107
  */
108
108
  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"
109
119
  /**
110
120
  * 数据通道打开 .
111
121
  */
@@ -134,6 +144,6 @@ declare const enum LarkSRClientEvent {
134
144
  /**
135
145
  * 一般信息提示
136
146
  */
137
- INFO = "info"
147
+ INFO = "info",
138
148
  }
139
149
  ```
@@ -389,6 +389,57 @@ larksr 配置项自动打开视频输入配置,在`new LarkSR({ ... 此处省略
389
389
  videoInputAutoStart?: boolean;
390
390
  ```
391
391
 
392
+ ## 云端直播推流功能
393
+
394
+ > 服务端 3.2.7.0 添加, 要注意使用云端直播推流功能要在后台应用管理中开启该功能
395
+
396
+ ```javascript
397
+ /**
398
+ * 启动云端推流功能
399
+ * @param params {
400
+ * // rtmp push url 必须填
401
+ * path: "",
402
+ * //rtmp push key
403
+ * key: "",
404
+ * // 推流的宽
405
+ * width: 1280,
406
+ * // 推流的高
407
+ * height: 720,
408
+ * framerate: 30,
409
+ * // kbps
410
+ * bitrate: 1024 * 2,
411
+ * // 是否支持断线重连
412
+ * reconnect: true,
413
+ * //最大重连次数
414
+ * reconnectRetries: 3,
415
+ * //是否串流麦克风(语音输入支持的情况)
416
+ * voice: audioInput,
417
+ * }
418
+ * @returns Promise
419
+ */
420
+ StartCloudLiveStreaming(params: CloudLark.IRtmp_Start): Promise<void> | undefined;
421
+ /**
422
+ * 关闭云端推流功能
423
+ * @returns
424
+ */
425
+ StopLiveStreaming(): void | undefined;
426
+ ```
427
+
428
+ 云端直播的相关状态参考 `RTMP_STREAM_STATE` 和 `RTMP_STREAM_ERROR` 两个事件
429
+
430
+ ```javascript
431
+ /**
432
+ * 服务端 3.2.7.0 添加
433
+ * rtmp 直播推流状态
434
+ */
435
+ RTMP_STREAM_STATE = "rtmpstreamstate",
436
+ /**
437
+ * 服务端 3.2.7.0 添加
438
+ * rtmp 直播推流出错
439
+ */
440
+ RTMP_STREAM_ERROR = "rtmpstreamerror"
441
+ ```
442
+
392
443
  ## 其他
393
444
 
394
445
  ```typescript
@@ -37,7 +37,7 @@ larksr.videoElement;
37
37
 
38
38
  ```javascript
39
39
  // 是否显示移动端触摸点
40
- larksr.isEnableTouchPonit = false;
40
+ larksr.isEnableTouchPoint = false;
41
41
  // 是否显示载入画面时底部文字
42
42
  larksr.isEnableLoadingStateBar = false;
43
43
  ```
@@ -47,6 +47,69 @@ larksr.isEnableLoadingStateBar = false;
47
47
  larksr.scaleMode = ScaleMode.CONTAIN_APP;
48
48
  ```
49
49
 
50
+ 4. 虚拟鼠标和触摸点
51
+
52
+ ```javascript
53
+ /**
54
+ * 虚拟鼠标的当前位置,相对于整体容器
55
+ */
56
+ larksr.virtualCursorPosition
57
+ /**
58
+ * 虚拟鼠标的当前位置,内部缩放容器,与实际显示虚拟鼠标 CSS 样式相同
59
+ */
60
+ larksr.virtualCursorPositionRaw
61
+ ```
62
+
63
+ 例:
64
+
65
+ 下面示例代码使用 react 演示点击一个按钮,同步一个外层的元素和虚拟鼠标的位置
66
+
67
+ ```javascript
68
+ // ....
69
+ // 省略 react 创建代码
70
+ export default class App extends React.Component {
71
+ private state: any = {
72
+ pointPosition: {
73
+ x: 0,
74
+ y: 0,
75
+ }
76
+ };
77
+ // ....
78
+ // 此处省略 larksr 创建过程等其他代码
79
+ render() {
80
+ return (
81
+ <div>
82
+ // ...
83
+ // 省略其他元素
84
+ <div style={{
85
+ zIndex: 1000,
86
+ position: 'absolute',
87
+ left: this.state.pointPosition.x,
88
+ top: this.state.pointPosition.y,
89
+ backgroundColor: "red",
90
+ width: 50,
91
+ height: 50,
92
+ borderRadius: "50%"
93
+ }}>
94
+ </div>
95
+ <button style={{pointerEvents: "all"}}
96
+ onClick={()=>{
97
+ // 获取虚拟鼠标的位置
98
+ console.log("touch point", this.larksr.virtualCursorPosition);
99
+ // 同步虚拟鼠标的位置
100
+ this.setState({
101
+ pointPosition: this.larksr.virtualCursorPosition,
102
+ })
103
+ }}
104
+ >
105
+ touchPoint
106
+ </button>
107
+ </div>
108
+ )
109
+ }
110
+ }
111
+ ```
112
+
50
113
  ## 配置参数
51
114
 
52
115
  ```javascript
@@ -183,7 +246,7 @@ larksr.op.gestureHandler.tapLimitTimeout = 100;
183
246
 
184
247
  可以通过拦截触摸事件回调的方式,设置具体的触摸事件和鼠标事件的对应关系。
185
248
 
186
- > 通过 larksr.op.gestureHandler 设置回调函数
249
+ > 通过 larksr.op.gestureHandler.gestureCallback 设置回调函数
187
250
  > 下面例子中的 GESTURE_TYPE 为 SDK 导出的手势事件类型,如果用 amd 方式引入的 SDK,所有导出类型均在 larksr_websdk 全局对象下。
188
251
  > 如果是使用其他方式引入 SDK,如 improt 方式导入 `import { GESTURE_TYPE } from 'larksr_websdk'`
189
252
  > 以下示例代码忽略 larksr 创建等过程
@@ -200,7 +263,7 @@ larksr.op.gestureHandler.tapLimitTimeout = 100;
200
263
  // rawEvent: any; 未转换为云端坐标的触摸事件
201
264
  // }
202
265
  //
203
- larksr.op.gestureHandler = (event) => {
266
+ larksr.op.gestureHandler.gestureCallback = (event) => {
204
267
  console.log(event);
205
268
  const p = event;
206
269
  switch (event.type) {
@@ -233,3 +233,19 @@ larksr.op.gestureHandler.tapLimitTimeout = 100;
233
233
  ```
234
234
 
235
235
  可用通过 gestureHandler 拦截触摸事件回调, 通过 `larksr.op.gestureHandler` 设置回调函数
236
+
237
+ ## V3.2.322
238
+
239
+ 1. 修复某些情况下后台设置的 LOGO 会闪一下默认 LOGO 的问题
240
+ 2. 添加 `larksr.virtualCursorPosition` 和 `larksr.virtualCursorPositionRaw` (省略 larksr 对象创建代码) 获取当前虚拟鼠标或者触摸点的位置。
241
+
242
+ ## V3.2.324
243
+
244
+ 1. 修复 iOS 屏幕高度判断问题
245
+ 2. 添加获取应用列表接口 `API.GetAppliList(server: string, params: any);`
246
+ 3. 添加获取区域列表接口 `API.RegionList(server: string, params: any);`
247
+ 4. 添加获取后台配置UI接口 `larksr.getTouchCtrMapping()`
248
+ 5. 添加 `RTMP_STREAM_STATE = "rtmpstreamstate"` 事件,返回云端直播推流事件
249
+ 6. 添加 `RTMP_STREAM_ERROR = "rtmpstreamerror"` 事件,返回云端直播推流错误
250
+ 7. 添加 `larksr.StartCloudLiveStreaming(params)` 接口,启动云端直播推流功能
251
+ 8. 添加 `larksr.StopLiveStreaming()` 接口,关闭云端直播推流功能.