@tencentcloud/sdk-mcp 1.7.6 → 1.7.8
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/CHANGELOG.md +18 -0
- package/README.md +8 -5
- package/index.js +23 -1
- package/knowledge/doc-url-resolver.js +16 -9
- package/knowledge/embedding/build-vectors.js +92 -0
- package/knowledge/embedding/embed-model.js +41 -0
- package/knowledge/embedding/vector-augment.js +126 -0
- package/knowledge/embedding/vector-index.js +70 -0
- package/knowledge/search/exact-lookup.js +145 -16
- package/knowledge/search/filter-pool.js +68 -32
- package/knowledge/search/requires-framework.js +1 -1
- package/knowledge/search/search-core.js +18 -12
- package/knowledge/search/search-knowledge.js +24 -34
- package/knowledge/search/search-pass.js +373 -168
- package/knowledge/search/url-row-scorer.js +24 -6
- package/package.json +3 -1
- package/resource/index/manifest.json +1 -1
- package/resource/index/vectors/index.json +4 -0
- package/resource/integration/chat/preset/react/integration.md +9 -5
- package/resource/integration/chat/preset/uni-app/integration.md +4 -0
- package/resource/integration/chat/preset/vue/integration.md +10 -6
- package/resource/integration/roomkit/preset/vue/integration.md +154 -208
- package/resource/knowledge/callkit/preset/miniprogram/integration.md +2 -1
- package/resource/knowledge/chat/preset/ios-uikit/integration.md +0 -16
- package/resource/knowledge/chat/preset/react/h5/integration.md +16 -5
- package/resource/knowledge/chat/preset/vue/features/conversation-list.md +6 -3
- package/resource/knowledge/chat/preset/vue/h5/integration.md +7 -4
- package/resource/knowledge/push/config/android/honor.md +16 -1
- package/resource/knowledge/push/config/android/huawei.md +20 -4
- package/resource/knowledge/push/config/android/meizu.md +19 -5
- package/resource/knowledge/push/config/android/vivo.md +20 -1
- package/resource/knowledge/push/config/harmonyos.md +21 -5
- package/resource/knowledge/push/integration/flutter.md +1 -1
- package/resource/knowledge/roomkit/preset/uniapp-app/integration.md +18 -14
- package/resource/knowledge/rtcengine/web/plugin/23-advanced-support-detection.md +30 -0
- package/resource/knowledge/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
- package/resource/knowledge/rtcengine/web/plugin/35-advanced-ai-denoiser.md +1 -1
- package/resource/knowledge/rtcengine/web/plugin/36-advanced-virtual-background.md +4 -0
- package/resource/knowledge/trtc/android/TRTCCloud.md +94 -85
- package/resource/knowledge/trtc/android/TRTCCloudDef.md +48 -46
- package/resource/knowledge/trtc/android/TRTCCloudListener.md +48 -48
- package/resource/knowledge/trtc/android/TXAudioEffectManager.md +18 -18
- package/resource/knowledge/trtc/android/TXDeviceManager.md +4 -4
- package/resource/knowledge/trtc/android/TXLiteAVCode.md +1 -0
- package/resource/knowledge/trtc/c++/ITRTCCloud.md +90 -90
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +18 -18
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +9 -9
- package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +47 -47
- package/resource/knowledge/trtc/c++/TRTCTypeDef.md +47 -45
- package/resource/knowledge/trtc/c++/TXLiteAVCode.md +1 -0
- package/resource/knowledge/trtc/ios/TRTCCloud.md +93 -93
- package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +50 -50
- package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +8 -8
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +9 -9
- package/resource/knowledge/trtc/ios/TXLiteAVCode.md +1 -0
- package/resource/knowledge/trtc/ios/TXLiveSDKTypeDef.md +48 -46
- package/server-config.js +20 -6
- package/server.js +1 -1
- package/tools/common/present_framework_choice.js +1 -1
- package/tools/common/search_trtc_knowledge.js +20 -1
- package/utils/normalize-error.js +13 -0
- package/utils/preflight-route.js +8 -0
- package/utils/report-cls-client.js +2 -2
- package/utils/report-es-client.js +1 -1
|
@@ -78,7 +78,7 @@ npm create vite@latest
|
|
|
78
78
|
|
|
79
79
|
【shell】
|
|
80
80
|
``` bash
|
|
81
|
-
npm install @tencentcloud/chat-uikit-react @tencentcloud/uikit-base-component-react
|
|
81
|
+
npm install @tencentcloud/chat-uikit-react @tencentcloud/uikit-base-component-react @trtc/calls-uikit-react
|
|
82
82
|
```
|
|
83
83
|
|
|
84
84
|
### 步骤2:引入组件
|
|
@@ -163,6 +163,7 @@ npm install @tencentcloud/chat-uikit-react @tencentcloud/uikit-base-component-re
|
|
|
163
163
|
``` typescript
|
|
164
164
|
import { useState } from 'react';
|
|
165
165
|
import { LoginStatus, UIKitProvider, useLoginState } from '@tencentcloud/chat-uikit-react';
|
|
166
|
+
import { TUICallKit } from '@trtc/calls-uikit-react';
|
|
166
167
|
import { LoginView } from './LoginView';
|
|
167
168
|
import { ChatLayout } from './ChatLayout';
|
|
168
169
|
import { languageResources } from './i18n';
|
|
@@ -177,9 +178,14 @@ npm install @tencentcloud/chat-uikit-react @tencentcloud/uikit-base-component-re
|
|
|
177
178
|
const [language, setLanguage] = useState('zh-CN');
|
|
178
179
|
|
|
179
180
|
return (
|
|
180
|
-
<UIKitProvider language={language} languageResources={languageResources}>
|
|
181
|
+
<UIKitProvider theme="light" language={language} languageResources={languageResources}>
|
|
181
182
|
{isLogined
|
|
182
|
-
?
|
|
183
|
+
? (
|
|
184
|
+
<>
|
|
185
|
+
<ChatLayout onChangeLanguage={setLanguage} />
|
|
186
|
+
<TUICallKit className="call-kit" />
|
|
187
|
+
</>
|
|
188
|
+
)
|
|
183
189
|
: <LoginView language={language} onChangeLanguage={setLanguage} />}
|
|
184
190
|
</UIKitProvider>
|
|
185
191
|
);
|
|
@@ -833,10 +839,10 @@ npm run dev
|
|
|
833
839
|
### 音视频通话
|
|
834
840
|
|
|
835
841
|
> **说明:**
|
|
836
|
-
> TUICallKit 是腾讯云推出的一款音视频通话 UI 组件,通过集成该组件,您只需要编写几行代码就可以在聊天应用中体验音视频通话功能。
|
|
837
|
-
>
|
|
842
|
+
> - TUICallKit 是腾讯云推出的一款音视频通话 UI 组件,通过集成该组件,您只需要编写几行代码就可以在聊天应用中体验音视频通话功能。
|
|
838
843
|
> 更多详细信息可参考:音视频通话-开通服务。
|
|
839
844
|
>
|
|
845
|
+
> - 在上面的过程中已经集成了 TUICallKit,若不需要音视频通话功能,可参考以下过程移除集成代码。
|
|
840
846
|
|
|
841
847
|
1. 安装 `@trtc/calls-uikit-react` 依赖
|
|
842
848
|
|
|
@@ -882,6 +888,11 @@ npm run dev
|
|
|
882
888
|
|
|
883
889
|
export default App;
|
|
884
890
|
```
|
|
891
|
+
3. 如果不需要集成音视频通话,可以通过移除 `<TUICallKit />`、修改 MessageInputH5 组件的 `actions` 属性,来移除音视频通话的能力。
|
|
892
|
+
|
|
893
|
+
``` typescript
|
|
894
|
+
<MessageInputH5 actions={['EmojiPicker', 'ImagePicker', 'VideoPicker', 'FilePicker']} />
|
|
895
|
+
```
|
|
885
896
|
|
|
886
897
|
### 云端搜索
|
|
887
898
|
|
|
@@ -274,8 +274,11 @@ const handleFilterClick = (filterType: FilterType) => {
|
|
|
274
274
|
|PlaceholderLoadError|Component|<PlaceHolder type={PlaceHolderTypes.WRONG} />|自定义会话列表加载错误时的占位元素。|
|
|
275
275
|
|filter|(conversationList: ConversationInfo[]) => ConversationInfo[]|-|用于筛选会话列表的函数。|
|
|
276
276
|
|sort|(conversationList: ConversationModel[]) => ConversationModel[]|-|用于排序会话列表的函数。|
|
|
277
|
-
|onConversationSelect|(conversation: ConversationInfo) => void;|-|点击会话后的回调函数,参数为所点击的会话对象。|
|
|
278
|
-
|onBeforeCreateConversation|(params: CreateParams) => CreateParams;|-|创建会话前执行的自定义操作,参数为创建会话所需的参数。|
|
|
279
|
-
|onConversationCreate|(conversation: ConversationInfo) => void;|-|会话创建后的回调函数,参数为创建的会话对象。|
|
|
280
277
|
|className|String|-|指定根元素类的 CSS 自定义名称。|
|
|
281
278
|
|style|CSSProperties|-|指定根元素样式的自定义样式。|
|
|
279
|
+
|
|
280
|
+
## Emits
|
|
281
|
+
| conversation-select | (conversation: ConversationInfo) => void; | - | 点击会话后的回调函数,参数为所点击的会话对象。 |
|
|
282
|
+
| --- | --- | --- | --- |
|
|
283
|
+
| before-create-conversation | (params: CreateParams) => CreateParams; | - | 创建会话前执行的自定义操作,参数为创建会话所需的参数。 |
|
|
284
|
+
| conversation-created | (conversation: ConversationInfo) => void; | - | 会话创建后的回调函数,参数为创建的会话对象。 |
|
|
@@ -80,7 +80,7 @@ npm create vite@latest
|
|
|
80
80
|
|
|
81
81
|
【shell】
|
|
82
82
|
``` bash
|
|
83
|
-
npm install @tencentcloud/chat-uikit-vue3 @tencentcloud/uikit-base-component-vue3
|
|
83
|
+
npm install @tencentcloud/chat-uikit-vue3 @tencentcloud/uikit-base-component-vue3 @trtc/calls-uikit-vue
|
|
84
84
|
```
|
|
85
85
|
|
|
86
86
|
### 步骤2:引入组件
|
|
@@ -163,6 +163,7 @@ npm install @tencentcloud/chat-uikit-vue3 @tencentcloud/uikit-base-component-vue
|
|
|
163
163
|
<script setup lang="ts">
|
|
164
164
|
import { ref, watch } from 'vue';
|
|
165
165
|
import { UIKitProvider, useLoginState } from '@tencentcloud/chat-uikit-vue3';
|
|
166
|
+
import { TUICallKit } from '@trtc/calls-uikit-vue';
|
|
166
167
|
import LoginView from './LoginView.vue';
|
|
167
168
|
import ChatLayout from './ChatLayout.vue';
|
|
168
169
|
import { languageResources } from './i18n';
|
|
@@ -184,8 +185,10 @@ npm install @tencentcloud/chat-uikit-vue3 @tencentcloud/uikit-base-component-vue
|
|
|
184
185
|
<UIKitProvider theme="light" :language="language" :language-resources="languageResources">
|
|
185
186
|
<LoginView v-if="loginStatus !== LoginStatus.LOGINED" />
|
|
186
187
|
<ChatLayout v-else />
|
|
188
|
+
<TUICallKit class="call-kit" />
|
|
187
189
|
</UIKitProvider>
|
|
188
190
|
</template>
|
|
191
|
+
|
|
189
192
|
```
|
|
190
193
|
4. 配置登录页和聊天页面。
|
|
191
194
|
|
|
@@ -580,10 +583,10 @@ npm run dev
|
|
|
580
583
|
### 音视频通话
|
|
581
584
|
|
|
582
585
|
> **说明:**
|
|
583
|
-
> TUICallKit 是腾讯云推出的一款音视频通话 UI 组件,通过集成该组件,您只需要编写几行代码就可以在聊天应用中体验音视频通话功能。
|
|
584
|
-
>
|
|
586
|
+
> - TUICallKit 是腾讯云推出的一款音视频通话 UI 组件,通过集成该组件,您只需要编写几行代码就可以在聊天应用中体验音视频通话功能。
|
|
585
587
|
> 更多详细信息可参考:音视频通话-开通服务。
|
|
586
588
|
>
|
|
589
|
+
> - 在上面的过程中已经集成了 TUICallKit,若不需要音视频通话功能,可参考以下过程移除集成代码。
|
|
587
590
|
|
|
588
591
|
1. 安装 @trtc/calls-uikit-vue 依赖。
|
|
589
592
|
|
|
@@ -631,7 +634,7 @@ npm run dev
|
|
|
631
634
|
</template>
|
|
632
635
|
|
|
633
636
|
```
|
|
634
|
-
3.
|
|
637
|
+
3. 如果不需要集成音视频通话,可以通过移除 `<TUICallKit />`、修改 MessageInputH5 组件的 `actions` 属性,来移除音视频通话的能力。
|
|
635
638
|
|
|
636
639
|
``` typescript
|
|
637
640
|
<MessageInputH5 class="chat-pane__input" :actions="['EmojiPicker', 'ImagePicker', 'VideoPicker', 'FilePicker']" />
|
|
@@ -57,7 +57,22 @@
|
|
|
57
57
|
|
|
58
58
|
### 配置回执和点击统计
|
|
59
59
|
|
|
60
|
-
如需统计消息触达或点击数据,请在厂商配置阶段设置回执地址为:`https
|
|
60
|
+
如需统计消息触达或点击数据,请在厂商配置阶段设置回执地址为:`https://<domain>/v3/offline_push_report/honor`,其中 domain 取决于你的站点。目前支持的站点有:
|
|
61
|
+
- 中 国: `https://api.im.qcloud.com/v3/offline_push_report/honor`
|
|
62
|
+
|
|
63
|
+
- 新加坡: `https://apisgp.im.qcloud.com/v3/offline_push_report/honor`
|
|
64
|
+
|
|
65
|
+
- 德 国: `https://apiger.im.qcloud.com/v3/offline_push_report/honor`
|
|
66
|
+
|
|
67
|
+
- 美 国: `https://apiusa.im.qcloud.com/v3/offline_push_report/honor`
|
|
68
|
+
|
|
69
|
+
- 韩 国: `https://apikr.im.qcloud.com/v3/offline_push_report/honor`
|
|
70
|
+
|
|
71
|
+
- 印 尼:`https://apiidn.im.qcloud.com/v3/offline_push_report/honor`
|
|
72
|
+
|
|
73
|
+
- 日 本: `https://apijpn.im.qcloud.com/v3/offline_push_report/honor`
|
|
74
|
+
|
|
75
|
+
- 中 东: `https://apiksa.im.qcloud.com/v3/offline_push_report/honor`
|
|
61
76
|
|
|
62
77
|
## 合规提示
|
|
63
78
|
|
|
@@ -55,11 +55,27 @@
|
|
|
55
55
|
|
|
56
56
|
### 配置回执和点击统计
|
|
57
57
|
|
|
58
|
-
|
|
58
|
+
如需统计消息触达或点击数据,请在厂商配置阶段设置回执地址为:`https://<domain>/v3/offline_push_report/huawei`,其中 domain 取决于你的站点。目前支持的站点有:
|
|
59
|
+
- 中 国: `https://api.im.qcloud.com/v3/offline_push_report/huawei`
|
|
59
60
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
61
|
+
- 新加坡: `https://apisgp.im.qcloud.com/v3/offline_push_report/huawei`
|
|
62
|
+
|
|
63
|
+
- 德 国: `https://apiger.im.qcloud.com/v3/offline_push_report/huawei`
|
|
64
|
+
|
|
65
|
+
- 美 国: `https://apiusa.im.qcloud.com/v3/offline_push_report/huawei`
|
|
66
|
+
|
|
67
|
+
- 韩 国: `https://apikr.im.qcloud.com/v3/offline_push_report/huawei`
|
|
68
|
+
|
|
69
|
+
- 印 尼:`https://apiidn.im.qcloud.com/v3/offline_push_report/huawei`
|
|
70
|
+
|
|
71
|
+
- 日 本: `https://apijpn.im.qcloud.com/v3/offline_push_report/huawei`
|
|
72
|
+
|
|
73
|
+
- 中 东: `https://apiksa.im.qcloud.com/v3/offline_push_report/huawei`
|
|
74
|
+
|
|
75
|
+
> **注意:**
|
|
76
|
+
>
|
|
77
|
+
> 华为推送证书 ID <= 11344 时,使用华为推送 v2 版本接口,不支持触达和点击回执,请重新生成更新证书 ID 。
|
|
78
|
+
>
|
|
63
79
|
|
|
64
80
|
## 消息分类限制对推送效果的影响
|
|
65
81
|
|
|
@@ -56,13 +56,27 @@
|
|
|
56
56
|
|
|
57
57
|
### 配置回执和点击统计
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
如需统计消息触达或点击数据,请在厂商配置阶段设置回执地址为:`https://<domain>/v3/offline_push_report/meizu`,其中 domain 取决于你的站点。目前支持的站点有:
|
|
60
|
+
- 中 国: `https://api.im.qcloud.com/v3/offline_push_report/meizu`
|
|
60
61
|
|
|
61
|
-
|
|
62
|
+
- 新加坡: `https://apisgp.im.qcloud.com/v3/offline_push_report/meizu`
|
|
62
63
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
- 德 国: `https://apiger.im.qcloud.com/v3/offline_push_report/meizu`
|
|
65
|
+
|
|
66
|
+
- 美 国: `https://apiusa.im.qcloud.com/v3/offline_push_report/meizu`
|
|
67
|
+
|
|
68
|
+
- 韩 国: `https://apikr.im.qcloud.com/v3/offline_push_report/meizu`
|
|
69
|
+
|
|
70
|
+
- 印 尼:`https://apiidn.im.qcloud.com/v3/offline_push_report/meizu`
|
|
71
|
+
|
|
72
|
+
- 日 本: `https://apijpn.im.qcloud.com/v3/offline_push_report/meizu`
|
|
73
|
+
|
|
74
|
+
- 中 东: `https://apiksa.im.qcloud.com/v3/offline_push_report/meizu`
|
|
75
|
+
|
|
76
|
+
> **注意:**
|
|
77
|
+
>
|
|
78
|
+
> 打开回执开关后,请务必确保回执地址正确配置。不配置或者配置地址错误,都会影响推送功能。
|
|
79
|
+
>
|
|
66
80
|
|
|
67
81
|
## 消息分类限制对推送效果的影响
|
|
68
82
|
|
|
@@ -49,7 +49,26 @@
|
|
|
49
49
|
|
|
50
50
|
### 配置回执和点击统计
|
|
51
51
|
|
|
52
|
-
|
|
52
|
+
如需统计消息触达或点击数据,请在厂商配置阶段设置 App 回执地址为:`https://<domain>/v3/offline_push_report/vivo`,并在腾讯云控制台设置回执 ID,其中 domain 取决于你的站点。目前支持的站点有:
|
|
53
|
+
- 中 国: `https://api.im.qcloud.com/v3/offline_push_report/vivo`
|
|
54
|
+
|
|
55
|
+
- 新加坡: `https://apisgp.im.qcloud.com/v3/offline_push_report/vivo`
|
|
56
|
+
|
|
57
|
+
- 德 国: `https://apiger.im.qcloud.com/v3/offline_push_report/vivo`
|
|
58
|
+
|
|
59
|
+
- 美 国: `https://apiusa.im.qcloud.com/v3/offline_push_report/vivo`
|
|
60
|
+
|
|
61
|
+
- 韩 国: `https://apikr.im.qcloud.com/v3/offline_push_report/vivo`
|
|
62
|
+
|
|
63
|
+
- 印 尼:`https://apiidn.im.qcloud.com/v3/offline_push_report/vivo`
|
|
64
|
+
|
|
65
|
+
- 日 本: `https://apijpn.im.qcloud.com/v3/offline_push_report/vivo`
|
|
66
|
+
|
|
67
|
+
- 中 东: `https://apiksa.im.qcloud.com/v3/offline_push_report/vivo`
|
|
68
|
+
|
|
69
|
+
|**回调地址配置**|**腾讯云即时通信 IM 控制台**|
|
|
70
|
+
|---------|---------|
|
|
71
|
+
|||
|
|
53
72
|
|
|
54
73
|
## 消息分类限制对推送效果的影响
|
|
55
74
|
|
|
@@ -14,7 +14,14 @@
|
|
|
14
14
|
### 步骤1:开启推送服务
|
|
15
15
|
1. 登录 [AppGallery Connect](https://developer.huawei.com/consumer/cn/service/josp/agc/index.html#/),在首页选择**开发与服务**,选择对应的项目,单击**立即开通**以开启推送服务。
|
|
16
16
|
|
|
17
|
-
2.
|
|
17
|
+
2. 若项目当前未配置数据处理位置,请在提示中点击**确定**,会弹出设置数据处理位置的弹窗。完成数据处理位置的设置,点击**确定**。
|
|
18
|
+
|
|
19
|
+
5-10 分钟后访问 [AppGallery Connect](https://developer.huawei.com/consumer/cn/service/josp/agc/index.html),**项目设置 > 开放能力管理** 中推送服务能力会显示已勾选。同时,**增长 > 推送服务**中“推送服务”会自动开通。
|
|
20
|
+
|
|
21
|
+
> **说明:**
|
|
22
|
+
>
|
|
23
|
+
> 详情请参考 HarmonyOS 官方文档:[开通推送服务](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-config-setting)。
|
|
24
|
+
>
|
|
18
25
|
|
|
19
26
|
### 步骤2:证书与签名申请
|
|
20
27
|
1. **证书申请:调试阶段必须申请调试证书,发布阶段必须申请发布证书。**
|
|
@@ -42,7 +49,7 @@
|
|
|
42
49
|
|
|
43
50
|
> **说明:**
|
|
44
51
|
>
|
|
45
|
-
> 关于各类型设备如何获取 UDID,请参见 [UDID 获取方法](https://developer.huawei.com/consumer/cn/doc/app/agc-help-add-device-0000002283189937#section67331926102911)。
|
|
52
|
+
> 关于各类型设备如何获取 UDID,请参见 HarmonyOS 官方文档:[UDID 获取方法](https://developer.huawei.com/consumer/cn/doc/app/agc-help-add-device-0000002283189937#section67331926102911)。
|
|
46
53
|
>
|
|
47
54
|
|
|
48
55
|
3. **申请 Profile 文件:调试阶段必须申请调试 Profile 文件,发布阶段必须申请发布 Profile 文件。**
|
|
@@ -59,22 +66,31 @@
|
|
|
59
66
|
|
|
60
67
|
5. **调试阶段自动签名(仅适用调试阶段,不适用发布阶段)**
|
|
61
68
|
|
|
62
|
-
针对开发调试场景,从 DevEco Studio 6.0.0 Beta5 版本开始,新增了更高效的自动签名以及开通 Push Kit 开放能力方案,请参考
|
|
69
|
+
针对开发调试场景,从 DevEco Studio 6.0.0 Beta5 版本开始,新增了更高效的自动签名以及开通 Push Kit 开放能力方案,请参考 HarmonyOS 官方文档:[开通推送服务](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-config-setting)。
|
|
63
70
|
|
|
64
71
|
### 步骤3:创建 IM 控制台证书凭证
|
|
65
72
|
1. 登录 [API Console](https://developer.huawei.com/consumer/cn/console/overview),在页面左侧的导航栏中,单击**我的 API**,确保所选项目已开通推送服务(Push Kit),若未开通,请单击右侧 申请新 HMS API 服务 进行**申请新 HMS API 服务。**
|
|
66
73
|
|
|
67
74
|
2. 单击左侧导航栏中 **API 服务** > **凭证**,在项目下单击**服务账号密钥**下的**创建凭证。**
|
|
68
75
|
|
|
69
|
-
3.
|
|
76
|
+
3. 填写必填项,并单击**生成公私钥**。创建并下载 JSON,下载后的文件就是您的 Service Account 凭据文件。
|
|
70
77
|
|
|
71
78
|
4. 将下载好的文件保存,待下一步 IM 控制台配置使用。
|
|
72
79
|
|
|
80
|
+
> **说明:**
|
|
81
|
+
>
|
|
82
|
+
> 详情请参考 HarmonyOS 官方文档:[API 服务操作指南](https://developer.huawei.com/consumer/cn/doc/start/api-0000001062522591)。
|
|
83
|
+
>
|
|
84
|
+
|
|
73
85
|
### 步骤4:申请场景化权益
|
|
74
86
|
|
|
75
87
|
Push Kit 支持多种场景化消息类型,其中部分场景化消息类型需要您申请特殊权益才能正常发送,像 IM 消息类型场景。
|
|
76
88
|
|
|
77
|
-
登录 [AppGallery Connect](https://developer.huawei.com/consumer/cn/service/josp/agc/index.html)
|
|
89
|
+
登录 [AppGallery Connect](https://developer.huawei.com/consumer/cn/service/josp/agc/index.html),选择**开发与服务**,单击**推送服务**,在**配置**页,单击申请自分类权益。按照提示申请并激活。
|
|
90
|
+
|
|
91
|
+
> **说明:**
|
|
92
|
+
> 详情请参考 HarmonyOS 官方文档:[申请推送场景化消息权益](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/push-apply-right)。
|
|
93
|
+
>
|
|
78
94
|
|
|
79
95
|
## 腾讯云 IM 控制台配置
|
|
80
96
|
1. 登录腾讯云 [即时通信 IM 控制台](https://console.qcloud.com/avc) ,在**推送服务 Push > 推送设置 > 厂商配置** 中添加 HarmonyOS 证书。
|
|
@@ -37,7 +37,7 @@ flutter pub add tencent_cloud_chat_push
|
|
|
37
37
|
|
|
38
38
|
【Android】
|
|
39
39
|
|
|
40
|
-
请先按 Android TIMPush
|
|
40
|
+
请先按 Android 集成 TIMPush 和 Android 厂商通道集成 完成原生工程配置。
|
|
41
41
|
|
|
42
42
|
与原生 Android 的差异如下,请按下方完成:
|
|
43
43
|
1. **厂商通道包**:Flutter 插件已处理 TIMPush 基础依赖,**不要**再添加 `com.tencent.timpush:timpush` / `tuicore`。只需按需引入目标厂商通道包。
|
|
@@ -1,24 +1,28 @@
|
|
|
1
1
|
本文档介绍如何在 uniapp 业务项目中集成 TUIRoomKit,快速获得开箱即用的多人音视频会议能力。
|
|
2
2
|
|
|
3
3
|
## 前提条件
|
|
4
|
+
- **IDE**: HBuilderX 版本 ≥ 4.66。
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
- **Vue 版本**: Vue3。
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
- **SDKAppID**:应用标识(必填),腾讯云基于 SDKAppID 完成计费统计。
|
|
8
|
+
- **Node 版本**:Node.js ≥ 18.0.0。
|
|
9
9
|
|
|
10
|
-
-
|
|
10
|
+
- **支持平台**: 仅支持打包为 Android / iOS App,不支持 H5 和小程序。
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
- **IDE**: HBuilderX 升级到新版本。
|
|
12
|
+
- **支持项目**: uni-app 项目。
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
14
|
+
> **说明:**
|
|
15
|
+
>
|
|
16
|
+
> Vue2 暂不支持,可通过 [视频会议 SDK 接入反馈问卷](https://wj.qq.com/s2/27395009/ac34/) 进行反馈。
|
|
17
|
+
>
|
|
18
|
+
> uniappx 暂不支持,可通过 [视频会议 SDK 接入反馈问卷](https://wj.qq.com/s2/27395009/ac34/) 进行反馈。
|
|
19
|
+
>
|
|
20
|
+
> H5 和小程序项目,如有需要请参考以下替代方案:
|
|
21
|
+
>
|
|
22
|
+
> - 打包 Web H5,可参考:Web&H5(Vue3)。
|
|
23
|
+
> - 打包小程序,可参考:uni-app(小程序)。
|
|
24
|
+
> 接入过程中遇到任何卡点或有改进建议,欢迎通过 [视频会议 SDK 接入反馈问卷](https://wj.qq.com/s2/27395009/ac34/) 反馈,官方会及时跟进处理。
|
|
25
|
+
>
|
|
22
26
|
|
|
23
27
|
## 集成步骤
|
|
24
28
|
|
|
@@ -176,7 +180,7 @@ cp -r uni_modules/tuikit-atomic-x/quickstart_room/static/* static/ && cp -r uni_
|
|
|
176
180
|
在 `pages/login/login.vue` 中,填入 `SDKAppID`、 `userID`、`SecretKey`,点击**登录**。
|
|
177
181
|
| 参数 | 类型 | 说明 |
|
|
178
182
|
| --- | --- | --- |
|
|
179
|
-
| SDKAppID | Number | SDKAppID 是 RoomKit 客户应用的唯一标识。您可以在 <a href="https://console.cloud.tencent.com/trtc">TRTC 控制台 > 应用管理</a> 创建新应用获取 。<br><strong>说明:</strong><br
|
|
183
|
+
| SDKAppID | Number | SDKAppID 是 RoomKit 客户应用的唯一标识。您可以在 <a href="https://console.cloud.tencent.com/trtc">TRTC 控制台 > 应用管理</a> 创建新应用获取 。<br><strong>说明:</strong><br>- SDKAppID 是 RoomKit 客户应用的唯一标识。每个独立的 App 都应单独申请一个 SDKAppID。不同 SDKAppID 之间天然隔离、互不相通,请勿混用。<br>- 开始使用前,<strong>请先领取 TUIRoomKit 体验版</strong>,领取方式见「开通服务 」。 |
|
|
180
184
|
| SecretKey | String | SecretKey 是 RoomKit 客户应用的密钥。您可以在 <a href="https://console.cloud.tencent.com/trtc">TRTC 控制台 > 应用管理</a> 对应应用获取。<br><strong>安全提示:</strong><br>- 项目示例支持通过 <code>genTestUserSig</code> 函数生成 <code>userSig</code>。该方法中 <code>SecretKey</code> 很容易被反编译逆向破解,一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量。<strong>该方法仅适合本地跑通功能调试</strong>。 正确的 UserSig 签发方式请参见 <a href="https://cloud.tencent.com/document/product/647/17275#formal">服务端生成 UserSig</a>。<br>- 敏感信息(SecretKey)仅用于 Demo 测试,不可提交到代码仓库或用于生产环境。 |
|
|
181
185
|
| userID | String | 用户的唯一标识符,由您定义,只能包含大小写字母(a-z,A-Z)、数字(0-9)、下划线和连字符。 |
|
|
182
186
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
|
|
1
2
|
## 浏览器环境检测
|
|
2
3
|
|
|
3
4
|
在开始音视频通话之前,建议您先使用 {@link TRTC.isSupported TRTC.isSupported} 接口检测 SDK 是否支持当前网页。如果 SDK 不支持当前浏览器,建议用户使用最新版的 Chrome 浏览器、Edge 浏览器、Safari 浏览器、Firefox 浏览器。
|
|
@@ -21,6 +22,15 @@ TRTC.isSupported().then(checkResult => {
|
|
|
21
22
|
|
|
22
23
|
## 通话前设备检测
|
|
23
24
|
|
|
25
|
+
用户的设备环境各不相同:有的电脑没有摄像头,有的使用了虚拟摄像头,有的没有授权,也有的网络质量差难以支撑完成一次高质量的通话。如果不提前检测,就只能等用户进了房才暴露成通话异常。
|
|
26
|
+
|
|
27
|
+
因此我们建议您在通话前进行设备检测,以避免用户进入房间后遇到问题。把这些问题提前到用户还能自己处理的时间点:
|
|
28
|
+
|
|
29
|
+
- 用户没有摄像头或麦克风。进房前就告知用户,而不是进了房才发现别人看不到、听不到自己。
|
|
30
|
+
- 摄像头或麦克风异常。摄像头画面预览和实时音量条可以让用户确认设备是否正常,不正常时可以切换到其他设备。
|
|
31
|
+
- 没有摄像头或麦克风权限。引导用户完成权限授予,而不是进房后碰到采集失败。
|
|
32
|
+
- 网络质量差。用户在进房前就能了解自己的网络质量,通话体验不好时也能理解是网络的原因。参见[通话前的网络质量检测](tutorial-24-advanced-network-quality.md)。
|
|
33
|
+
|
|
24
34
|
### 方案一:使用设备检测插件(包括默认 UI)
|
|
25
35
|
|
|
26
36
|
检测用户的媒体设备(摄像头、麦克风、扬声器)以及网络,建议在用户进房之前使用,支持移动端适配。
|
|
@@ -44,6 +54,26 @@ const options = {
|
|
|
44
54
|
const resultWithNetwork = await trtc.startPlugin('DeviceDetector', options);
|
|
45
55
|
```
|
|
46
56
|
|
|
57
|
+
#### 进房时使用检测通过的摄像头和麦克风
|
|
58
|
+
|
|
59
|
+
设备检测的过程也是用户挑选摄像头和麦克风的过程,进房时要沿用这个选择。采集时不传 `deviceId`,SDK 会使用系统默认设备,而默认设备不一定就是用户刚刚确认过的那一台,用户可能会用一个自己没验证过的设备发布音视频。
|
|
60
|
+
|
|
61
|
+
`trtc.startPlugin('DeviceDetector')` 的返回值就是检测结果,其中 `result.camera.device` 和 `result.microphone.device` 是用户在检测过程中看到并确认的设备,进房采集时把它们的 `deviceId` 传进去:
|
|
62
|
+
|
|
63
|
+
```javascript
|
|
64
|
+
const result = await trtc.startPlugin('DeviceDetector');
|
|
65
|
+
const cameraId = result.camera?.device?.deviceId;
|
|
66
|
+
const microphoneId = result.microphone?.device?.deviceId;
|
|
67
|
+
|
|
68
|
+
await trtc.enterRoom({ roomId, sdkAppId, userId, userSig });
|
|
69
|
+
|
|
70
|
+
// 使用用户在设备检测中确认过的摄像头和麦克风采集
|
|
71
|
+
await trtc.startLocalVideo({ option: { cameraId } });
|
|
72
|
+
await trtc.startLocalAudio({ option: { microphoneId } });
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
用户在检测中跳过或检测失败的步骤,返回结果里 `isSuccess` 为 false,`deviceId` 可能为空串。先判断 `isSuccess`,为空时不传该参数,让 SDK 使用默认设备。方案二自定义 UI 同理:从 `TRTC.getCameraList()` / `TRTC.getMicrophoneList()` 拿到 `deviceId`,或者记录用户在检测中选择的设备,用同样的方式传入。
|
|
76
|
+
|
|
47
77
|
#### API
|
|
48
78
|
|
|
49
79
|
##### trtc.startPlugin('DeviceDetector', options)
|
|
@@ -399,4 +399,4 @@ const trtc = TRTC.create({
|
|
|
399
399
|
|
|
400
400
|
- [TRTC Web SDK API 文档](https://web.sdk.qcloud.com/trtc/webrtc/v5/doc/zh-cn/index.html)
|
|
401
401
|
- [包月套餐计费说明](https://cloud.tencent.com/document/product/647/85386)
|
|
402
|
-
- [在线 Demo 体验](https://web.sdk.qcloud.com/trtc/webrtc/demo/
|
|
402
|
+
- [在线 Demo 体验](https://web.sdk.qcloud.com/trtc/webrtc/v5/demo/samples/basic-features/quick-start/index.html)
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
AI 降噪插件能够降低通话中的噪声,减少环境噪声对通话的影响。可以更好地抑制通话过程中的键盘声、碰撞声、敲击声等噪声,特别适用于对瞬时噪声敏感的场景,例如会议场景中的短时噪声。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
本文将介绍如何在开发 TRTC 应用中给本地音频流应用 AI 降噪的方法。
|
|
6
6
|
|
|
7
7
|
## 前提条件
|
|
8
8
|
|
|
@@ -13,6 +13,10 @@
|
|
|
13
13
|
| Web | Windows | Chrome 90+<br>Firefox 90+<br>Edge 97+ | 30 | 内存:16GB<br>CPU:i5-10500<br>GPU:独显 2GB | 建议使用最新版 Chrome 浏览器<br><b> (开启浏览器硬件加速)</b> |
|
|
14
14
|
| 15 | 内存:8GB<br>CPU:i3-8300<br>GPU:intel 核显 1GB | | | | |
|
|
15
15
|
| Mac | Chrome 98+<br>Firefox 96+<br>Safari 15+ | 30 | 2019年 MacBook<br>内存:16GB(2667MHz)<br>CPU:i7(6核 2.60GHz)<br>GPU:AMD Radeon 5300M | | |
|
|
16
|
+
| Android | Chrome 90+ | 30 | 高端机型(如高通骁龙 8 Gen1) | 建议使用最新版 Chrome 浏览器<br>(开启浏览器硬件加速)<br>建议提前使用 <code>VirtualBackground.isSupported()</code> 检测是否支持,以检测结果为准 | |
|
|
17
|
+
| 15 | 中低端机型(如联发科天玑 8000-MAX、高通骁龙 660) | | | | |
|
|
18
|
+
| iOS | Safari | 30 | iPhone 13 | 要求 iOS 16 及以上版本(含 iOS 16)<br>建议使用 Safari 浏览器<br>建议提前使用 <code>VirtualBackground.isSupported()</code> 检测是否支持,以检测结果为准 | |
|
|
19
|
+
| 15 | iPhone XR | | | | |
|
|
16
20
|
|
|
17
21
|
## 实现流程
|
|
18
22
|
|