larksr_websdk 3.2.33 → 3.2.34

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.
@@ -42,9 +42,156 @@ inputText(text: string): void;
42
42
  /**
43
43
  * 操作相关事件
44
44
  * 所有事件坐标相对于云端应用,不相对于网页
45
+ * CloudLark.IClientInput 是所有操作指令接口对象的合集
46
+ * 可以单独使用下面 moseMove 等接口
45
47
  * @param input 操作指令
46
48
  */
47
49
  sendInput(input: CloudLark.IClientInput): void;
50
+ /**
51
+ * 向云端发送鼠标移动事件
52
+ * 事件坐标相对于云端应用,不相对于网页
53
+ * 计算方式可以参考 https://github.com/pingxingyun/lark_sr_websdk_demos 例子中 v_cursor.vue getVMouseTouchPosition 方法
54
+ * 原理是通过 LarkSR 对象的成员 screenState.operateScale 获取相对的缩放,
55
+ * 本地坐标 X larksr.screenState.operateScale.scaleX / scaleY 即可得到相对云端的坐标
56
+ *
57
+ * @param PosX 相对云端鼠标 X 点坐标
58
+ * @param PosY 相对云端鼠标 Y 点坐标
59
+ * @param DeltaX 相对云端鼠标 X 轴移动距离
60
+ * @param DeltaY 相对云端鼠标 X 轴移动距离
61
+ */
62
+ mouseMove(PosX: number, PosY: number, DeltaX: number, DeltaY: number): void;
63
+ /**
64
+ * 向云端发送鼠标移动事件
65
+ * 事件坐标相对于云端应用,不相对于网页
66
+ * 计算方式可以参考 https://github.com/pingxingyun/lark_sr_websdk_demos 例子中 v_cursor.vue getVMouseTouchPosition 方法
67
+ * 原理是通过 LarkSR 对象的成员 screenState.operateScale 获取相对的缩放,
68
+ * 本地坐标 X larksr.screenState.operateScale.scaleX / scaleY 即可得到相对云端的坐标
69
+ *
70
+ * @param PosX 相对云端鼠标 X 点坐标
71
+ * @param PosY 相对云端鼠标 Y 点坐标
72
+ * @param DeltaX 相对云端鼠标 X 轴移动距离
73
+ * @param DeltaY 相对云端鼠标 X 轴移动距离
74
+ */
75
+ moseMove(PosX: number, PosY: number, DeltaX: number, DeltaY: number): void;
76
+ /**
77
+ * 向云端发送鼠标单击事件
78
+ * X Y 坐标计算方式同 mouseMove
79
+ *
80
+ * @param PosX 相对云端鼠标 X 点坐标
81
+ * @param PosY 相对云端鼠标 Y 点坐标
82
+ * @param key LEFT = 0,RIGHT = 1, MIDDLE = 2
83
+ */
84
+ mouseTap(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
85
+ /**
86
+ * 向云端发送鼠标按下事件
87
+ * X Y 坐标计算方式同 mouseMove
88
+ *
89
+ * @param PosX 相对云端鼠标 X 点坐标
90
+ * @param PosY 相对云端鼠标 Y 点坐标
91
+ * @param key LEFT = 0,RIGHT = 1, MIDDLE = 2
92
+ */
93
+ mouseDown(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
94
+ /**
95
+ * 向云端发送鼠标抬起事件
96
+ * X Y 坐标计算方式同 mouseMove
97
+ *
98
+ * @param PosX 相对云端鼠标 X 点坐标
99
+ * @param PosY 相对云端鼠标 Y 点坐标
100
+ * @param key LEFT = 0,RIGHT = 1, MIDDLE = 2
101
+ */
102
+ mouseUp(PosX: number, PosY: number, key: CloudLark.MouseKey): void;
103
+ /**
104
+ * 向云端发送鼠标滚轮事件
105
+ * X Y 坐标计算方式同 mouseMove
106
+ *
107
+ * @param PosX 相对云端鼠标 X 点坐标
108
+ * @param PosY 相对云端鼠标 Y 点坐标
109
+ * @param Delata 120/-120 鼠标滚轮滚动的数值
110
+ */
111
+ mouseWheel(PosX: number, PosY: number, Delata: number): void;
112
+ /**
113
+ * 向云端发送键盘按键按下事件
114
+ * @param key KeyboardEvent.code 字段,具体内容参考 Chrome https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/code/code_values
115
+ * @param isRepeat KeyboardEvent.repeat 字段,参考https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat
116
+ * @returns 是否发送成功,如果key参数传递错误可能发送失败
117
+ */
118
+ keyDown(key: string, isRepeat: boolean): void;
119
+ /**
120
+ * 向云端发送键盘按键抬起事件
121
+ * @param key KeyboardEvent.code 字段,具体内容参考 Chrome https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/code/code_values
122
+ * @returns 是否发送成功,如果key参数传递错误可能发送失败
123
+ */
124
+ keyUp(key: string): void;
125
+ /**
126
+ * 向云端发送手柄按钮按下事件
127
+ * 參考 https://developer.mozilla.org/zh-CN/docs/Web/API/Gamepad_API/Using_the_Gamepad_API
128
+ * @param userIndex 手柄的索引
129
+ * @param button 按鍵
130
+ * @param isRepeat 是否重复按下
131
+ * @returns
132
+ */
133
+ gamepadButtonDown(userIndex: number, button: number, isRepeat: boolean): void;
134
+ /**
135
+ * 向云端发送手柄按钮抬起事件
136
+ * 參考 https://developer.mozilla.org/zh-CN/docs/Web/API/Gamepad_API/Using_the_Gamepad_API
137
+ * @param userIndex 手柄的索引
138
+ * @param button 按鍵
139
+ * @returns
140
+ */
141
+ gamepadButtonUp(userIndex: number, button: number): void;
142
+ /**
143
+ * 向云端发送手柄按trigger键事件
144
+ * 參考 https://developer.mozilla.org/zh-CN/docs/Web/API/Gamepad_API/Using_the_Gamepad_API
145
+ * @param userIndex 手柄的索引
146
+ * @param isleft 是否是左trigger
147
+ * @param value trigger的值
148
+ * @returns
149
+ */
150
+ gamepadTrigger(userIndex: number, isleft: boolean, value: number): void;
151
+ /**
152
+ * 向云端发送手柄按摇杆的值,即 axes 值
153
+ * 參考 https://developer.mozilla.org/zh-CN/docs/Web/API/Gamepad_API/Using_the_Gamepad_API
154
+ * @param userIndex 手柄的索引
155
+ * @param thumblx 手柄摇杆的x轴坐标
156
+ * @param thumbly 手柄摇杆的y轴坐标
157
+ * @param thumbrx 手柄摇杆的x轴相对坐标
158
+ * @param thumbry 手柄摇杆的y轴相对坐标
159
+ * @returns
160
+ */
161
+ joystick(userIndex: number, thumblx: number, thumbly: number, thumbrx: number, thumbry: number): void;
162
+ /**
163
+ * 向云端发送触摸按下事件
164
+ * 坐标位置与 mouseMove 相同,相对与云端的鼠标移动位置
165
+ * @param id 手指的id
166
+ * @param x 相对云端的x轴坐标
167
+ * @param y 相对云端的y轴坐标
168
+ * @returns
169
+ */
170
+ touchDown(id: number, x: number, y: number): void;
171
+ /**
172
+ * 向云端发送触摸移动事件
173
+ * 坐标位置与 mouseMove 相同,相对与云端的鼠标移动位置
174
+ * @param id 手指的id
175
+ * @param x 相对云端的x轴坐标
176
+ * @param y 相对云端的y轴坐标
177
+ * @returns
178
+ */
179
+ touchMove(id: number, x: number, y: number): void;
180
+ /**
181
+ * 向云端发送触摸抬起事件
182
+ * 坐标位置与 mouseMove 相同,相对与云端的鼠标移动位置
183
+ * @param id 手指的id
184
+ * @param x 相对云端的x轴坐标
185
+ * @param y 相对云端的y轴坐标
186
+ * @returns
187
+ */
188
+ touchUp(id: number, x: number, y: number): void;
189
+ /**
190
+ * 字符串转换为输入的鼠标按键值
191
+ * @param button 'left' | 'mid' | 'right'
192
+ * @returns LEFT = 0,RIGHT = 1,MIDDLE = 2
193
+ */
194
+ getMouseButtonType(button: 'left' | 'mid' | 'right'): CloudLark.MouseKey;
48
195
  ```
49
196
 
50
197
  ## 数据通道扩展,向云端应用数据通道发送数据
@@ -64,6 +211,45 @@ sendTextToDataChannel(text: string): void;
64
211
  sendBinaryToDataChannel(binary: Uint8Array): void;
65
212
  ```
66
213
 
214
+ ## 智能语音相关接口
215
+
216
+ ```typescript
217
+ /**
218
+ * 开始智能语音对话文本输入
219
+ * 应在只能语音为开始状态下开始输入
220
+ * @param text 输入的文本
221
+ * @returns 返回对话 ID
222
+ */
223
+ aiDmTextInput(text: string): number;
224
+ /**
225
+ * 开始智能语音对话语音输入,自动请求录音权限
226
+ * 应在只能语音为开始状态下开始输入
227
+ * @returns 成功返回对话id,失败返回异常
228
+ */
229
+ startAiDmVoiceInput(): Promise<number>;
230
+ /**
231
+ * 停止智能语音输入,通知语音引擎当前用户输入对话结束
232
+ * @returns 返回当前对话的id
233
+ */
234
+ stopAiDmVoiceInput(): number;
235
+ ```
236
+
237
+ LarkSR 添加如下事件来获取智能语音服务状态:
238
+
239
+ ```typescript
240
+ larksr.on('aivoicestatus', (e) => {
241
+ // 智能语音服务状态
242
+ });
243
+
244
+ larksr.on('aivoiceasrresult', (e) => {
245
+ // 智能语音转文字识别结果
246
+ });
247
+
248
+ larksr.on('aivoicedmresult', (e) => {
249
+ // 智能语音对话结果
250
+ });
251
+ ```
252
+
67
253
  ## 其他
68
254
 
69
255
  ```typescript