@tencentcloud/sdk-mcp 1.3.8 → 1.3.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.
Files changed (70) hide show
  1. package/package.json +1 -1
  2. package/resource/doc/chatuikit/android/integration.md +466 -484
  3. package/resource/doc/chatuikit/android/workflow.md +713 -0
  4. package/resource/doc/livekit/live/flutter/live-integration.md +208 -167
  5. package/resource/doc/livekit/voice/android/voice-audience-list.md +335 -0
  6. package/resource/doc/livekit/voice/android/voice-audio-effect.md +384 -0
  7. package/resource/doc/livekit/voice/android/voice-barrage.md +569 -0
  8. package/resource/doc/livekit/voice/android/voice-co-guest-interaction.md +748 -0
  9. package/resource/doc/livekit/voice/android/voice-gift.md +833 -0
  10. package/resource/doc/livekit/voice/android/voice-host-interaction.md +728 -0
  11. package/resource/doc/livekit/voice/android/voice-integration.md +886 -0
  12. package/resource/doc/livekit/voice/android/voice-room-list.md +493 -0
  13. package/resource/doc/livekit/voice/android/workflow.md +333 -0
  14. package/resource/doc/livekit/voice/flutter/voice-audience-list.md +337 -0
  15. package/resource/doc/livekit/voice/flutter/voice-audio-effect.md +739 -0
  16. package/resource/doc/livekit/voice/flutter/voice-barrage.md +578 -0
  17. package/resource/doc/livekit/voice/flutter/voice-co-guest-interaction.md +673 -0
  18. package/resource/doc/livekit/voice/flutter/voice-gift.md +812 -0
  19. package/resource/doc/livekit/voice/flutter/voice-integration.md +925 -0
  20. package/resource/doc/livekit/voice/flutter/voice-room-list.md +842 -0
  21. package/resource/doc/livekit/voice/flutter/workflow.md +359 -0
  22. package/resource/doc/livekit/voice/ios/voice-audience-list.md +335 -0
  23. package/resource/doc/livekit/voice/ios/voice-audio-effect.md +373 -0
  24. package/resource/doc/livekit/voice/ios/voice-barrage.md +529 -0
  25. package/resource/doc/livekit/voice/ios/voice-co-guest-interaction.md +701 -0
  26. package/resource/doc/livekit/voice/ios/voice-gift.md +785 -0
  27. package/resource/doc/livekit/voice/ios/voice-host-interaction.md +820 -0
  28. package/resource/doc/livekit/voice/ios/voice-integration.md +853 -0
  29. package/resource/doc/livekit/voice/ios/voice-room-list.md +467 -0
  30. package/resource/doc/livekit/voice/ios/workflow.md +358 -0
  31. package/resource/doc/livekit/voice/uni-app/voice-audience-list.md +264 -0
  32. package/resource/doc/livekit/voice/uni-app/voice-audio-effect.md +332 -0
  33. package/resource/doc/livekit/voice/uni-app/voice-barrage.md +482 -0
  34. package/resource/doc/livekit/voice/uni-app/voice-co-guest-interaction.md +944 -0
  35. package/resource/doc/livekit/voice/uni-app/voice-gift.md +716 -0
  36. package/resource/doc/livekit/voice/uni-app/voice-integration.md +613 -0
  37. package/resource/doc/livekit/voice/uni-app/voice-room-list.md +562 -0
  38. package/resource/doc/livekit/voice/uni-app/workflow.md +369 -0
  39. package/resource/doc/roomkit/vue/integration.md +119 -224
  40. package/resource/doc/roomkit/vue/workflow.md +472 -226
  41. package/resource/doc/tuicallkit/android/integration.md +675 -90
  42. package/resource/doc/tuicallkit/android/workflow.md +432 -0
  43. package/tools/common/present-scenario-choice.js +16 -0
  44. package/tools/common/present-scenario-choice.js.map +1 -0
  45. package/tools/definitions/get_native_call_uikit_integration_def.js +18 -2
  46. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  47. package/tools/definitions/get_native_chat_uikit_integration_def.js +29 -7
  48. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  49. package/tools/definitions/get_native_live_uikit_integration_def.js +65 -40
  50. package/tools/definitions/get_native_live_uikit_integration_def.js.map +1 -1
  51. package/tools/definitions/get_native_live_uikit_interaction_def.js +42 -94
  52. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +1 -1
  53. package/tools/definitions/get_web_room_feature_detail_def.js +29 -32
  54. package/tools/definitions/get_web_room_feature_detail_def.js.map +1 -1
  55. package/tools/definitions/get_web_room_uikit_integration_def.js +25 -9
  56. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  57. package/tools/definitions/present_scenario_choice_def.js +53 -0
  58. package/tools/definitions/present_scenario_choice_def.js.map +1 -0
  59. package/tools/definitions/record_prompt_def.js +6 -1
  60. package/tools/definitions/record_prompt_def.js.map +1 -1
  61. package/tools/definitions/record_result_def.js +20 -4
  62. package/tools/definitions/record_result_def.js.map +1 -1
  63. package/tools/index.js +2 -0
  64. package/tools/index.js.map +1 -1
  65. package/tools/live/get-native-live-uikit-integration.js +110 -34
  66. package/tools/live/get-native-live-uikit-integration.js.map +1 -1
  67. package/tools/live/get_native_live_uikit_interaction.js +128 -35
  68. package/tools/live/get_native_live_uikit_interaction.js.map +1 -1
  69. package/utils/report-cls-client.js +1 -1
  70. package/utils/report-es-client.js +1 -1
