@tencent-rtc/mcp 1.3.9 → 1.4.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/{tuicallkit/iOS/faq.md → callkit/faq/android-faq.md} +10 -22
- package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/flutter-faq.md} +10 -22
- package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/ios-faq.md} +10 -22
- package/resource/doc/callkit/preset/android/api.md +296 -0
- package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +53 -365
- package/resource/doc/callkit/preset/flutter/api.md +410 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
- package/resource/doc/callkit/preset/ios/api.md +80 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
- package/resource/doc/callkit/preset/react/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
- package/resource/doc/callkit/preset/vue/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/android/integration.md +28 -121
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +18 -87
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
- package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
- package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
- package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
- package/resource/doc/chatkit/react/components/conversation-preview.md +118 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
- package/resource/doc/chatkit/react/components/search.md +243 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
- package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
- package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
- package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -492
- package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
- package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +2 -223
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +28 -141
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +94 -344
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +18 -89
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +28 -141
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +50 -259
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +51 -265
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +61 -427
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +33 -173
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -203
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +56 -416
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +35 -111
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +35 -193
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +31 -144
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +43 -252
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +79 -459
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +46 -264
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-integration.md +61 -445
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +32 -169
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
- package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +10 -49
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -0
- package/resource/doc/roomkit/vue/faq.md +1 -0
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
- package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
- package/resource/doc/roomkit/vue/features/device-state.md +24 -44
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
- package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
- package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
- package/resource/doc/roomkit/vue/features/room-state.md +25 -34
- package/resource/doc/roomkit/vue/features/room-view.md +30 -125
- package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
- package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
- package/resource/doc/roomkit/vue/features/virtual-background.md +13 -29
- package/resource/doc/roomkit/vue/integration.md +21 -76
- package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
- package/resource/doc/rtcengine/faq/web/web.md +14 -24
- package/resource/doc/rtcengine/web/api.md +1 -3
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
- package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
- package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -5
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
- package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
- package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
- package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
- package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
- package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
- package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
- package/resource/doc/trtc/android/TXLiteAVCode.md +114 -892
- package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
- package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
- package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
- package/server.js +1 -5
- package/server.js.map +1 -1
- package/tools/call/get_callkit_api.js +32 -0
- package/tools/call/get_callkit_api.js.map +1 -0
- package/tools/call/get_native_call_uikit_integration.js +34 -0
- package/tools/call/get_native_call_uikit_integration.js.map +1 -0
- package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
- package/tools/call/get_web_call_uikit_integration.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_integration.js +45 -0
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_integration.js +45 -0
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
- package/tools/common/get_faq.js +265 -0
- package/tools/common/get_faq.js.map +1 -0
- package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
- package/tools/common/get_usersig.js.map +1 -0
- package/tools/common/present_framework_choice.js +63 -0
- package/tools/common/present_framework_choice.js.map +1 -0
- package/tools/common/record_skill_session.js +58 -0
- package/tools/common/record_skill_session.js.map +1 -0
- package/tools/definitions/get_callkit_api_def.js +29 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +17 -18
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
- package/tools/definitions/get_usersig_def.js +17 -22
- package/tools/definitions/get_usersig_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +15 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +30 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +15 -46
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +24 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/definitions/record_skill_session_def.js +31 -0
- package/tools/definitions/record_skill_session_def.js.map +1 -0
- package/tools/index.js +49 -61
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_features.js +65 -0
- package/tools/live/get_native_livekit_core_features.js.map +1 -0
- package/tools/live/get_native_livekit_core_integration.js +59 -0
- package/tools/live/get_native_livekit_core_integration.js.map +1 -0
- package/tools/live/get_web_live_uikit_integration.js +48 -0
- package/tools/live/get_web_live_uikit_integration.js.map +1 -0
- package/tools/live/get_web_livekit_api.js +32 -0
- package/tools/live/get_web_livekit_api.js.map +1 -0
- package/tools/live/get_web_livekit_component_detail.js +34 -0
- package/tools/live/get_web_livekit_component_detail.js.map +1 -0
- package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
- package/tools/room/get_web_room_uikit_integration.js.map +1 -0
- package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
- package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
- package/utils/generate-structured-result.js +61 -17
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/report-cls-client.js +21 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +2 -2
- package/resource/doc/chatuikit/android/workflow.md +0 -713
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
- package/resource/doc/chatuikit/flutter/workflow.md +0 -941
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
- package/resource/doc/chatuikit/react/components/search.md +0 -745
- package/resource/doc/chatuikit/react/create-group.md +0 -23
- package/resource/doc/chatuikit/react/init.md +0 -26
- package/resource/doc/chatuikit/react/workflow.md +0 -258
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/create-group.md +0 -25
- package/resource/doc/chatuikit/vue/init.md +0 -40
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -320
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -454
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
- package/resource/doc/livekit/live/vue/workflow.md +0 -218
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
- package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
- package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
- package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
- package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
- package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -865
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -733
- package/resource/doc/tuicallkit/android/workflow.md +0 -441
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1404
- package/resource/doc/tuicallkit/vue/api.md +0 -1406
- package/resource/doc/tuicallkit/vue/faq.md +0 -36
- package/tools/call/get-native-call-integration.js +0 -43
- package/tools/call/get-native-call-integration.js.map +0 -1
- package/tools/call/get-web-call-api.js +0 -27
- package/tools/call/get-web-call-api.js.map +0 -1
- package/tools/call/get-web-call-integration.js.map +0 -1
- package/tools/chat/get-native-chat-feature-detail.js +0 -30
- package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
- package/tools/chat/get-native-chat-integration.js +0 -45
- package/tools/chat/get-native-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-component-detail.js +0 -31
- package/tools/chat/get-web-chat-component-detail.js.map +0 -1
- package/tools/chat/get-web-chat-integration.js +0 -45
- package/tools/chat/get-web-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-uikit-init.js +0 -28
- package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
- package/tools/chat/get-web-create-group-doc.js +0 -28
- package/tools/chat/get-web-create-group-doc.js.map +0 -1
- package/tools/common/get-faq.js +0 -91
- package/tools/common/get-faq.js.map +0 -1
- package/tools/common/get-usersig.js.map +0 -1
- package/tools/common/present-framework-choice.js +0 -16
- package/tools/common/present-framework-choice.js.map +0 -1
- package/tools/common/present-scenario-choice.js +0 -16
- package/tools/common/present-scenario-choice.js.map +0 -1
- package/tools/common/record-prompt.js +0 -55
- package/tools/common/record-prompt.js.map +0 -1
- package/tools/common/record-result.js +0 -60
- package/tools/common/record-result.js.map +0 -1
- package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
- package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_live_api_def.js +0 -23
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
- package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -16
- package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
- package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
- package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
- package/tools/definitions/get_web_create_group_doc_def.js +0 -18
- package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
- package/tools/definitions/get_web_live_state_detail_def.js +0 -19
- package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_state_detail_def.js +0 -19
- package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
- package/tools/definitions/present_scenario_choice_def.js +0 -53
- package/tools/definitions/present_scenario_choice_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -58
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -46
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -177
- package/tools/live/get-native-live-uikit-integration.js.map +0 -1
- package/tools/live/get-web-live-component-detail.js +0 -31
- package/tools/live/get-web-live-component-detail.js.map +0 -1
- package/tools/live/get-web-live-state-detail.js +0 -31
- package/tools/live/get-web-live-state-detail.js.map +0 -1
- package/tools/live/get-web-live-uikit-integration.js +0 -52
- package/tools/live/get-web-live-uikit-integration.js.map +0 -1
- package/tools/live/get_native_live_uikit_extra_features.js +0 -105
- package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
- package/tools/live/get_native_live_uikit_interaction.js +0 -194
- package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
- package/tools/native_live/get-native-live-api.js +0 -31
- package/tools/native_live/get-native-live-api.js.map +0 -1
- package/tools/room/get-web-room-feature-detail.js.map +0 -1
- package/tools/room/get-web-room-integration.js.map +0 -1
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
- package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
- package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
- package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
- package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
- package/tools/trtc/get-trtc-native-api.js +0 -31
- package/tools/trtc/get-trtc-native-api.js.map +0 -1
- package/utils/handle-component-name.js +0 -33
- package/utils/handle-component-name.js.map +0 -1
- /package/resource/doc/{chatuikit/iOS/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
- /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
- /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
- /package/resource/doc/roomkit/faq/common/{error_code.md → error-code.md} +0 -0
|
@@ -1,713 +0,0 @@
|
|
|
1
|
-
# Android TUIKit Compose Chat Application Code Generation Workflow Instructions
|
|
2
|
-
|
|
3
|
-
## 📋 Instruction Purpose
|
|
4
|
-
|
|
5
|
-
To provide Agents with a **code generation blueprint for implementing core functionality of Android TUIKit Compose Chat**, and guide Agents to **prioritize using real-time latest documentation content obtained through tools**, specifically for Android instant messaging chat application scenarios.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 🛑 Agent Execution Hard Constraints (Guardrails)
|
|
11
|
-
|
|
12
|
-
Agents must strictly follow these instructions when generating code:
|
|
13
|
-
|
|
14
|
-
### 0. 🔴 Environment Check and Configuration Replacement (First Step Before Integration - Highest Priority)
|
|
15
|
-
**⚠️ Strictly replace according to the exact configuration code provided in the documentation**
|
|
16
|
-
|
|
17
|
-
**Core Principle**: Must use the exact configuration code provided in the documentation to replace user project configuration files, ensuring configuration consistency and compatibility
|
|
18
|
-
|
|
19
|
-
**🚨 Mandatory Environment Requirements**:
|
|
20
|
-
- ✅ **Android Studio**: Ladybug | 2024.2.1 and above
|
|
21
|
-
- ✅ **Android System**: Android 5.0 (API 21) and above
|
|
22
|
-
- ✅ **Gradle**: 8.9 and above
|
|
23
|
-
- ✅ **Android Gradle Plugin**: 8.6 and above
|
|
24
|
-
- ✅ **JDK**: 17 and above
|
|
25
|
-
- ✅ **Kotlin**: 1.9.0 and above
|
|
26
|
-
|
|
27
|
-
### 1. 🔴 Configuration File Replacement Principles (Highest Priority)
|
|
28
|
-
|
|
29
|
-
**Core Requirement**: All configurations in the project must be strictly replaced according to the code provided in the documentation. When compilation errors occur due to configuration conflicts or missing dependencies, directly provide the error information to AI for resolution.
|
|
30
|
-
|
|
31
|
-
**✅ Mandatory Execution Requirements**:
|
|
32
|
-
1. **Must use exact configuration code provided in documentation**:
|
|
33
|
-
- All configuration code must come from code blocks explicitly provided in integration documentation
|
|
34
|
-
- **gradle/libs.versions.toml configuration must be read in real-time from integration documentation through MCP tools**
|
|
35
|
-
- Each configuration item must be completely consistent with examples in integration documentation
|
|
36
|
-
- Prohibited to modify, simplify, or optimize configuration code provided in integration documentation
|
|
37
|
-
|
|
38
|
-
2. **Must perform complete configuration replacement**:
|
|
39
|
-
- User project configuration files must be completely replaced with documentation-provided configurations
|
|
40
|
-
- Must not retain conflicting configurations from user's original project
|
|
41
|
-
- Ensure configuration consistency and compatibility
|
|
42
|
-
|
|
43
|
-
3. **Configuration File Replacement Checklist**:
|
|
44
|
-
- `app/build.gradle.kts`: Must replace with complete configuration provided in documentation
|
|
45
|
-
- `AndroidManifest.xml`: Must replace with configuration provided in documentation
|
|
46
|
-
- `proguard-rules.pro`: Must replace with configuration provided in documentation
|
|
47
|
-
- `gradle/libs.versions.toml`: **Must read complete configuration from integration documentation**
|
|
48
|
-
- `settings.gradle.kts`: Must replace with configuration provided in documentation
|
|
49
|
-
|
|
50
|
-
**🔍 Execution Verification Mechanism**:
|
|
51
|
-
Before generating each configuration file, Agent must ask themselves:
|
|
52
|
-
- [ ] Have I called MCP tools to get the latest documentation?
|
|
53
|
-
- [ ] Have I completely copied the configuration code from the documentation?
|
|
54
|
-
- [ ] Have I avoided using configurations from memory?
|
|
55
|
-
- [ ] Have I ensured the configuration is completely consistent with documentation examples?
|
|
56
|
-
|
|
57
|
-
**📋 Configuration Replacement Checklist**:
|
|
58
|
-
- [ ] Have I strictly configured according to the code provided in documentation?
|
|
59
|
-
- [ ] Have I avoided synchronizing any configuration files from atomicx?
|
|
60
|
-
- [ ] Are all configuration items completely consistent with documentation examples?
|
|
61
|
-
- [ ] Have I performed complete configuration replacement rather than partial modifications?
|
|
62
|
-
- [ ] Do configuration files maintain consistency and compatibility?
|
|
63
|
-
|
|
64
|
-
### 2. 🚨 Core Page Code Source (Highest Priority)
|
|
65
|
-
**This is the most easily violated constraint and must be emphasized first!**
|
|
66
|
-
|
|
67
|
-
**Absolutely Prohibited Behaviors**:
|
|
68
|
-
- ❌ **Strictly prohibited to write any core page code yourself** (ConversationsPage, ChatPage, ContactsPage)
|
|
69
|
-
- ❌ **Strictly prohibited to implement simplified versions**, such as writing "simplified" pages with only dozens of lines of code
|
|
70
|
-
- ❌ **Strictly prohibited to skip page code generation**, directly telling users to "refer to official examples"
|
|
71
|
-
|
|
72
|
-
**Mandatory Execution Requirements**:
|
|
73
|
-
- ✅ **Must directly use the following official page files**:
|
|
74
|
-
- `TUIKit_Android_Compose/chat/uikit/src/main/java/io/trtc/tuikit/chat/pages/ConversationsPage.kt`
|
|
75
|
-
- `TUIKit_Android_Compose/chat/uikit/src/main/java/io/trtc/tuikit/chat/pages/ChatActivity.kt`
|
|
76
|
-
- `TUIKit_Android_Compose/chat/uikit/src/main/java/io/trtc/tuikit/chat/pages/ContactsPage.kt`
|
|
77
|
-
- ✅ **Must completely copy the above files from the official `TUIKit_Android_Compose/chat/uikit/src/main/java/io/trtc/tuikit/chat/pages/` directory**
|
|
78
|
-
- ✅ **Must include complete Activity/Composable, UI component tree, business logic**
|
|
79
|
-
- ✅ **Must copy all dependent components and utility classes**, maintaining complete file structure
|
|
80
|
-
|
|
81
|
-
**Verification Standard**: Generated core page code should be consistent with official source code and functionally complete
|
|
82
|
-
|
|
83
|
-
### 3. Documentation-Driven Integration
|
|
84
|
-
- Must strictly follow the steps in `llm_code_generation_instructions_md` from tool return results
|
|
85
|
-
- **Must strictly generate code according to example code in integration documentation**, not allowed to modify code structure and implementation methods arbitrarily
|
|
86
|
-
- Code generation should completely follow best practices and examples provided in integration documentation to ensure code correctness and runnability
|
|
87
|
-
|
|
88
|
-
### 4. Source Code Integration Method
|
|
89
|
-
- TUIKit Android Compose uses **source code integration method**, requiring cloning from GitHub and copying core source code files
|
|
90
|
-
- **Must clone source code to the same level directory as user project** (i.e., `../TUIKit_Android_Compose/`)
|
|
91
|
-
- Must follow integration documentation guidance to copy specified source code folders (`atomicx`, `chat/uikit`) to user project
|
|
92
|
-
- When copying, must ensure merging with existing folders in user project, avoiding direct overwriting
|
|
93
|
-
|
|
94
|
-
### 5. Silent Integration Execution
|
|
95
|
-
- After all code writing is completed, prompt user to execute Gradle Sync and start project in the final step
|
|
96
|
-
- **Android Project Configuration Standards**:
|
|
97
|
-
1. **First Priority**: Prompt user to click "File > Sync Project with Gradle Files" in Android Studio
|
|
98
|
-
2. **Second Priority**: Wait for Gradle sync to complete, analyze and fix immediately if errors occur
|
|
99
|
-
3. **Third Priority**: Guide user to click Run button to start project
|
|
100
|
-
4. **Final Fallback**: If sync fails, provide detailed error troubleshooting guidance
|
|
101
|
-
|
|
102
|
-
#### 📋 Manual Gradle Sync Guidance
|
|
103
|
-
|
|
104
|
-
**When automatic Gradle sync fails, please guide users to follow these steps**:
|
|
105
|
-
|
|
106
|
-
**Step 1: Manual sync in Android Studio**
|
|
107
|
-
- Click menu **File** → **Sync Project with Gradle Files**
|
|
108
|
-
- Or click the **Sync** icon in toolbar (double arrow cycle icon)
|
|
109
|
-
|
|
110
|
-
**Step 2: Check sync status**
|
|
111
|
-
- View the **Build** window at the bottom, wait for sync completion
|
|
112
|
-
- If red error messages appear, record complete error logs
|
|
113
|
-
|
|
114
|
-
**Step 3: Common error handling**
|
|
115
|
-
```bash
|
|
116
|
-
# Clean project cache
|
|
117
|
-
./gradlew clean
|
|
118
|
-
|
|
119
|
-
# Re-download dependencies
|
|
120
|
-
./gradlew --refresh-dependencies
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
**💡 Common Issue Troubleshooting**
|
|
124
|
-
|
|
125
|
-
| Error Phenomenon | Possible Cause | Solution |
|
|
126
|
-
|---------|---------|---------|
|
|
127
|
-
| `Project 'atomicx' not found` | settings.gradle.kts configuration error | Check same-level directory reference path |
|
|
128
|
-
| `Unresolved reference: Material3` | Missing dependency configuration | Check libs.versions.toml configuration |
|
|
129
|
-
| `Duplicate class found` | Dependency version conflict | Unify dependency versions |
|
|
130
|
-
| `AGP version requires Java 17` | JDK version too low | Upgrade to JDK 17+ |
|
|
131
|
-
|
|
132
|
-
**⚠️ User Reminders**:
|
|
133
|
-
1. Ensure Android Studio version >= Ladybug | 2024.2.1
|
|
134
|
-
2. Ensure JDK version >= 17
|
|
135
|
-
3. Ensure network can access `maven.google.com` and `mavenCentral()`
|
|
136
|
-
4. If in mainland China, recommend configuring mirrors:
|
|
137
|
-
```kotlin
|
|
138
|
-
// Add in settings.gradle.kts
|
|
139
|
-
dependencyResolutionManagement {
|
|
140
|
-
repositories {
|
|
141
|
-
maven { url = uri("https://maven.aliyun.com/repository/google") }
|
|
142
|
-
maven { url = uri("https://maven.aliyun.com/repository/central") }
|
|
143
|
-
google()
|
|
144
|
-
mavenCentral()
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
```
|
|
148
|
-
|
|
149
|
-
### 6. Authentication Credential Configuration (Important)
|
|
150
|
-
- **Must call `get_usersig` tool to get test SDKAppID, UserID, UserSig**
|
|
151
|
-
- UserID format: `userXXX` (XXX is numbers), e.g., `user123`
|
|
152
|
-
- During testing phase, authentication information can be hardcoded in code, but must be clearly marked in comments as for testing only
|
|
153
|
-
- **Prohibited to create `.env` files** for production environment configuration
|
|
154
|
-
- **⚠️ Security Warning**: Must inform users that client-side UserSig generation is only suitable for local testing, production environment must generate UserSig on server side
|
|
155
|
-
|
|
156
|
-
### 7. LoginPage Implementation Constraints 🔴
|
|
157
|
-
- **Must refer to `TUIKit_Android_Compose/chat/demo/app/src/main/java/io/trtc/tuikit/chat/login/LoginPage.kt` to implement login page**
|
|
158
|
-
- **SDKAppID, UserID, UserSig must directly use information returned by `get_usersig` tool**
|
|
159
|
-
- **Prohibited to add UserID input box in UI**, not allowing users to actively input UserID
|
|
160
|
-
- **Prohibited to add SDKAppID and UserSig input boxes in UI**
|
|
161
|
-
- **Login interface must call `LoginStore.shared.login`**, passing complete credentials obtained from `get_usersig`
|
|
162
|
-
- After successful login, automatically navigate to main page (ConversationsPage or ChatActivity)
|
|
163
|
-
|
|
164
|
-
### 8. chat-only Mode Function Limitations (⚠️ Default Constraints + Exceptions When User Actively Requests)
|
|
165
|
-
|
|
166
|
-
**Default Behavior**:
|
|
167
|
-
When users choose chat-only mode, Agent **excludes by default** the following extended functions:
|
|
168
|
-
- **Does not integrate ConversationsPage by default** (conversation list page)
|
|
169
|
-
- **Does not integrate ContactsPage by default** (contacts page)
|
|
170
|
-
- **Retains only core chat page by default**: `ChatActivity`
|
|
171
|
-
|
|
172
|
-
**Exception Handling**:
|
|
173
|
-
If users **explicitly request** adding certain extended functions (such as "need ConversationsPage", "want to integrate contacts", etc.), Agent **should allow and execute**:
|
|
174
|
-
- ✅ On the basis of core chat page, additionally integrate functions explicitly requested by users
|
|
175
|
-
- ✅ Only add functions explicitly requested by users, do not arbitrarily expand other functions
|
|
176
|
-
- ✅ Correctly integrate required pages according to integration documentation standards
|
|
177
|
-
|
|
178
|
-
**Judgment Criteria**:
|
|
179
|
-
- User requirements contain explicit function keywords (such as "ConversationsPage", "contacts", "search", "conversation list", etc.)
|
|
180
|
-
- User explicitly states the need for certain extended functions
|
|
181
|
-
|
|
182
|
-
### 9. Import Path Constraints 🔴
|
|
183
|
-
- **Correct package paths must strictly follow usage in official example code**
|
|
184
|
-
- **Prohibited to speculate any package paths**:
|
|
185
|
-
- ❌ `io.trtc.tuikit.core.xxx` (speculated wrong path)
|
|
186
|
-
- ❌ Any wildcard imports
|
|
187
|
-
- **Prohibited to speculate package names yourself**, must strictly use according to example code in integration documentation
|
|
188
|
-
- All import statements must use correct package name paths
|
|
189
|
-
|
|
190
|
-
### 10. Android Project Standards
|
|
191
|
-
- Use Android Studio >= Ladybug | 2024.2.1, JDK >= 17, Kotlin >= 1.9.0 versions
|
|
192
|
-
- Follow Android official code style and best practices
|
|
193
|
-
- Configure Android platform permissions and dependencies according to integration documentation
|
|
194
|
-
- **Must configure Compose and theme system** (mandatory requirement):
|
|
195
|
-
|
|
196
|
-
**Complete Activity Structure Example**:
|
|
197
|
-
```kotlin
|
|
198
|
-
import android.os.Bundle
|
|
199
|
-
import androidx.activity.ComponentActivity
|
|
200
|
-
import androidx.activity.compose.setContent
|
|
201
|
-
import androidx.compose.foundation.layout.fillMaxSize
|
|
202
|
-
import androidx.compose.material3.MaterialTheme
|
|
203
|
-
import androidx.compose.material3.Surface
|
|
204
|
-
import androidx.compose.ui.Modifier
|
|
205
|
-
import io.trtc.tuikit.atomicx.theme.LocalTheme
|
|
206
|
-
|
|
207
|
-
class MainActivity : ComponentActivity() {
|
|
208
|
-
override fun onCreate(savedInstanceState: Bundle?) {
|
|
209
|
-
super.onCreate(savedInstanceState)
|
|
210
|
-
setContent {
|
|
211
|
-
MaterialTheme {
|
|
212
|
-
Surface(
|
|
213
|
-
modifier = Modifier.fillMaxSize(),
|
|
214
|
-
color = LocalTheme.current.colors.background
|
|
215
|
-
) {
|
|
216
|
-
// Your main page content
|
|
217
|
-
HomePage()
|
|
218
|
-
}
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
**⚠️ Key Points**:
|
|
226
|
-
1. **Must use `LocalTheme.current.colors` to get theme colors**
|
|
227
|
-
2. **Directly use Compose content in `setContent`**
|
|
228
|
-
3. **Optionally use `MaterialTheme` and `Surface` to provide background color**
|
|
229
|
-
4. **Refer to implementation in official demo examples**
|
|
230
|
-
|
|
231
|
-
**📋 Official MainActivity Reference Implementation**:
|
|
232
|
-
- **Must refer to official example**: `TUIKit_Android_Compose/chat/demo/app/src/main/java/io/trtc/tuikit/chat/MainActivity.kt`
|
|
233
|
-
- **Page callback implementation**: Refer to page navigation and callback handling logic in official examples
|
|
234
|
-
- **Bottom navigation structure**: Follow navigation bar design patterns in official demo
|
|
235
|
-
- **Event handling mechanism**: Copy click events and page switching logic from official examples
|
|
236
|
-
|
|
237
|
-
### 11. Environment Dependency Preparation
|
|
238
|
-
- Ensure users have installed Android Studio, JDK 17+
|
|
239
|
-
- **Gradle sync follows multi-level fallback strategy in Section 3**
|
|
240
|
-
- **If automatic sync fails, must generate fallback guidance for users to execute manually**
|
|
241
|
-
|
|
242
|
-
---
|
|
243
|
-
|
|
244
|
-
## 🛠️ Integration Mode Distribution (Goals)
|
|
245
|
-
|
|
246
|
-
Based on user requirements, Agent must choose the corresponding execution path:
|
|
247
|
-
|
|
248
|
-
### 1. Full-Featured Integration (full-featured)
|
|
249
|
-
|
|
250
|
-
**Objective**: Implement complete IM application similar to WeChat
|
|
251
|
-
|
|
252
|
-
**Core Pages**:
|
|
253
|
-
- `ConversationsPage` (conversation list)
|
|
254
|
-
- `ChatActivity` (chat page)
|
|
255
|
-
- `ContactsPage` (contacts)
|
|
256
|
-
|
|
257
|
-
**Execution Reference**:
|
|
258
|
-
- Refer to `integration.md` instructions obtained in real-time from tool return results
|
|
259
|
-
|
|
260
|
-
**Applicable Scenarios**:
|
|
261
|
-
- Building independent chat applications
|
|
262
|
-
- Need complete conversation management, address book, group management functions
|
|
263
|
-
- As core functional modules of mobile applications
|
|
264
|
-
|
|
265
|
-
**MainActivity and Bottom Navigation Implementation Requirements** (🔴 Mandatory Requirements):
|
|
266
|
-
|
|
267
|
-
If the project does not have bottom navigation, **must create MainActivity as main page**, including the following requirements:
|
|
268
|
-
|
|
269
|
-
1. **Must implement bottom navigation bar**:
|
|
270
|
-
- Default includes two Tabs: **Messages** (ConversationsPage) and **Contacts** (ContactsPage)
|
|
271
|
-
- Use Compose Navigation or Scaffold's bottomBar
|
|
272
|
-
|
|
273
|
-
2. **Tab clicks must be able to navigate to real pages**:
|
|
274
|
-
- Click "Messages" Tab → Display `ConversationsPage` (conversation list)
|
|
275
|
-
- Click "Contacts" Tab → Display `ContactsPage` (contact list)
|
|
276
|
-
- Use Compose Navigation or state management to implement page switching
|
|
277
|
-
|
|
278
|
-
3. **MainActivity Implementation Requirements**:
|
|
279
|
-
- **Directly refer to official source code**: `TUIKit_Android_Compose/chat/demo/app/src/main/java/io/trtc/tuikit/chat/MainActivity.kt`
|
|
280
|
-
- **Completely copy official implementation logic**: Including page structure, callback handling, navigation logic, etc.
|
|
281
|
-
- **Keep consistent with official examples**: Ensure functional completeness and best practices
|
|
282
|
-
|
|
283
|
-
**🔴 Official MainActivity Reference Requirements**:
|
|
284
|
-
- **Mandatory reference**: `TUIKit_Android_Compose/chat/demo/app/src/main/java/io/trtc/tuikit/chat/MainActivity.kt`
|
|
285
|
-
- **Page callbacks must be completely implemented**:
|
|
286
|
-
- `ConversationsPage`'s `onConversationClick` callback → Navigate to `ChatActivity`
|
|
287
|
-
- `ContactsPage`'s `onGroupClick` and `onContactClick` callbacks → Navigate to `ChatSettingActivity`
|
|
288
|
-
- **Callback parameter passing**: Strictly pass parameters like `conversationID`, `contactID` according to official examples
|
|
289
|
-
- **Intent startup method**: Use `Intent` and `putExtra` methods from official examples
|
|
290
|
-
|
|
291
|
-
4. **Navigate to MainActivity after successful login**:
|
|
292
|
-
```kotlin
|
|
293
|
-
// LoginPage.kt
|
|
294
|
-
LoginStore.shared.login(...) { success ->
|
|
295
|
-
if (success) {
|
|
296
|
-
val intent = Intent(context, MainActivity::class.java)
|
|
297
|
-
context.startActivity(intent)
|
|
298
|
-
(context as Activity).finish() // Close login page
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
```
|
|
302
|
-
|
|
303
|
-
5. **Prohibited Behaviors**:
|
|
304
|
-
- ❌ Navigate directly to single page (like ConversationsPage) after login without bottom navigation
|
|
305
|
-
- ❌ Create empty MainActivity without actual page switching logic
|
|
306
|
-
- ❌ Bottom navigation with only one Tab (must have at least "Messages" and "Contacts")
|
|
307
|
-
|
|
308
|
-
---
|
|
309
|
-
|
|
310
|
-
### 2. Chat Page Only Integration (chat-only)
|
|
311
|
-
|
|
312
|
-
**Objective**: Suitable for customer service, consultation, detail page private chat and other pure conversation scenarios
|
|
313
|
-
|
|
314
|
-
**Core Pages**:
|
|
315
|
-
- `ChatActivity` (chat page)
|
|
316
|
-
|
|
317
|
-
**Execution Reference**:
|
|
318
|
-
- Refer to `integration.md` instructions obtained in real-time from tool return results
|
|
319
|
-
|
|
320
|
-
**Applicable Scenarios**:
|
|
321
|
-
- Customer service consultation scenarios (users click consultation button to enter chat page)
|
|
322
|
-
- Medical online consultation (patient and doctor one-on-one communication)
|
|
323
|
-
- Order detail page private chat (buyer and seller communication)
|
|
324
|
-
- Private message function in social applications
|
|
325
|
-
|
|
326
|
-
**💡 Page Navigation After Successful Login (chat-only Mode Guidance)**:
|
|
327
|
-
|
|
328
|
-
**Default Behavior**: If users don't specify otherwise, navigate directly to `ChatActivity` after successful login, opening single chat conversation with `administrator`.
|
|
329
|
-
|
|
330
|
-
**Flexible Adjustment**: If users have other requests (such as opening chat page at specific timing, specifying other conversation objects), need to confirm navigation timing and target conversation according to user guidance.
|
|
331
|
-
|
|
332
|
-
**Default Implementation Example**:
|
|
333
|
-
|
|
334
|
-
```kotlin
|
|
335
|
-
// ✅ Successful login, directly enter chat page
|
|
336
|
-
val intent = Intent(context, ChatActivity::class.java).apply {
|
|
337
|
-
putExtra("conversationID", "c2c_administrator") // Default single chat with administrator
|
|
338
|
-
}
|
|
339
|
-
context.startActivity(intent)
|
|
340
|
-
(context as Activity).finish() // Close login page
|
|
341
|
-
```
|
|
342
|
-
|
|
343
|
-
**⚠️ Key Points**:
|
|
344
|
-
1. **Use `Intent` to pass conversationID** (avoid hardcoding)
|
|
345
|
-
2. **conversationID format**: Single chat `'c2c_<userID>'`, group chat `'group_<groupID>'`
|
|
346
|
-
3. **Default conversation ID**: `'c2c_administrator'` (can be adjusted to other userID or groupID according to user needs)
|
|
347
|
-
4. **Navigation timing**: Default immediate navigation in successful login callback, if users have special needs (such as navigation after button click), need to adjust according to user guidance
|
|
348
|
-
|
|
349
|
-
**🔴 Default Excluded Functions (Agent Must Comply)**:
|
|
350
|
-
|
|
351
|
-
When generating chat-only mode code, Agent **excludes by default** the following functions and pages:
|
|
352
|
-
|
|
353
|
-
1. **Does not integrate ConversationsPage (conversation list) by default**
|
|
354
|
-
- Does not generate conversation list page by default
|
|
355
|
-
- Does not introduce conversation switching function by default
|
|
356
|
-
- Chat page should be independent, direct pure chat interface by default
|
|
357
|
-
|
|
358
|
-
2. **Does not integrate ContactsPage (contacts) by default**
|
|
359
|
-
- Does not generate address book page by default
|
|
360
|
-
- Does not introduce contact management function by default
|
|
361
|
-
|
|
362
|
-
3. **Does not integrate bottom navigation bar (TabBar) by default**
|
|
363
|
-
- In chat-only mode, users specify conversation ID through external routing/parameters
|
|
364
|
-
- No need for page switching function by default
|
|
365
|
-
|
|
366
|
-
---
|
|
367
|
-
|
|
368
|
-
**⚠️ Exception Handling When User Actively Requests**:
|
|
369
|
-
|
|
370
|
-
If users **explicitly request** adding certain extended functions in chat-only mode, Agent **should allow and execute**:
|
|
371
|
-
|
|
372
|
-
**Trigger Conditions** (satisfying any one):
|
|
373
|
-
- User explicitly states: "need ConversationsPage", "want to integrate conversation list", "add conversation switching function"
|
|
374
|
-
- User explicitly states: "need ContactsPage", "want to add contacts", "integrate address book"
|
|
375
|
-
- User explicitly proposes other extended function requirements
|
|
376
|
-
|
|
377
|
-
**Agent Execution Process**:
|
|
378
|
-
1. ✅ **Confirm user requirements**: Recognize that user actively requests adding extended functions
|
|
379
|
-
2. ✅ **Allow integration**: On the basis of chat-only mode, additionally integrate pages requested by users
|
|
380
|
-
3. ✅ **Maintain restraint**: Only add functions explicitly requested by users, do not arbitrarily expand other functions
|
|
381
|
-
4. ✅ **Follow documentation**: Correctly integrate required pages according to integration documentation standards
|
|
382
|
-
|
|
383
|
-
---
|
|
384
|
-
|
|
385
|
-
## 📦 Core Version Requirements
|
|
386
|
-
|
|
387
|
-
| Tool/Platform | Minimum Version Requirement |
|
|
388
|
-
|----------|-------------|
|
|
389
|
-
| **Android Studio** | Ladybug \| 2024.2.1 and above |
|
|
390
|
-
| **Android System** | >= 5.0 (API 21) |
|
|
391
|
-
| **Gradle** | >= 8.9 |
|
|
392
|
-
| **Android Gradle Plugin** | >= 8.6 |
|
|
393
|
-
| **JDK** | >= 17 |
|
|
394
|
-
| **Kotlin** | >= 1.9.0 |
|
|
395
|
-
|
|
396
|
-
---
|
|
397
|
-
|
|
398
|
-
## 📦 Installation Command Examples
|
|
399
|
-
After Agent completes code generation, must guide users to execute the following steps in order:
|
|
400
|
-
|
|
401
|
-
**⚠️ Important: Android Project Configuration Standards**
|
|
402
|
-
- After Android project configuration is completed, **must execute Gradle Sync**
|
|
403
|
-
- No need for manual command line operations
|
|
404
|
-
- IDE will automatically download dependencies and build project
|
|
405
|
-
|
|
406
|
-
### 🔴 Step 1: Environment Check and Configuration File Replacement (Must Execute Before Integration - Highest Priority)
|
|
407
|
-
|
|
408
|
-
**⚠️ Before executing any integration operations, Agent must first perform environment check and configuration file replacement**:
|
|
409
|
-
|
|
410
|
-
#### 1.1 Mandatory Environment Check
|
|
411
|
-
**Agent must first verify the following environment requirements**:
|
|
412
|
-
- ✅ **Android Studio**: Ladybug | 2024.2.1 and above
|
|
413
|
-
- ✅ **Android System**: Android 5.0 (API 21) and above
|
|
414
|
-
- ✅ **Gradle**: 8.9 and above
|
|
415
|
-
- ✅ **Android Gradle Plugin**: 8.6 and above
|
|
416
|
-
- ✅ **JDK**: 17 and above
|
|
417
|
-
- ✅ **Kotlin**: 1.9.0 and above
|
|
418
|
-
|
|
419
|
-
**If environment does not meet requirements, Agent must**:
|
|
420
|
-
1. Clearly inform users of current environment deficiencies
|
|
421
|
-
2. Provide detailed environment upgrade guidance
|
|
422
|
-
3. Pause integration operations until environment meets requirements
|
|
423
|
-
|
|
424
|
-
#### 1.2 Complete Configuration File Replacement (Mandatory Execution)
|
|
425
|
-
**Agent must execute configuration file replacement in the following order**:
|
|
426
|
-
|
|
427
|
-
1. **Call MCP tools to get latest integration documentation**
|
|
428
|
-
2. **Completely replace the following configuration files**:
|
|
429
|
-
- `gradle/libs.versions.toml` - **Must read in real-time from integration documentation**
|
|
430
|
-
- `app/build.gradle.kts` - Use complete configuration provided in documentation
|
|
431
|
-
- `AndroidManifest.xml` - Use configuration provided in documentation
|
|
432
|
-
- `proguard-rules.pro` - Use configuration provided in documentation
|
|
433
|
-
- `settings.gradle.kts` - Use configuration provided in documentation
|
|
434
|
-
|
|
435
|
-
3. **Execute verification check**:
|
|
436
|
-
- [ ] Have I called MCP tools to get latest documentation?
|
|
437
|
-
- [ ] Have I completely copied configuration code from documentation?
|
|
438
|
-
- [ ] Have I avoided using configurations from memory?
|
|
439
|
-
- [ ] Have I ensured configuration is completely consistent with documentation examples?
|
|
440
|
-
|
|
441
|
-
**⚠️ Only after completing environment check and configuration file replacement can subsequent steps continue**
|
|
442
|
-
|
|
443
|
-
### 🔴 Step 2: Dependency Completeness Check (Second Priority)
|
|
444
|
-
|
|
445
|
-
**After completing environment check and configuration file replacement, Agent must execute the following checks**:
|
|
446
|
-
|
|
447
|
-
1. **Automatically scan all import statements in generated code**:
|
|
448
|
-
- Use `search_content` tool to search all generated `.kt` files
|
|
449
|
-
- Extract all package names from `import` statements
|
|
450
|
-
|
|
451
|
-
2. **Verify dependency configuration completeness**:
|
|
452
|
-
- Check `dependencies` block in `build.gradle.kts` or `build.gradle`
|
|
453
|
-
- Verify all libraries used in code are declared in dependencies
|
|
454
|
-
|
|
455
|
-
3. **Key dependencies that must be checked**:
|
|
456
|
-
- **Read complete dependency configuration from integration documentation**
|
|
457
|
-
- **Strictly configure according to versions in gradle/libs.versions.toml**
|
|
458
|
-
- **Ensure all dependencies are completely consistent with integration documentation**
|
|
459
|
-
|
|
460
|
-
4. **Handling when missing dependencies are found**:
|
|
461
|
-
- **Refer to complete configuration in integration documentation**
|
|
462
|
-
- **Supplement missing dependencies to gradle/libs.versions.toml according to integration documentation**
|
|
463
|
-
- **Explain to users** which dependencies were added and why
|
|
464
|
-
- **Do not wait for user confirmation**, fix directly
|
|
465
|
-
|
|
466
|
-
**Example check process**:
|
|
467
|
-
- Agent scans all import statements in generated code
|
|
468
|
-
- Compare with dependency configuration in integration documentation
|
|
469
|
-
- Ensure project configuration is completely consistent with integration documentation
|
|
470
|
-
|
|
471
|
-
### 🔴 Step 3: Gradle Sync and Compilation Verification
|
|
472
|
-
|
|
473
|
-
**After Agent completes configuration file replacement, must guide users to execute Gradle sync**:
|
|
474
|
-
|
|
475
|
-
**Recommended execution method**:
|
|
476
|
-
- Agent must clearly inform users to click "File > Sync Project with Gradle Files" in Android Studio
|
|
477
|
-
- Wait for Gradle sync to complete
|
|
478
|
-
- If compilation errors occur, immediately inform Agent of error information
|
|
479
|
-
- Agent will supplement missing dependencies or fix code based on error information
|
|
480
|
-
|
|
481
|
-
**Common compilation errors and handling**:
|
|
482
|
-
| Error Type | Error Message Example | Agent Handling Method |
|
|
483
|
-
|---------|------------|--------------|
|
|
484
|
-
| Missing dependency | `Unresolved reference: Material3` | Check libs.versions.toml configuration |
|
|
485
|
-
| Missing module | `Project 'atomicx' not found` | Check `settings.gradle.kts` configuration |
|
|
486
|
-
| Version conflict | `Duplicate class found` | Check dependency versions and unify |
|
|
487
|
-
| Import error | `Unresolved reference: LoginStore` | Check import paths, refer to official examples |
|
|
488
|
-
|
|
489
|
-
**Fallback strategy**:
|
|
490
|
-
- If IDE sync fails, prompt users to check network connection
|
|
491
|
-
- If dependency download fails, suggest configuring domestic mirrors
|
|
492
|
-
- If build errors occur, **immediately read error logs**, analyze missing dependencies or import issues
|
|
493
|
-
- **Do not let users fix themselves**, Agent should actively analyze and fix
|
|
494
|
-
|
|
495
|
-
---
|
|
496
|
-
|
|
497
|
-
## 📱 Real Device Debugging Guidance
|
|
498
|
-
|
|
499
|
-
### Android Real Device Debugging Steps
|
|
500
|
-
|
|
501
|
-
#### 1. Hardware Preparation
|
|
502
|
-
- Use USB data cable to connect Android device to computer
|
|
503
|
-
- Ensure device has enabled developer options and USB debugging mode
|
|
504
|
-
|
|
505
|
-
#### 2. Enable Developer Options
|
|
506
|
-
On Android device:
|
|
507
|
-
- Go to **Settings** → **About Phone**
|
|
508
|
-
- Tap **Build Number** 7 times continuously until "You are now a developer" appears
|
|
509
|
-
- Return to settings main page, enter **Developer Options**
|
|
510
|
-
- Enable **USB Debugging**
|
|
511
|
-
|
|
512
|
-
#### 3. View Connected Devices
|
|
513
|
-
```bash
|
|
514
|
-
# Method 1: Use adb command
|
|
515
|
-
adb devices
|
|
516
|
-
|
|
517
|
-
# Output example:
|
|
518
|
-
# List of devices attached
|
|
519
|
-
# XXXXXXXX device
|
|
520
|
-
|
|
521
|
-
# Method 2: View in Android Studio
|
|
522
|
-
# Toolbar → Device Manager → Physical
|
|
523
|
-
```
|
|
524
|
-
|
|
525
|
-
#### 4. Run in Android Studio
|
|
526
|
-
- Click **Run** button in toolbar (green triangle)
|
|
527
|
-
- Select connected Android device in device selection dialog
|
|
528
|
-
- Wait for application installation and startup
|
|
529
|
-
|
|
530
|
-
---
|
|
531
|
-
|
|
532
|
-
## 🚀 Multi-Device Simultaneous Debugging
|
|
533
|
-
|
|
534
|
-
### Connect Multiple Devices Simultaneously
|
|
535
|
-
```bash
|
|
536
|
-
# View all devices
|
|
537
|
-
adb devices
|
|
538
|
-
|
|
539
|
-
# Run on specific device (select corresponding device in Android Studio)
|
|
540
|
-
# Example: Run simultaneously on different Android devices
|
|
541
|
-
```
|
|
542
|
-
|
|
543
|
-
---
|
|
544
|
-
|
|
545
|
-
## 📊 Debugging Suggestions
|
|
546
|
-
|
|
547
|
-
### Log Viewing
|
|
548
|
-
```bash
|
|
549
|
-
# Android logs
|
|
550
|
-
adb logcat | grep "TUIKit"
|
|
551
|
-
|
|
552
|
-
# Performance analysis startup
|
|
553
|
-
# Use Profiler tool in Android Studio
|
|
554
|
-
```
|
|
555
|
-
|
|
556
|
-
### Common Issue Troubleshooting
|
|
557
|
-
- **Device not recognized**: Check USB drivers and debugging mode
|
|
558
|
-
- **Application installation failed**: Check device storage space and permissions
|
|
559
|
-
- **Network connection issues**: Ensure device network is normal
|
|
560
|
-
|
|
561
|
-
---
|
|
562
|
-
|
|
563
|
-
## 🔄 Complete Automation Process
|
|
564
|
-
|
|
565
|
-
```mermaid
|
|
566
|
-
graph TD
|
|
567
|
-
A[Receive User Requirements] --> B[Check Android Environment Configuration]
|
|
568
|
-
B --> C[Enter Project Parent Directory and Clone TUIKit_Android_Compose]
|
|
569
|
-
C --> D[Configure settings.gradle.kts According to Integration Documentation]
|
|
570
|
-
D --> E[Configure app/build.gradle.kts According to Integration Documentation]
|
|
571
|
-
E --> F[Configure AndroidManifest.xml According to Integration Documentation]
|
|
572
|
-
F --> G[Configure libs.versions.toml According to Integration Documentation]
|
|
573
|
-
G --> H[Call get_usersig Tool to Get Authentication Information]
|
|
574
|
-
H --> I[Implement Login Logic According to Integration Documentation]
|
|
575
|
-
I --> J[Implement Core Pages According to Integration Documentation]
|
|
576
|
-
J --> K[Call record_result to Record Integration Results]
|
|
577
|
-
K --> L[Guide User to Execute Gradle Sync]
|
|
578
|
-
L --> M{Sync Successful?}
|
|
579
|
-
M -->|Yes| N[Guide User to Connect Real Device for Debugging]
|
|
580
|
-
M -->|No| O[Provide Error Troubleshooting Guidance]
|
|
581
|
-
N --> P[Guide User to Click Run to Start Project]
|
|
582
|
-
O --> P
|
|
583
|
-
P --> Q[Project Started Successfully]
|
|
584
|
-
```
|
|
585
|
-
|
|
586
|
-
---
|
|
587
|
-
|
|
588
|
-
## 📝 Key Points Summary
|
|
589
|
-
|
|
590
|
-
| Category | Requirement |
|
|
591
|
-
|------|------|
|
|
592
|
-
| **Framework Version** | Android Studio >= Ladybug \| 2024.2.1, JDK >= 17, Kotlin >= 1.9.0 |
|
|
593
|
-
| **Integration Method** | Source code integration (clone from GitHub and reference through local path) |
|
|
594
|
-
| **Documentation Priority** | ⚠️ Strictly follow example code in integration documentation, not allowed to modify arbitrarily |
|
|
595
|
-
| **Core Page Source** | 🚨 **Strictly prohibited to write core page code yourself**, must completely copy page files from official demo directory |
|
|
596
|
-
| **Page Completeness Verification** | ⚠️ Core page code must include complete Activity/Composable, UI component tree, business logic |
|
|
597
|
-
| **Silent Integration** | Guide user to execute Gradle Sync and start project after code writing is completed |
|
|
598
|
-
| **Credential Acquisition** | ⚠️ Must use `get_usersig` tool to get test authentication information |
|
|
599
|
-
| **Security Reminder** | ⚠️ Must inform users: Client-side UserSig generation is only suitable for testing, production environment must generate on server side |
|
|
600
|
-
| **Result Recording** | ⚠️ Must call `record_result` tool to record results after integration completion |
|
|
601
|
-
| **Integration Modes** | Support full-featured (complete) and chat-only (chat only) two modes |
|
|
602
|
-
| **chat-only Limitations** | ⚠️ Exclude ConversationsPage, ContactsPage by default; allow integration when user actively requests |
|
|
603
|
-
| **Import Constraints** | ⚠️ Must strictly follow package paths in official example code, prohibited to speculate any paths |
|
|
604
|
-
|
|
605
|
-
---
|
|
606
|
-
|
|
607
|
-
## 🎯 Agent Execution Checklist
|
|
608
|
-
|
|
609
|
-
After completing code generation, Agent must confirm all the following items:
|
|
610
|
-
|
|
611
|
-
### MCP Tool Call Verification
|
|
612
|
-
- [ ] ✅ **Called `get_native_chat_uikit_integration` to get latest integration documentation**
|
|
613
|
-
- [ ] ✅ **Extracted all configuration code from integration documentation**
|
|
614
|
-
- [ ] ✅ **Called `get_usersig` to get test authentication information**
|
|
615
|
-
- [ ] ❌ **Strictly prohibited to use any configuration code from memory**
|
|
616
|
-
|
|
617
|
-
### Configuration File Completeness Verification
|
|
618
|
-
- [ ] ✅ **gradle/libs.versions.toml completely sourced from integration documentation**
|
|
619
|
-
- [ ] ✅ **app/build.gradle.kts completely sourced from integration documentation**
|
|
620
|
-
- [ ] ✅ **AndroidManifest.xml completely sourced from integration documentation**
|
|
621
|
-
- [ ] ✅ **proguard-rules.pro completely sourced from integration documentation**
|
|
622
|
-
- [ ] ✅ **settings.gradle.kts completely sourced from integration documentation**
|
|
623
|
-
|
|
624
|
-
### Code Implementation Verification
|
|
625
|
-
- [ ] ✅ **All import paths sourced from official example code**
|
|
626
|
-
- [ ] ✅ **All API call methods consistent with official examples**
|
|
627
|
-
- [ ] ✅ **All class names, function names consistent with official examples**
|
|
628
|
-
- [ ] ❌ **Strictly prohibited to speculate or simplify any implementation**
|
|
629
|
-
|
|
630
|
-
### Project Initialization
|
|
631
|
-
- [ ] Entered user project's parent directory
|
|
632
|
-
- [ ] Cloned TUIKit_Android_Compose repository to same-level directory
|
|
633
|
-
- [ ] Configured `settings.gradle.kts` according to integration documentation
|
|
634
|
-
- [ ] Configured `app/build.gradle.kts` according to integration documentation
|
|
635
|
-
|
|
636
|
-
### Code Generation
|
|
637
|
-
- [ ] 🔴 **Called `get_usersig` tool to get SDKAppID, UserID, UserSig**
|
|
638
|
-
- [ ] 🔴 **Referred to official LoginPage to implement login page** (Path: `TUIKit_Android_Compose/chat/demo/app/src/main/java/io/trtc/tuikit/chat/login/LoginPage.kt`)
|
|
639
|
-
- [ ] 🔴 **Login page does not include UserID, SDKAppID, UserSig input boxes**
|
|
640
|
-
- [ ] Implemented login logic according to integration documentation, automatically using credentials returned by `get_usersig`
|
|
641
|
-
- [ ] 🔴 **Completely copied page files from official demo directory**
|
|
642
|
-
- [ ] 🔴 **Core pages include complete Activity/Composable, UI component tree, business logic**
|
|
643
|
-
- [ ] 🔴 **Strictly prohibited to write simplified implementations yourself, strictly prohibited to skip page code generation**
|
|
644
|
-
- [ ] 🔴 **All imports use correct package paths, strictly following official examples**
|
|
645
|
-
- [ ] Implemented inter-page navigation logic according to integration documentation
|
|
646
|
-
|
|
647
|
-
### Integration Modes
|
|
648
|
-
- [ ] Selected correct integration mode based on user requirements (full-featured or chat-only)
|
|
649
|
-
- [ ] full-featured mode: Integrated ConversationsPage, ChatActivity, ContactsPage and other pages
|
|
650
|
-
- [ ] full-featured mode: Implemented MainActivity and bottom navigation bar
|
|
651
|
-
- [ ] chat-only mode: Integrated core pages (ChatActivity)
|
|
652
|
-
- [ ] chat-only mode: Determined whether to integrate extended functions based on user requirements
|
|
653
|
-
- [ ] If user did not actively request, confirmed not including ConversationsPage, ContactsPage and other pages
|
|
654
|
-
- [ ] If user actively requested (such as "need ConversationsPage"), additionally integrated functions explicitly requested by user
|
|
655
|
-
|
|
656
|
-
### Security and Reminders
|
|
657
|
-
- [ ] 🔴 **Informed users**: Currently generated code is only suitable for local testing, production environment must generate UserSig on server side
|
|
658
|
-
- [ ] Marked location of test configuration in code comments
|
|
659
|
-
|
|
660
|
-
### Final Delivery Verification
|
|
661
|
-
- [ ] ✅ **Generated code can be directly compiled and run**
|
|
662
|
-
- [ ] ✅ **No need for users to manually modify any configuration**
|
|
663
|
-
- [ ] ✅ **All functions consistent with official demo effects**
|
|
664
|
-
|
|
665
|
-
### Final Check
|
|
666
|
-
- [ ] 🔴 **Called `record_result` tool to record integration results**
|
|
667
|
-
- [ ] 🔴 **Guided user to execute Gradle Sync**
|
|
668
|
-
- [ ] Guided user to connect device or start emulator
|
|
669
|
-
- [ ] Guided user to click Run button to run project
|
|
670
|
-
- [ ] Project can run normally without errors
|
|
671
|
-
|
|
672
|
-
---
|
|
673
|
-
|
|
674
|
-
## 🔗 Required Tools
|
|
675
|
-
|
|
676
|
-
**⚠️ MCP Tool Call Parameter Notes**:
|
|
677
|
-
When calling MCP tools, must use correct parameter names to avoid call failures due to parameter errors:
|
|
678
|
-
- ✅ **Correct**: `get_native_chat_uikit_integration` uses parameter `"framework"`
|
|
679
|
-
- ❌ **Wrong**: Using parameter `"platform"` will cause call failure
|
|
680
|
-
- Before calling any MCP tool, Agent must first call `mcp_get_tool_description` to confirm correct parameter names
|
|
681
|
-
|
|
682
|
-
### `get_usersig` - Get Test Authentication Information
|
|
683
|
-
**Purpose**: Get Tencent Cloud IM test authentication information
|
|
684
|
-
- `SDKAppID`: Application identifier
|
|
685
|
-
- `UserID`: User ID
|
|
686
|
-
- `UserSig`: User signature
|
|
687
|
-
|
|
688
|
-
**Usage Constraints**:
|
|
689
|
-
- ✅ Must use `get_usersig` tool to get test authentication
|
|
690
|
-
- ❌ Prohibited to let users manually input or copy from console
|
|
691
|
-
- ⚠️ Must inform users: Client-side UserSig generation is only suitable for testing, production environment must generate on server side
|
|
692
|
-
|
|
693
|
-
### `record_result` - Record Integration Results
|
|
694
|
-
**Purpose**: Record integration process and results for statistics and analysis
|
|
695
|
-
|
|
696
|
-
**Call Timing**: Call after completing all integration steps and successfully guiding user to run project
|
|
697
|
-
|
|
698
|
-
---
|
|
699
|
-
|
|
700
|
-
## 📚 Related Resource Links
|
|
701
|
-
|
|
702
|
-
- **TUIKit Android Compose GitHub Repository**: https://github.com/Tencent-RTC/TUIKit_Android_Compose
|
|
703
|
-
- **Tencent Cloud Instant Messaging Chat Console**: https://console.trtc.io/
|
|
704
|
-
- **Server-side UserSig Generation**: https://console.trtc.io/usersig
|
|
705
|
-
- **Enable Chat Service**: https://trtc.io/document/45907?product=chat&menulabel=uikit&platform=android
|
|
706
|
-
- **Jetpack Compose Official Documentation**: https://developer.android.com/jetpack/compose
|
|
707
|
-
- **Android Official Documentation**: https://developer.android.com/
|
|
708
|
-
|
|
709
|
-
---
|
|
710
|
-
|
|
711
|
-
**Applicable Platform**: Android
|
|
712
|
-
**TUIKit Version**: TUIKit Compose (based on AtomicXCore)
|
|
713
|
-
**Minimum Requirements**: Android Studio >= Ladybug | 2024.2.1, JDK >= 17, Kotlin >= 1.9
|