@tencentcloud/sdk-mcp 1.2.9 → 1.3.1
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/package.json +2 -2
- package/resource/doc/chatuikit/faq/common/server.md +54 -0
- package/resource/doc/chatuikit/faq/web_sdk/faq.md +60 -0
- package/resource/doc/chatuikit/react/integration.md +516 -48
- package/resource/doc/chatuikit/react/workflow.md +254 -0
- package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
- package/resource/doc/chatuikit/uniapp-app/integration.md +619 -0
- package/resource/doc/chatuikit/uniapp-app/workflow.md +576 -0
- package/resource/doc/chatuikit/vue/integration.md +511 -129
- package/resource/doc/chatuikit/vue/workflow.md +395 -0
- package/resource/doc/livekit/vue/components/co-guest-panel.md +5 -5
- package/resource/doc/livekit/vue/components/live-view.md +16 -49
- package/resource/doc/livekit/vue/{components/live-list.md → live-list-integration.md} +13 -44
- package/resource/doc/livekit/vue/live-player-desk-integration.md +293 -0
- package/resource/doc/livekit/vue/{components/live-player.md → live-player-h5-integration.md} +118 -110
- package/resource/doc/livekit/vue/{components/broadcast.md → live-pusher-integration.md} +77 -82
- package/resource/doc/livekit/vue/workflow.md +219 -0
- package/resource/doc/trtc/C++/ITRTCCloud.md +4131 -0
- package/resource/doc/trtc/C++/ITRTCStatistics.md +326 -0
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +1306 -0
- package/resource/doc/trtc/C++/ITXDeviceManager.md +1029 -0
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +2743 -0
- package/resource/doc/trtc/C++/TRTCTypeDef.md +3703 -0
- package/resource/doc/trtc/C++/TXLiteAVCode.md +930 -0
- package/resource/doc/trtc/android/TRTCCloud.md +3832 -0
- package/resource/doc/trtc/android/TRTCCloudDef.md +3945 -0
- package/resource/doc/trtc/android/TRTCCloudListener.md +2480 -0
- package/resource/doc/trtc/android/TRTCStatistics.md +296 -0
- package/resource/doc/trtc/android/TXAudioEffectManager.md +1344 -0
- package/resource/doc/trtc/android/TXBeautyManager.md +980 -0
- package/resource/doc/trtc/android/TXDeviceManager.md +441 -0
- package/resource/doc/trtc/android/TXLiteAVCode.md +914 -0
- package/resource/doc/trtc/iOS/TRTCCloud.md +4256 -0
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +2580 -0
- package/resource/doc/trtc/iOS/TRTCStatistics.md +296 -0
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +1117 -0
- package/resource/doc/trtc/iOS/TXBeautyManager.md +986 -0
- package/resource/doc/trtc/iOS/TXDeviceManager.md +1025 -0
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +929 -0
- package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +3798 -0
- package/tools/chat/get-web-chat-integration.js +31 -14
- package/tools/chat/get-web-chat-integration.js.map +1 -1
- package/tools/definitions/get_faq_def.js +4 -0
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_trtc_native_api_def.js +17 -0
- package/tools/definitions/get_trtc_native_api_def.js.map +1 -0
- package/tools/definitions/get_web_chat_uikit_integration_def.js +18 -11
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +9 -3
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +32 -0
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +1 -1
- package/tools/definitions/record_result_def.js +1 -1
- package/tools/definitions/record_result_def.js.map +1 -1
- package/tools/index.js +6 -4
- package/tools/index.js.map +1 -1
- package/tools/live/get-web-live-uikit-integration.js +52 -0
- package/tools/live/get-web-live-uikit-integration.js.map +1 -0
- package/tools/trtc/get-trtc-native-api.js +31 -0
- package/tools/trtc/get-trtc-native-api.js.map +1 -0
- package/utils/generate-structured-result.js +34 -0
- package/utils/generate-structured-result.js.map +1 -0
- package/utils/handle-component-name.js +0 -8
- package/utils/handle-component-name.js.map +1 -1
- package/utils/report-cls-client.js +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/doc/chatuikit/react/chat_window_integration.md +0 -83
- package/resource/doc/chatuikit/vue/chat_window_integration.md +0 -131
- package/tools/chat/get-web-chat-window-integration.js +0 -28
- package/tools/chat/get-web-chat-window-integration.js.map +0 -1
- package/tools/definitions/get_web_chat_window_integration_def.js +0 -26
- package/tools/definitions/get_web_chat_window_integration_def.js.map +0 -1
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
AI 模型必须遵守以下**硬性限制**。
|
|
2
|
-
* **严格文档步骤集成:** 在集成组件时必须按照文档步骤和说明进行,且在 1.1 中不需要执行 `npm run dev` or `pnpm run dev`, 集成完成后按照 1.4 启动项目。
|
|
3
|
-
* **严格使用文档中的示例代码:** 创建文件时必须严格使用文档中的示例代码填充文件, style 标签优先推荐不使用 scoped 属性。
|
|
4
|
-
* **打开默认会话:** 必须使用 `setActiveConversation` 打开 `C2Cadministrator` 会话。
|
|
5
|
-
* **调用工具获取 userSig:** 必须先按照文档下载和集成 TUIKit 代码后,再自动生成测试 userID 并调用工具 `get_usersig` 获取 userSig,userID 不需要拼接时间戳,避免动态计算出错。
|
|
6
|
-
* **账号信息填写:** 获取到 userSig 后把 SDKAppID、userID、 userSig 自动填写到代码中。
|
|
7
|
-
* **禁止创建用户信息配置文件:** 不得自动创建填写 SDKAppID、userID、userSig 的 config 目录或文件。
|
|
8
|
-
|
|
9
|
-
# chat-uikit-vue3 Integration
|
|
10
|
-
|
|
11
|
-
用户的集成需求一般有两种,你必须理性分析需求到底属于哪一种:
|
|
12
|
-
1. 集成聊天窗口:指仅集成 Chat、ChatHeader、MessageList、MessageInput 组件。
|
|
13
|
-
2. 集成通话功能:仅集成聊天基础上,集成通话功能,具体信息必须阅读第 2.1 节 “最佳实践-集成通话功能”。
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
## 1 集成聊天窗口
|
|
17
|
-
|
|
18
|
-
### 1.1 step1:create vue3 project
|
|
19
|
-
|
|
20
|
-
if you don't have a vue3 project, you can use vite create a vue3 project. otherwise, you can skip this step.
|
|
21
|
-
|
|
22
|
-
requirement: vue3: ^3.0.0, nodejs: ^22.0.0.
|
|
23
|
-
|
|
24
|
-
if it is a new project, guide the user to use vite to create a vue3 project manually, and then continue with step 1.2. if it is an existing project, skip this step and continue with step 1.2.
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
pnpm create vite@latest
|
|
28
|
-
# skip some settings
|
|
29
|
-
cd ${your-vue-project-name}
|
|
30
|
-
pnpm install
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### 1.2 step2: install chat-uikit-vue3
|
|
34
|
-
|
|
35
|
-
use npm or pnpm to install @tencentcloud/chat-uikit-vue3@latest @tencentcloud/call-uikit-vue@latest
|
|
36
|
-
|
|
37
|
-
### 1.3 step3: add main content to your project
|
|
38
|
-
```vue
|
|
39
|
-
<template>
|
|
40
|
-
<UIKitProvider>
|
|
41
|
-
<Chat style="flex: 1;">
|
|
42
|
-
<ChatHeader />
|
|
43
|
-
<MessageList />
|
|
44
|
-
<MessageInput />
|
|
45
|
-
</Chat>
|
|
46
|
-
</UIKitProvider>
|
|
47
|
-
</template>
|
|
48
|
-
<script setup lang="ts">
|
|
49
|
-
import { useLoginState, useConversationListState } from '@tencentcloud/chat-uikit-vue3';
|
|
50
|
-
|
|
51
|
-
const userID = ''; // TODO: Replace with your userID
|
|
52
|
-
const SDKAppID = 0; // TODO: Replace with your SDKAppID (Notice: SDKAppID is of type number)
|
|
53
|
-
const userSig = ''; // TODO: Replace with your userSig
|
|
54
|
-
const conversationID = ref('C2Cadministrator'); // define by yourself
|
|
55
|
-
|
|
56
|
-
const { login } = useLoginState();
|
|
57
|
-
const { setActiveConversation } = useConversationListState();
|
|
58
|
-
|
|
59
|
-
login({
|
|
60
|
-
sdkAppId : SDKAppID,
|
|
61
|
-
userId: userID,
|
|
62
|
-
userSig: userSig,
|
|
63
|
-
})
|
|
64
|
-
.then(() => {
|
|
65
|
-
setActiveConversation(conversationID.value);
|
|
66
|
-
})
|
|
67
|
-
.catch(() => {});
|
|
68
|
-
</script>
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### 1.4 step4: start your project
|
|
72
|
-
```bash
|
|
73
|
-
pnpm run dev
|
|
74
|
-
```
|
|
75
|
-
|
|
76
|
-
## 2. 最佳实践
|
|
77
|
-
|
|
78
|
-
以下提到的组件通过 MCP Tools get_component_detail ${componenetname.tolowercase()} 获取。
|
|
79
|
-
以下提到的 state 通过 MCP Tools get_state_detail ${statename.tolowercase()} 获取。
|
|
80
|
-
|
|
81
|
-
重点:
|
|
82
|
-
1. 如果需要集成 ChatSetting 组件,请阅读 ChatHeader 的 ChatHeaderRight 插槽说明。
|
|
83
|
-
2. 由于仅集成聊天不使用 ConversationList,你需要使用 ConversationListState 的 useConversationListState 获取 activeConversation,然后调用 setActiveConversation 设置 activeConversation。
|
|
84
|
-
|
|
85
|
-
### 2.1 最佳实践-集成通话功能
|
|
86
|
-
|
|
87
|
-
集成通话功能需要仅集成聊天基础上,添加通话功能的代码。
|
|
88
|
-
|
|
89
|
-
引入 TUICallKit 组件:
|
|
90
|
-
```vue
|
|
91
|
-
<script setup lang="ts">
|
|
92
|
-
import { TUICallKit } from '@tencentcloud/call-uikit-vue';
|
|
93
|
-
</script>
|
|
94
|
-
```
|
|
95
|
-
|
|
96
|
-
在合适的位置添加 TUICallKit 组件:
|
|
97
|
-
```vue
|
|
98
|
-
<Teleport to="body">
|
|
99
|
-
<TUICallKit style="position: fixed; z-index: 1000;"/>
|
|
100
|
-
</Teleport>
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
重点:
|
|
104
|
-
1. 需要在 ChatHeader 组件的 ChatHeaderRight 插槽中添加通话按钮。
|
|
105
|
-
2. 点击通话按钮调用以下方法:
|
|
106
|
-
2.1 阅读 ConversationListState 文档,通过 activeConversation 判断当前是单聊还是群聊。
|
|
107
|
-
2.2 如果是单聊,通过 `import { TUICallKitServer, TUICallType } from '@tencentcloud/call-uikit-vue';` 引入 TUICallKitService 服务。通过 TUICallKitService 的 `calls` 方法发起通话。
|
|
108
|
-
```ts
|
|
109
|
-
try {
|
|
110
|
-
await TUICallKitServer.calls({
|
|
111
|
-
userIDList: [activeConversation.value.userProfile.userID],
|
|
112
|
-
type: TUICallType.VIDEO_CALL, // or TUICallType.AUDIO_CALL
|
|
113
|
-
});
|
|
114
|
-
} catch (error: any) {
|
|
115
|
-
console.error(`[TUICallKit] Failed to call the groupCall API. Reason:${error}`);
|
|
116
|
-
}
|
|
117
|
-
```
|
|
118
|
-
2.3 如果是群聊,需要阅读 UserPicker 组件文档,建议结合 Dialog 组件,弹出 UserPicker 组件。
|
|
119
|
-
阅读 GroupSettingState 文档,结合 GroupSettingState 的 `getGroupMemberList`、`allMembers` 等属性,获取群成员列表。
|
|
120
|
-
```ts
|
|
121
|
-
try {
|
|
122
|
-
await TUICallKitServer.calls({
|
|
123
|
-
userIDList: selectedItems.map((item: any) => item.key),
|
|
124
|
-
type: TUICallType.VIDEO_CALL, // or TUICallType.AUDIO_CALL
|
|
125
|
-
});
|
|
126
|
-
} catch (error: any) {
|
|
127
|
-
console.error(`[TUICallKit] Failed to call the groupCall API. Reason:${error}`);
|
|
128
|
-
}
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
建议:结合 UserPicker 的 reachEnd 事件分页拉取群成员,并使用节流函数控制 `getGroupMemberList` 的调用频率。
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { GET_WEB_CHAT_WINDOW_INTEGRATION_DEFINITION } from '../definitions/get_web_chat_window_integration_def.js';
|
|
3
|
-
import { getDocContent } from '../../utils/get-doc-content.js';
|
|
4
|
-
import { reportCLSClient } from '../../utils/report-cls-client.js';
|
|
5
|
-
import { handleFramework } from '../../utils/handle-framework.js';
|
|
6
|
-
function getResultText(params) {
|
|
7
|
-
const { framework = '' } = params;
|
|
8
|
-
reportCLSClient({
|
|
9
|
-
method: 'get_web_chat_window_integration',
|
|
10
|
-
framework: framework,
|
|
11
|
-
});
|
|
12
|
-
return getDocContent(['chatuikit', `${handleFramework(framework)}`, 'chat_window_integration.md']);
|
|
13
|
-
}
|
|
14
|
-
const registryGetWebChatWindowIntegrationTool = (mcpServer) => {
|
|
15
|
-
const { name, description, parameter_descriptions } = GET_WEB_CHAT_WINDOW_INTEGRATION_DEFINITION;
|
|
16
|
-
mcpServer.tool(name, description, {
|
|
17
|
-
framework: z.enum(['react', 'vue']).describe(parameter_descriptions.framework),
|
|
18
|
-
}, (params) => ({
|
|
19
|
-
content: [
|
|
20
|
-
{
|
|
21
|
-
type: 'text',
|
|
22
|
-
text: getResultText(params),
|
|
23
|
-
}
|
|
24
|
-
]
|
|
25
|
-
}));
|
|
26
|
-
};
|
|
27
|
-
export { registryGetWebChatWindowIntegrationTool };
|
|
28
|
-
//# sourceMappingURL=get-web-chat-window-integration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-web-chat-window-integration.js","sourceRoot":"","sources":["../../../src/tools/chat/get-web-chat-window-integration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,0CAA0C,EAAE,MAAM,uDAAuD,CAAC;AACnH,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAElE,SAAS,aAAa,CAAC,MAA2B;IAChD,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC;IAClC,eAAe,CAAC;QACd,MAAM,EAAE,iCAAiC;QACzC,SAAS,EAAE,SAAS;KACrB,CAAC,CAAC;IACH,OAAO,aAAa,CAAC,CAAC,WAAW,EAAE,GAAG,eAAe,CAAC,SAAS,CAAC,EAAE,EAAE,4BAA4B,CAAC,CAAC,CAAC;AACrG,CAAC;AAED,MAAM,uCAAuC,GAAG,CAAC,SAAoB,EAAE,EAAE;IACvE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,sBAAsB,EAAE,GAAG,0CAA0C,CAAC;IACjG,SAAS,CAAC,IAAI,CACZ,IAAI,EACJ,WAAW,EACX;QACE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC;KAC/E,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACd,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC;aAC5B;SACF;KACF,CAAC,CAAC,CAAC;AACR,CAAC,CAAC;AACF,OAAO,EAAE,uCAAuC,EAAE,CAAC"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
const TOOL_DESCRIPTION = `
|
|
2
|
-
【核心用途】:专用于 Web 独立聊天窗口集成,提供 TUIKit 组件创建 Web 或 H5 端单个聊天窗口的集成方案。\n
|
|
3
|
-
|
|
4
|
-
【功能范围】:\n
|
|
5
|
-
1. 搭建一个功能和 UI 类似微信/企微聊天窗口的独立组件界面。\n
|
|
6
|
-
2. 支持 React 和 Vue 两种主流框架的 UI 组件库。\n
|
|
7
|
-
3. 窗口入口可以根据需要设置在 TabBar 上。\n
|
|
8
|
-
|
|
9
|
-
【关键词】:'Web', 'H5', '独立聊天窗口', 'TUIKit', 'React', 'Vue', '集成', 'TabBar'。\n
|
|
10
|
-
|
|
11
|
-
【强制约束】:\n
|
|
12
|
-
1. 框架选择约束:如果用户在提示词中没有明确指定 React 或 Vue 框架,必须优先调用 'present_framework_choice' 工具,引导用户进行选择。
|
|
13
|
-
2. 结果记录约束:在 TUIKit 组件集成完成且项目启动成功后,必须调用 'record_result' 工具记录集成结果。
|
|
14
|
-
|
|
15
|
-
【注意事项】:
|
|
16
|
-
- 集成 Vue 版本时,请安装 @tencentcloud/chat-uikit-vue3。
|
|
17
|
-
`;
|
|
18
|
-
const PARAMETER_DESCRIPTIONS = {
|
|
19
|
-
framework: 'Web Chat TUIKit 框架类型。可选值:react, vue。用于确定提供哪个框架下的独立聊天窗口集成方案。',
|
|
20
|
-
};
|
|
21
|
-
export const GET_WEB_CHAT_WINDOW_INTEGRATION_DEFINITION = {
|
|
22
|
-
name: 'get_web_chat_window_integration',
|
|
23
|
-
description: TOOL_DESCRIPTION,
|
|
24
|
-
parameter_descriptions: PARAMETER_DESCRIPTIONS,
|
|
25
|
-
};
|
|
26
|
-
//# sourceMappingURL=get_web_chat_window_integration_def.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get_web_chat_window_integration_def.js","sourceRoot":"","sources":["../../../src/tools/definitions/get_web_chat_window_integration_def.ts"],"names":[],"mappings":"AAAA,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;CAgBxB,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC7B,SAAS,EAAE,6DAA6D;CACzE,CAAC;AAEF,MAAM,CAAC,MAAM,0CAA0C,GAAG;IACxD,IAAI,EAAE,iCAAiC;IACvC,WAAW,EAAE,gBAAgB;IAC7B,sBAAsB,EAAE,sBAAsB;CAC/C,CAAC"}
|