@@ -1,18 +1,23 @@
1
- TUIRoomKit 是腾讯云推出的音视频会议 UI 应用。本次升级引入了全新的 Atomicx 组件接入方案,开发者可以灵活组合这些原子化组件,以构建个性化的会议界面。
1
+ TUIRoomKit 是腾讯云推出的音视频房间 UI 应用。本次升级引入了全新的原子化组件接入方案,开发者可以灵活组合这些原子化组件,以构建个性化的音视频房间界面。
2
2
 
3
- 本文档将帮助您集成 TUIRoomKit (Atomicx 版本) 到现有的 Vue 3 项目中,同时介绍如何对 TUIRoomKit 的样式、布局及功能进行自定义修改。
3
+ > **推荐使用更高效的 AI 集成助手**
4
+ >
4
5
 
5
- > **说明:**
6
+ > 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
6
7
  >
7
8
 
8
- > TUIRoomKit (Atomicx 版本) 目前仅支持 PC 端 Vue3 项目,如果您的业务需要支持 Vue2.x 框架或 H5 平台,请参考 [旧版本 TUIRoomKit 快速接入](https://write.woa.com/document/196568527013543936)。
9
+ > [点击这里,立即体验 AI 集成](https://cloud.tencent.com/document/product/647/127873)
9
10
  >
10
11
 
11
12
 
12
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/30581b7bd73111f0ab505254001c06ec.png)
13
+ 本文档介绍如何将 TUIRoomKit 集成到现有的 Vue3 项目中,同时介绍如何对 TUIRoomKit 的样式、布局及功能进行自定义修改。
14
+ - 桌面端多人会议
15
+
16
+ ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/31045da2d73111f097cb5254005ef0f7.png)
13
17
 
18
+ - H5 多人会议
14
19
 
15
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/31045da2d73111f097cb5254005ef0f7.png)
20
+ ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/1d8af2f1fd3611f0b5c0525400380f7d.png)
16
21
 
17
22
 
18
23
  ## 前提条件
@@ -46,211 +51,69 @@ TUIRoomKit 是腾讯云推出的音视频会议 UI 应用。本次升级引入
46
51
 
47
52
  【npm】
48
53
  ``` bash
49
- npm install tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/tuiroom-engine-js vue-router
54
+ npm install @tencentcloud/roomkit-web-vue3@latest tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/universal-api
50
55
  ```
51
56
 
52
57
 
53
58
  【pnpm】
54
59
  ``` bash
55
- pnpm install tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/tuiroom-engine-js vue-router
60
+ pnpm install @tencentcloud/roomkit-web-vue3@latest tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/universal-api
56
61
  ```
57
62
 
58
63
 
59
64
  【yarn】
60
65
  ``` bash
61
- yarn add tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/tuiroom-engine-js vue-router
62
- ```
63
-
64
- ### 步骤2:配置开发环境
65
-
66
- 如果您的项目尚未支持 TypeScript 和 SCSS,请先安装相应的环境依赖。如果已安装,您可以略过此步骤。
67
-
68
-
69
-
70
-
71
- 【npm】
72
- ``` bash
73
- npm install typescript sass -S -D
66
+ yarn add @tencentcloud/roomkit-web-vue3@latest tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 @tencentcloud/universal-api
74
67
  ```
75
68
 
76
-
77
- 【pnpm】
78
- ``` bash
79
- pnpm install typescript sass -S -D
80
- ```
81
-
82
-
83
- 【yarn】
84
- ``` bash
85
- yarn add typescript sass -S -D
86
- ```
87
-
88
- ### 步骤3:拷贝核心源码文件
89
-
90
- 克隆 TUIRoomKit 的 GitHub 仓库,并进入 PC 端 Vue3 示例目录。
91
- ``` bash
92
- git clone https://github.com/Tencent-RTC/TUIRoomKit.git --depth=1
93
- cd TUIRoomKit/Web/example/atomicx-vite-vue3-ts
94
- ```
95
-
96
- 拷贝 `TUIRoomKit/Web/example/atomicx-vite-vue3-ts/src` 路径下核心源码文件到您的业务项目中。
97
-
98
- > **注意:**
99
- >
100
-
101
- > 拷贝源码文件时,请确保与您项目已有的文件夹进行合并,避免直接覆盖已有的同名文件夹。
102
- >
103
-
104
- <table>
105
- <tr>
106
- <td rowspan="1" colSpan="1" >源路径 (示例项目)</td>
107
-
108
- <td rowspan="1" colSpan="1" >目标路径 (您的项目)</td>
109
-
110
- <td rowspan="1" colSpan="1" >说明</td>
111
- </tr>
112
-
113
- <tr>
114
- <td rowspan="1" colSpan="1" >src/assets/</td>
115
-
116
- <td rowspan="1" colSpan="1" >src/assets/</td>
117
-
118
- <td rowspan="1" colSpan="1" >包含背景图、图标等静态资源。</td>
119
- </tr>
120
-
121
- <tr>
122
- <td rowspan="1" colSpan="1" >src/components/</td>
123
-
124
- <td rowspan="1" colSpan="1" >src/components/</td>
125
-
126
- <td rowspan="1" colSpan="1" >包含 TUIRoomKit 所有原子 UI 组件</td>
127
- </tr>
128
-
129
- <tr>
130
- <td rowspan="1" colSpan="1" >src/hooks/</td>
131
-
132
- <td rowspan="1" colSpan="1" >src/hooks/</td>
133
-
134
- <td rowspan="1" colSpan="1" >包含 TUIRoomKit 业务逻辑处理</td>
135
- </tr>
136
-
137
- <tr>
138
- <td rowspan="1" colSpan="1" >src/i18n/</td>
139
-
140
- <td rowspan="1" colSpan="1" >src/i18n/</td>
141
-
142
- <td rowspan="1" colSpan="1" >包含多语言配置文件</td>
143
- </tr>
144
-
145
- <tr>
146
- <td rowspan="1" colSpan="1" >src/utils/</td>
147
-
148
- <td rowspan="1" colSpan="1" >src/utils/</td>
149
-
150
- <td rowspan="1" colSpan="1" >包含通用工具函数</td>
151
- </tr>
152
-
153
- <tr>
154
- <td rowspan="1" colSpan="1" >src/config/</td>
155
-
156
- <td rowspan="1" colSpan="1" >src/config/</td>
157
-
158
- <td rowspan="1" colSpan="1" >包含 `basic-info-config.js` 等应用配置信息(首次接入请重点关注此文件)</td>
159
- </tr>
160
-
161
- <tr>
162
- <td rowspan="1" colSpan="1" >src/views/home.vue</td>
163
-
164
- <td rowspan="1" colSpan="1" >src/views/home.vue</td>
165
-
166
- <td rowspan="1" colSpan="1" >该页面包含了设备检测、房间创建/加入的入口功能</td>
167
- </tr>
168
-
169
- <tr>
170
- <td rowspan="1" colSpan="1" >src/views/room.vue</td>
171
-
172
- <td rowspan="1" colSpan="1" >src/views/room.vue</td>
173
-
174
- <td rowspan="1" colSpan="1" >该页面是 TUIRoomKit 的核心会议界面,集成了完整的头部、视频布局、控制栏和侧边面板</td>
175
- </tr>
176
- </table>
177
-
178
-
179
- ### 步骤4:配置页面路由
180
-
181
- 请配置您的 Vue Router,将 home.vue 映射到主页,将 room.vue 映射到会议室页面。
182
-
183
- > **注意:**
184
- >
185
- > - 如果您的业务项目中已有 `src/router/index.ts` 文件,请将以下内容合并到已有代码中。
186
- > - 如果尚未配置路由,请新建 `src/router/index.ts` 文件并添加以下配置。
187
-
69
+ ### 步骤2:**引用 **TUIRoomKit** 组件**
188
70
  ``` typescript
189
- // src/router/index.ts 示例配置
190
- import { createRouter, createWebHistory } from 'vue-router';
191
- import Home from '../views/home.vue';
192
- import Room from '../views/room.vue';
193
-
194
- const router = createRouter({
195
- history: createWebHistory(),
196
- routes: [
197
- {
198
- path: '/',
199
- redirect: '/home',
200
- },
201
- {
202
- path: '/home',
203
- name: 'Home',
204
- component: Home,
205
- },
206
- {
207
- path: '/room',
208
- name: 'Room',
209
- component: Room,
210
- },
211
- ],
212
- });
71
+ <template>
72
+ <ConferenceMainView v-if="isPC"></ConferenceMainView>
73
+ <ConferenceMainViewH5 v-else></ConferenceMainViewH5>
74
+ </template>
75
+ <script setup>
76
+ import { ref } from 'vue';
77
+ import { ConferenceMainView, ConferenceMainViewH5 } from '@tencentcloud/roomkit-web-vue3';
78
+ import { getPlatform } from '@tencentcloud/universal-api';
79
+
80
+ const isPC = ref(getPlatform() === 'pc');
81
+ </script>
213
82
 
214
- export default router;
215
83
  ```
216
84
 
217
- ### 步骤5:配置 App.vue 文件
218
-
219
- 您需要将以下内容合并到您项目中的 App.vue 文件,以配置全局 UI 样式和用户登录逻辑:
220
- - 配置全局 `UIKitProvider`: 引入 `UIKitProvider` 组件,并设置默认主题和语言;
85
+ ### 步骤3:配置 App.vue 文件
221
86
 
222
- - 引入页面路由: 渲染 <router-view />;
87
+ 将以下内容合并到项目的 App.vue 文件中,以配置全局 UI 样式和用户登录逻辑:
88
+ - 配置全局 `UIKitProvider`:引入 `UIKitProvider` 组件,并设置默认主题和语言;
223
89
 
224
- - 用户登录: 在 `onMounted` 钩子中执行 login 和 setSelfInfo;
90
+ - 用户登录: 在 `onMounted` 钩子中执行 `login` 和 `setSelfInfo`;
225
91
 
226
92
  ``` typescript
227
93
  <template>
228
94
  <!-- Step 1: 配置全局 UIKitProvider -->
229
95
  <UIKitProvider theme="light" language="zh-CN">
230
- <!-- Step 2: 引入页面路由 -->
231
- <router-view />
96
+ <!-- 您包含 ConferenceMainView 的业务组件 -->
232
97
  </UIKitProvider>
233
98
  </template>
234
99
 
235
- <!-- 注意添加 lang="ts" 来启用 TypeScript 支持 -->
236
- <script setup lang="ts">
100
+ <script setup>
237
101
  import { UIKitProvider } from '@tencentcloud/uikit-base-component-vue3';
238
102
  import { onMounted } from 'vue';
239
- import { SDKAPPID, genTestUserSig } from './config/basic-info-config';
240
- import { RoomEvent, useLoginState, useRoomModal } from 'tuikit-atomicx-vue3/room';
103
+ import { useLoginState } from 'tuikit-atomicx-vue3/room';
241
104
 
242
- // step 3: 用户登陆
105
+ // step 2: 用户登陆
243
106
  const { login, setSelfInfo } = useLoginState();
244
- const { handleErrorWithModal } = useRoomModal();
245
- const userId = `user_${Math.ceil(Math.random(0,1)*999)}`;
246
- const userName = userId;
247
- const userSig = genTestUserSig(userId);
107
+ const SDKAppID = 0; // 注意:请替换为实时音视频控制台获取的 SDKAppID 信息
108
+ const userId = '填入您真实的 userId'; // 注意:请替换为真实的 userId
109
+ const userName = '填入您真实的 userName'; // 注意:请替换为真实的 userName
110
+ const userSig = '填入您真实的 userSig'; // 注意:生成临时 userSig 请参考 https://cloud.tencent.com/document/product/647/17275#console
248
111
  onMounted(async () => {
249
112
  try {
250
113
  await login({
251
114
  userId,
252
115
  userSig,
253
- sdkAppId: SDKAPPID,
116
+ sdkAppId: SDKAppID,
254
117
  });
255
118
  await setSelfInfo({
256
119
  userName,
@@ -258,12 +121,11 @@ export default router;
258
121
  });
259
122
  } catch (error: any) {
260
123
  console.error('Login failed:', error);
261
- handleErrorWithModal(error);
262
124
  }
263
125
  });
264
126
  </script>
265
127
 
266
- <!-- Step 4: 配置全局样式(此样式用来覆盖脚手架搭建的新项目的默认样式,可按需配置) -->
128
+ <!-- Step 3: 配置全局样式(此样式用来覆盖脚手架搭建的新项目的默认样式,可按需配置)-->
267
129
  <style>
268
130
  html, body {
269
131
  padding: 0 !important;
@@ -283,51 +145,50 @@ export default router;
283
145
  </style>
284
146
  ```
285
147
 
286
- ### 步骤6:配置 src/main.ts 文件
148
+ ### 步骤4:发起新的会议
287
149
 
288
- 将路由和多语言配置合并到您项目中的入口文件 src/main.ts 中:
150
+ 会议主持人可以通过调用 `conference.start` 接口来发起一场新的会议,其他参会者可以参见 [步骤6](https://write.woa.com/#061c9593-1112-4763-aff2-7289b3af0c41) 的描述,调用 `conference.join` 接口加入该会议。
289
151
 
290
152
  > **注意:**
291
153
  >
292
154
 
293
- > 如果您项目中的入口文件为 js 文件,请修改文件后缀为 src/main.ts。
155
+ > 请参考步骤 3 在用户登录成功后调用 `conference.start `接口发起会议。
294
156
  >
295
157
 
296
158
  ``` typescript
297
- // Step 1: 配置页面路由
298
- import router from './router/index';
299
- const app = createApp(App);
300
- // --- 以下为新增代码 ----
301
- app.use(router);
302
- // --- 以上为新增代码 ----
303
- app.mount('#app');
304
-
305
- // Step 2: 配置多语言资源
306
- import { i18next } from '@tencentcloud/uikit-base-component-vue3';
307
- import { enResource, zhResource } from './i18n';
308
- export const addI18n = (lng: string, resource: any, deep = true, overwrite = false) => {
309
- i18next.addResourceBundle(lng, 'translation', resource.translation, deep, overwrite);
310
- };
311
- addI18n('en-US', { translation: enResource }, true, true);
312
- addI18n('zh-CN', { translation: zhResource }, true, true);
159
+ import { conference } from '@tencentcloud/roomkit-web-vue3';
160
+ const startConference = async () => {
161
+ await conference.start({
162
+ roomId: '123456', // 请替换为您真实的 roomId
163
+ options: {
164
+ roomName: '我的临时会议',
165
+ },
166
+ });
167
+ }
168
+ startConference();
313
169
  ```
314
170
 
315
- ## 启动项目
316
-
317
- ### 配置应用信息
171
+ ### 步骤5:进入已有会议
318
172
 
319
- 在您的项目目录中找到 `src/config/basic-info-config.js` 配置文件,并将您在腾讯云控制台获取的 `SDKAppID` 和 `SDKSecretKey` 填入对应的变量中。
320
-
321
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/2fc2dd3dd73111f091e252540044a08e.png)
173
+ 参与者可以通过调用 `conference.join` 接口,填写对应的 roomId 参数,来加入由会议主持人在 [步骤4](https://write.woa.com/#7e2fb3c2-2b17-4445-985d-4af641ff66be) 中发起的会议。
322
174
 
175
+ > **注意:**
176
+ >
323
177
 
324
- > **警告:**
178
+ > 请参考步骤 3 在用户登录成功后调用 `conference.join `接口加入会议。
325
179
  >
326
- > - 本文的 Demo 示例中通过在客户端代码中配置 `SDKSecretKey` 进行鉴权,但 `SDKSecretKey` 很容易被反编译逆向破解,一旦密钥泄露,攻击者就可以盗用您的腾讯云流量,因此该方法仅适合本地跑通 Demo 和功能调试。
327
- > - 在正式的生产环境中,建议在您的服务端生成 UserSig,在需要 UserSig 时由您的 App 向业务服务器发起请求获取动态 UserSig 来进行鉴权。详见 [正式运行阶段如何计算 UserSig?](https://cloud.tencent.com/document/product/647/17275#formal)
328
180
 
181
+ ``` typescript
182
+ import { conference } from '@tencentcloud/roomkit-web-vue3';
183
+ const joinConference = async () => {
184
+ await conference.join({
185
+ roomId: '123456', // 请替换为您真实的 roomId
186
+ });
187
+ }
188
+ joinConference();
189
+ ```
329
190
 
330
- ### 启动开发服务器
191
+ ## 启动项目
331
192
 
332
193
 
333
194
 
@@ -351,10 +212,10 @@ yarn run dev
351
212
 
352
213
  启动成功后,请在浏览器中打开调试地址(通常为 http://localhost:5173)访问应用。您将看到如下所示的会议界面:
353
214
 
354
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/312e7796d73111f091e252540044a08e.png)
215
+ ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/7986ed3bfd3711f098c8525400370dda.png)
355
216
 
356
217
 
357
- ## UI 自定义
218
+ ## UI 快速自定义
358
219
 
359
220
  ### 主题及语言
360
221
 
@@ -394,11 +255,56 @@ yarn run dev
394
255
  import { UIKitProvider } from '@tencentcloud/uikit-base-component-vue3';
395
256
  ```
396
257
 
397
- ### 房间流布局
258
+ ### 配置用户联系人列表
259
+
260
+ TUIRoomKit 预定会议用户选择列表和会中呼叫用户选择列表默认展示用户关系链列表,批量导入用户关系链请参考以下步骤:
261
+
262
+ 步骤1:使用 [账号管理 > 导入多个账号](https://cloud.tencent.com/document/product/269/4919) REST API 接口批量导入用户账号;
263
+
264
+ 步骤2:使用 [好友管理 > 导入好友](https://cloud.tencent.com/document/product/269/8301) REST API 接口批量导入用户关系链;
265
+
266
+ ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/c8e55003fd8611f08080525400074c32.png)
267
+
268
+
269
+ ## TUIRoomKit 界面定制
270
+
271
+ ### 源码导出
272
+
273
+
274
+
275
+ 【Vue3】
276
+ 1. 执行源码导出脚本,默认拷贝路径为 `./src/components/RoomKit`
277
+
278
+ ``` bash
279
+ node ./node_modules/@tencentcloud/roomkit-web-vue3/scripts/eject.js
280
+ ```
281
+ 2. 根据脚本提示确认是否要将 TUIRoomKit 源码拷贝到 `./src/components/RoomKit` 目录。如您需要自定义拷贝目录请输入 'y', 否则输入'n'。
282
+
283
+
284
+ ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/05a672b6fd8711f0a1eb52540073fd3b.png)
285
+
286
+ 3. 源码导出后,在您指定的项目路径中会新增 TUIRoomKit 源码。此时,您需要手动将 ConferenceMainView 组件,ConferenceMainViewH5 组件的 conference 对象的引用从 npm 包地址更改为 TUIRoom 源码的相对路径地址。
287
+
288
+ ``` typescript
289
+ - import { ConferenceMainView, conference } from '@tencentcloud/roomkit-web-vue3';
290
+ // 替换引用路径为 TUIRoomKit 源码的真实路径
291
+ + import { ConferenceMainView, ConferenceMainViewH5, conference } from './components/RoomKit/index.ts';
292
+ ```
293
+ 4. 配置 ESLint 校验
294
+
295
+
296
+ 如果您导出 TUIRoomKit 源码后运行项目出现 ESLint 报错,您可以在`.eslintignore`文件中添加 RoomKit 文件夹忽略 ESLint 检测。
297
+ ``` javascript
298
+ // 请替换为 TUIRoomKit 源码真实路径
299
+ src/components/RoomKit
300
+ ```
301
+
302
+ ### 自定义房间流布局
398
303
 
399
304
  TUIRoomKit 目前支持九宫格、侧边栏及顶部栏三种流布局,默认为九宫格布局。
400
305
  ``` typescript
401
- // src/views/room.vue
306
+ // RoomKit/views/ConferenceMainView/index.vue
307
+ import { RoomLayoutTemplate } from 'tuikit-atomicx-vue3/room';
402
308
  // 修改默认视频流布局为侧边栏布局
403
309
  const participantViewLayout = ref(RoomLayoutTemplate.SidebarLayout);
404
310
  function handleLayoutUpdate(layout: RoomLayoutTemplate) {
@@ -414,22 +320,11 @@ function handleLayoutUpdate(layout: RoomLayoutTemplate) {
414
320
 
415
321
  ### 自定义视频流挂件
416
322
 
417
- TUIRoomKit 默认视频流挂件如图所示,如您需要自定义视频流挂件请修改 `src/components/RoomLayoutView/ParticipantViewUI/ParticipantViewUI.vue` 组件。
323
+ TUIRoomKit 默认视频流挂件如图所示,如需自定义视频流挂件请修改 `RoomKit/components/RoomLayoutView/ParticipantViewUI/ParticipantViewUI.vue` 组件。
418
324
 
419
325
  ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/2fab38f2d73111f0929b525400bf7822.png)
420
326
 
421
327
 
422
- ### 配置用户联系人列表
423
-
424
- TUIRoomKit 预定会议用户选择列表和会中呼叫用户选择列表默认展示用户关系链列表,批量导入用户关系链请参考以下步骤:
425
-
426
- 步骤1:使用 [账号管理 > 导入多个账号](https://cloud.tencent.com/document/product/269/4919) REST API 接口批量导入用户账号;
427
-
428
- 步骤2:使用 [好友管理 > 导入好友](https://cloud.tencent.com/document/product/269/8301) REST API 接口批量导入用户关系链;
429
-
430
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100027337918/32637a07d73111f0ab505254001c06ec.png)
431
-
432
-
433
328
  ## 常见问题
434
329
 
435
330
  #### **TUIRoomKit 在本地开发时使用正常,但部署到线上环境后无法**正常采集用户的摄像头或麦克风设备**?**
@@ -458,7 +353,7 @@ import { useRoomEngine } from 'tuikit-atomicx-vue3/room';
458
353
  const { roomEngine } = useRoomEngine();
459
354
 
460
355
  TUIRoomEngine.once('ready', () => {
461
- const trtcCloud = roomEngine.instance?.getTRTCCloud();
356
+ const trtcCloud = roomEngine.instance?.getTRTCCloud();
462
357
  trtcCloud.callExperimentalAPI(JSON.stringify({
463
358
  api: 'setNetworkProxy',
464
359
  params: {