@tencent-rtc/mcp 1.3.8 → 1.4.0
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/callkit/preset/android/integration.md +430 -0
- 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/chatkit/android/integration.md +490 -0
- 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 +19 -88
- 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/core-sdk/voice/android/voice-audience-list.md +263 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-audio-effect.md +222 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-barrage.md +452 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +536 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-gift.md +442 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-host-interaction.md +489 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-integration.md +574 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +435 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +516 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-integration.md +576 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audience-list.md +263 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audio-effect.md +212 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-barrage.md +404 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +499 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-gift.md +403 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-host-interaction.md +552 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +514 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +348 -0
- 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 +173 -337
- 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/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 -18
- 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 -19
- 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 -30
- 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/index.js +47 -59
- 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 +12 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +2 -2
- package/resource/doc/chatuikit/android/integration.md +0 -287
- 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/iOS/workflow.md +0 -0
- 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 -487
- package/resource/doc/tuicallkit/android/integration.md +0 -286
- package/resource/doc/tuicallkit/android/workflow.md +0 -0
- 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/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 -49
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -74
- 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 -95
- 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/record_prompt_def.js +0 -53
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -30
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -101
- 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 -101
- 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/android/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
|
@@ -7,15 +7,13 @@ The basic beauty feature allows users to apply skin smoothing, whitening, and ru
|
|
|
7
7
|
|
|
8
8
|
- **Online Education:** Teachers and students maintain a clean and natural appearance, creating a good classroom atmosphere.
|
|
9
9
|
|
|
10
|
-
|
|
11
10
|
## Prerequisites
|
|
12
|
-
- **User Status:** The user has completed login authentication through useLoginState, refer to
|
|
11
|
+
- **User Status:** The user has completed login authentication through useLoginState, refer to Integration Overview, and is in **logged in** status.
|
|
13
12
|
|
|
14
13
|
- **Environment Dependencies:** The project has imported `tuikit-atomicx-vue3`.
|
|
15
14
|
|
|
16
15
|
- **Device Requirements:** A working camera device is required, and the user has authorized camera access. If the user denies authorization, the virtual background feature will not be available.
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
## Implementing Basic Beauty Feature
|
|
20
18
|
|
|
21
19
|
This feature provides two integration solutions. You can choose the most suitable one according to business needs:
|
|
@@ -23,15 +21,11 @@ This feature provides two integration solutions. You can choose the most suitabl
|
|
|
23
21
|
|
|
24
22
|
- **Solution 2 (Advanced):** Custom integration using underlying API. Based on atomicx-core SDK API [useFreeBeautyState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-FreeBeautyState) state hook to implement UI and interaction logic yourself, with the highest flexibility.
|
|
25
23
|
|
|
26
|
-

|
|
27
|
-
|
|
28
|
-
|
|
29
24
|
## Solution 1: Quick Integration Using UI Components
|
|
30
25
|
|
|
31
26
|
`tuikit-atomicx-vue3` provides a core beauty settings panel component:
|
|
32
27
|
- [**FreeBeautyPanel**](https://github.com/Tencent-RTC/TUIKit_Vue3/tree/main/packages/tuikit-atomicx-vue3/src/components/FreeBeautyPanel)**:** Basic beauty configuration panel, including parameter adjustment functions for skin smoothing, whitening, and ruddiness.
|
|
33
28
|
|
|
34
|
-
|
|
35
29
|
### Step 1: Import Component
|
|
36
30
|
``` typescript
|
|
37
31
|
import { FreeBeautyPanel } from 'tuikit-atomicx-vue3/room';
|
|
@@ -44,10 +38,10 @@ It is generally recommended to place `FreeBeautyPanel` in a dialog or modal, tri
|
|
|
44
38
|
**The following example shows how to implement a complete interaction for clicking a button to open beauty settings:**
|
|
45
39
|
|
|
46
40
|
> **Note:**
|
|
47
|
-
>
|
|
41
|
+
>
|
|
48
42
|
|
|
49
|
-
> All TUIKit components must be wrapped inside
|
|
50
|
-
>
|
|
43
|
+
> All TUIKit components must be wrapped inside UIKitProvider, otherwise they will not be able to obtain context dependencies, causing style anomalies.
|
|
44
|
+
>
|
|
51
45
|
|
|
52
46
|
``` typescript
|
|
53
47
|
<template>
|
|
@@ -63,7 +57,7 @@ It is generally recommended to place `FreeBeautyPanel` in a dialog or modal, tri
|
|
|
63
57
|
<span>Basic Beauty</span>
|
|
64
58
|
<button @click="showSettings = false">Close</button>
|
|
65
59
|
</div>
|
|
66
|
-
|
|
60
|
+
|
|
67
61
|
<div class="modal-body">
|
|
68
62
|
<!-- 3. Import panel component -->
|
|
69
63
|
<!-- @close event: Triggered when user clicks the close button (if any) inside the panel -->
|
|
@@ -115,7 +109,6 @@ The internal logic of this component is as follows:
|
|
|
115
109
|
|
|
116
110
|
- **Save and Apply:** When closing the panel (triggering `@close` event), the current settings are automatically saved to take effect for remote users.
|
|
117
111
|
|
|
118
|
-
|
|
119
112
|
## Solution 2: Custom Integration Using Underlying API
|
|
120
113
|
|
|
121
114
|
This section mainly introduces how to implement basic beauty through atomicx-core SDK API [useFreeBeautyState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-FreeBeautyState) interface.
|
|
@@ -125,10 +118,10 @@ This section mainly introduces how to implement basic beauty through atomicx-cor
|
|
|
125
118
|
When users adjust beauty parameters (e.g., dragging sliders), use [setFreeBeauty](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#setFreeBeauty) for real-time preview. At this time, the effect is only visible locally and will not be transmitted to remote users.
|
|
126
119
|
|
|
127
120
|
> **Note:**
|
|
128
|
-
>
|
|
121
|
+
>
|
|
129
122
|
|
|
130
123
|
> Parameter values range from 0-100.
|
|
131
|
-
>
|
|
124
|
+
>
|
|
132
125
|
|
|
133
126
|
``` typescript
|
|
134
127
|
import { useFreeBeautyState } from 'tuikit-atomicx-vue3/room';
|
|
@@ -151,10 +144,10 @@ const updatePreview = async (beauty: number, white: number, ruddy: number) => {
|
|
|
151
144
|
After users confirm the preview effect is satisfactory, call [saveBeautySetting](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#saveBeautySetting) to apply the current configuration to the video stream. At this time, remote users can see the beauty effect.
|
|
152
145
|
|
|
153
146
|
> **Note:**
|
|
154
|
-
>
|
|
147
|
+
>
|
|
155
148
|
|
|
156
149
|
> The virtual background feature depends on camera devices. You can use [useDeviceState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-DeviceState) to check device status.
|
|
157
|
-
>
|
|
150
|
+
>
|
|
158
151
|
> - [cameraList](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#cameraList): List of currently available camera devices. If the list is empty, it means no camera was detected or camera permission was denied.
|
|
159
152
|
|
|
160
153
|
``` typescript
|
|
@@ -180,7 +173,7 @@ const closeBeauty = async () => {
|
|
|
180
173
|
whitenessLevel: 0,
|
|
181
174
|
ruddinessLevel: 0
|
|
182
175
|
});
|
|
183
|
-
|
|
176
|
+
|
|
184
177
|
// 2. Save to apply
|
|
185
178
|
await saveBeautySetting();
|
|
186
179
|
};
|
|
@@ -195,7 +188,6 @@ const closeBeauty = async () => {
|
|
|
195
188
|
|
|
196
189
|
- **Performance Consumption:** Enabling beauty will increase CPU and GPU load. It is recommended to guide users to use moderately on low-end devices.
|
|
197
190
|
|
|
198
|
-
|
|
199
191
|
## Common Questions
|
|
200
192
|
|
|
201
193
|
### **Why can't remote users see the effect after adjusting beauty?**
|
|
@@ -213,26 +205,11 @@ No. `useFreeBeautyState` has internally implemented automatic state management:
|
|
|
213
205
|
|
|
214
206
|
- Entering/exiting rooms: All beauty parameters are automatically reset when exiting a room, no need for developers to clean up manually.
|
|
215
207
|
|
|
216
|
-
|
|
217
208
|
## **Sample Project**
|
|
218
209
|
|
|
219
210
|
Tencent Cloud provides a sample project [atomicx-vite-vue3-ts](https://github.com/Tencent-RTC/TUIRoomKit/tree/main/Web/example/atomicx-vite-vue3-ts) on GitHub, which you can refer to for implementing complete RoomKit functionality.
|
|
220
211
|
|
|
221
212
|
## API Documentation
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
<td rowspan="1" colSpan="1" >**Feature Description**</td>
|
|
227
|
-
|
|
228
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
229
|
-
</tr>
|
|
230
|
-
|
|
231
|
-
<tr>
|
|
232
|
-
<td rowspan="1" colSpan="1" >**useFreeBeautyState**</td>
|
|
233
|
-
|
|
234
|
-
<td rowspan="1" colSpan="1" >Free beauty feature management</td>
|
|
235
|
-
|
|
236
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-FreeBeautyState)</td>
|
|
237
|
-
</tr>
|
|
238
|
-
</table>
|
|
213
|
+
| **State/Component** | **Feature Description** | **API Documentation** |
|
|
214
|
+
| --- | --- | --- |
|
|
215
|
+
| **useFreeBeautyState** | Free beauty feature management | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-FreeBeautyState) |
|
|
@@ -7,15 +7,13 @@ The in-room chat feature allows members within a meeting to interact in real-tim
|
|
|
7
7
|
|
|
8
8
|
- **Live Teaching:** Students can send bullet comments or questions in the chat area, and teachers can view and answer in real-time, enhancing classroom interaction.
|
|
9
9
|
|
|
10
|
-
|
|
11
10
|
## Prerequisites
|
|
12
11
|
|
|
13
12
|
Before integrating this feature, please ensure the following conditions are met:
|
|
14
|
-
- **User Status:** The user has completed login authentication through useLoginState, refer to
|
|
13
|
+
- **User Status:** The user has completed login authentication through useLoginState, refer to Integration Overview, and is already in a room as the room owner or member, refer to Room Management.
|
|
15
14
|
|
|
16
15
|
- **Environment Dependencies:** The project has correctly installed and imported `tuikit-atomicx-vue3`.
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
## Implementing In-Room Chat Feature
|
|
20
18
|
|
|
21
19
|
This feature provides two integration solutions. You can choose the most suitable one according to business needs:
|
|
@@ -23,11 +21,8 @@ This feature provides two integration solutions. You can choose the most suitabl
|
|
|
23
21
|
|
|
24
22
|
- **Solution 2 (Advanced):** Custom integration using underlying API. Based on atomicx-core SDK API [useMessageListState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageListState) and [useMessageInputState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageInputState) state hooks to implement UI and interaction logic yourself, with the highest flexibility.
|
|
25
23
|
|
|
26
|
-

|
|
27
|
-
|
|
28
24
|
In-room chat
|
|
29
25
|
|
|
30
|
-
|
|
31
26
|
## Solution 1: Quick Integration Using UI Components
|
|
32
27
|
|
|
33
28
|
`tuikit-atomicx-vue3` provides two core components:
|
|
@@ -35,13 +30,12 @@ This feature provides two integration solutions. You can choose the most suitabl
|
|
|
35
30
|
|
|
36
31
|
- [**MessageInput**](https://github.com/Tencent-RTC/TUIKit_Vue3/tree/main/packages/tuikit-atomicx-vue3/src/components/MessageInput)**:** Message input component that supports sending text, emojis, images, and files, and can be automatically disabled based on mute status.
|
|
37
32
|
|
|
38
|
-
|
|
39
33
|
### Step 1: Data Initialization
|
|
40
34
|
|
|
41
35
|
After the user successfully joins a room, you need to call the [setActiveConversation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#setActiveConversation) interface to initialize chat data. It is recommended to listen for changes in [currentRoom](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#currentRoom) to handle this automatically.
|
|
42
36
|
|
|
43
37
|
> **Note:**
|
|
44
|
-
>
|
|
38
|
+
>
|
|
45
39
|
> - `GROUP` is a fixed prefix, the `setActiveConversation` parameter must be ``GROUP${roomId}``, otherwise messages cannot be sent or received normally.
|
|
46
40
|
> - `GROUP` is the fixed prefix for IM SDK group conversations (refer to [IM Conversation Types](https://web.sdk.qcloud.com/im/doc/zh-cn/Conversation.html)). Room chat is based on IM groups, so the conversation ID must be in the ``GROUP${roomId}`` format.
|
|
47
41
|
|
|
@@ -67,10 +61,10 @@ watch(() => currentRoom.value?.roomId, (roomId) => {
|
|
|
67
61
|
In your page, you can directly combine these two components. Also combine [useRoomParticipantState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState) to get the current user's mute status and control the availability of the input box.
|
|
68
62
|
|
|
69
63
|
> **Note:**
|
|
70
|
-
>
|
|
64
|
+
>
|
|
71
65
|
|
|
72
|
-
> All TUIKit components must be wrapped inside
|
|
73
|
-
>
|
|
66
|
+
> All TUIKit components must be wrapped inside UIKitProvider, otherwise they will not be able to obtain context dependencies, causing style anomalies.
|
|
67
|
+
>
|
|
74
68
|
|
|
75
69
|
``` typescript
|
|
76
70
|
<template>
|
|
@@ -108,7 +102,7 @@ const { localParticipant } = useRoomParticipantState();
|
|
|
108
102
|
const isMessageDisabled = computed(() => localParticipant.value?.isMessageDisabled);
|
|
109
103
|
|
|
110
104
|
// Dynamically display placeholder prompt based on status
|
|
111
|
-
const inputPlaceholder = computed(() =>
|
|
105
|
+
const inputPlaceholder = computed(() =>
|
|
112
106
|
isMessageDisabled.value ? 'You have been muted' : 'Please enter message...'
|
|
113
107
|
);
|
|
114
108
|
</script>
|
|
@@ -151,18 +145,17 @@ const openChatWindow = () => {
|
|
|
151
145
|
This section mainly introduces how to implement a custom chat interface through atomicx-core SDK API [useMessageListState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageListState) and [useMessageInputState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageInputState) interfaces.
|
|
152
146
|
|
|
153
147
|
> **Note:**
|
|
154
|
-
>
|
|
148
|
+
>
|
|
155
149
|
|
|
156
150
|
> `MessageInputState` supports integration with `@tiptap/vue-3` editor by default. If you only need a simple text input box (e.g., `<input>` or `<textarea>`), please **ignore** `setEditorInstance`, `setContent` and other APIs bound to editor instances, and directly use `updateRawValue` and `sendMessage`.
|
|
157
|
-
>
|
|
158
|
-
|
|
151
|
+
>
|
|
159
152
|
|
|
160
153
|
#### Step 1: Data Initialization
|
|
161
154
|
|
|
162
155
|
After the user successfully joins a room, you need to call the [setActiveConversation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#setActiveConversation) interface to initialize chat data. It is recommended to listen for changes in [currentRoom](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#currentRoom) to handle this automatically.
|
|
163
156
|
|
|
164
157
|
> **Note:**
|
|
165
|
-
>
|
|
158
|
+
>
|
|
166
159
|
> - `GROUP` is a fixed prefix, the `setActiveConversation` parameter must be ``GROUP${roomId}``, otherwise messages cannot be sent or received normally.
|
|
167
160
|
> - When switching rooms or exiting a room, it is recommended to reset or clear the active conversation to avoid sending messages to the wrong conversation.
|
|
168
161
|
|
|
@@ -189,7 +182,7 @@ Use [useMessageListState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.
|
|
|
189
182
|
``` typescript
|
|
190
183
|
import { useMessageListState } from 'tuikit-atomicx-vue3/chat';
|
|
191
184
|
|
|
192
|
-
const {
|
|
185
|
+
const {
|
|
193
186
|
messageList, // Reactive message list
|
|
194
187
|
loadMoreOlderMessage, // Method to load more history messages
|
|
195
188
|
hasMoreOlderMessage, // Whether there are more history messages
|
|
@@ -207,7 +200,7 @@ Use [useMessageInputState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index
|
|
|
207
200
|
``` typescript
|
|
208
201
|
import { useMessageInputState } from 'tuikit-atomicx-vue3/chat';
|
|
209
202
|
|
|
210
|
-
const {
|
|
203
|
+
const {
|
|
211
204
|
inputRawValue, // Reactive data: current input content
|
|
212
205
|
updateRawValue, // Method: Update input content (will automatically trigger "other party is typing" status)
|
|
213
206
|
sendMessage // Method: Send message
|
|
@@ -216,17 +209,17 @@ const {
|
|
|
216
209
|
const handleSend = async () => {
|
|
217
210
|
// Validate non-empty
|
|
218
211
|
if (!inputRawValue.value) return;
|
|
219
|
-
|
|
212
|
+
|
|
220
213
|
try {
|
|
221
214
|
// 1. Send message
|
|
222
215
|
// Method A: Send the content of current inputRawValue
|
|
223
216
|
await sendMessage();
|
|
224
|
-
|
|
217
|
+
|
|
225
218
|
// Method B: Directly send specified text (not dependent on inputRawValue)
|
|
226
219
|
// await sendMessage('Hello World');
|
|
227
220
|
|
|
228
221
|
console.log('Sent successfully');
|
|
229
|
-
|
|
222
|
+
|
|
230
223
|
// 2. Clear input box after successful send
|
|
231
224
|
// Key point: In non-rich text mode, must use updateRawValue('') to clear
|
|
232
225
|
// Do not use setContent(''), this method only takes effect after binding an editor instance
|
|
@@ -237,10 +230,10 @@ const handleSend = async () => {
|
|
|
237
230
|
};
|
|
238
231
|
|
|
239
232
|
// Example: Bind to native input box
|
|
240
|
-
// <input
|
|
241
|
-
// :value="inputRawValue"
|
|
242
|
-
// @input="(e) => updateRawValue(e.target.value)"
|
|
243
|
-
// @keyup.enter="handleSend"
|
|
233
|
+
// <input
|
|
234
|
+
// :value="inputRawValue"
|
|
235
|
+
// @input="(e) => updateRawValue(e.target.value)"
|
|
236
|
+
// @keyup.enter="handleSend"
|
|
244
237
|
// />
|
|
245
238
|
```
|
|
246
239
|
|
|
@@ -249,15 +242,15 @@ const handleSend = async () => {
|
|
|
249
242
|
Use the [loadMoreOlderMessage](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageListState) method to paginate and pull history messages. Usually triggered when scrolling to the top of the list.
|
|
250
243
|
|
|
251
244
|
> **Note:**
|
|
252
|
-
>
|
|
245
|
+
>
|
|
253
246
|
|
|
254
247
|
> After loading history messages, you usually need to manually adjust the scroll position to keep the current viewing perspective from jumping.
|
|
255
|
-
>
|
|
248
|
+
>
|
|
256
249
|
|
|
257
250
|
``` typescript
|
|
258
251
|
import { useMessageListState } from 'tuikit-atomicx-vue3/chat';
|
|
259
252
|
|
|
260
|
-
const {
|
|
253
|
+
const {
|
|
261
254
|
hasMoreOlderMessage,
|
|
262
255
|
loadMoreOlderMessage
|
|
263
256
|
} = useMessageListState();
|
|
@@ -266,9 +259,9 @@ const loadHistory = async () => {
|
|
|
266
259
|
if (hasMoreOlderMessage.value) {
|
|
267
260
|
// Record scroll height before loading
|
|
268
261
|
// const previousHeight = scrollContainer.value.scrollHeight;
|
|
269
|
-
|
|
262
|
+
|
|
270
263
|
await loadMoreOlderMessage();
|
|
271
|
-
|
|
264
|
+
|
|
272
265
|
// Restore scroll position after DOM update
|
|
273
266
|
// nextTick(() => {
|
|
274
267
|
// const currentHeight = scrollContainer.value.scrollHeight;
|
|
@@ -282,7 +275,7 @@ const loadHistory = async () => {
|
|
|
282
275
|
|
|
283
276
|
If you need read receipt functionality, you can use [setEnableReadReceipt](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#setEnableReadReceipt).
|
|
284
277
|
``` typescript
|
|
285
|
-
const {
|
|
278
|
+
const {
|
|
286
279
|
setEnableReadReceipt, // Enable/disable read receipts
|
|
287
280
|
} = useMessageListState();
|
|
288
281
|
|
|
@@ -293,45 +286,36 @@ setEnableReadReceipt(true);
|
|
|
293
286
|
## Development Notes
|
|
294
287
|
- **Mute Status Synchronization**
|
|
295
288
|
|
|
296
|
-
|
|
297
289
|
`localParticipant.isMessageDisabled` is controlled by room administrators. When administrators enable "mute all" or individually mute a user, this property will automatically update. Please be sure to bind this property to the input box's `disabled` state to restrict user speaking at the frontend level.
|
|
298
290
|
|
|
299
291
|
- **Conversation Switch Timing**
|
|
300
292
|
|
|
301
|
-
|
|
302
293
|
Ensure `setActiveConversation` is called after successfully entering the room and when `roomId` has a value. If called before entering the room, it may fail because the SDK has not finished initialization or is not logged in.
|
|
303
294
|
|
|
304
295
|
- **Container Layout Requirements (Important)**
|
|
305
296
|
|
|
306
|
-
|
|
307
297
|
The message list component internally handles scrolling logic, so **the parent container must have a fixed height** (e.g., `height: 100%` or specific pixel value) and set `overflow: hidden`, otherwise the list will stretch infinitely and cannot scroll.
|
|
308
298
|
|
|
309
299
|
- **Message Type Handling**
|
|
310
300
|
|
|
311
|
-
|
|
312
301
|
`messageList` contains multiple types of messages (text, images, files, etc.). When customizing rendering, you need to distinguish and handle according to `msg.type`.
|
|
313
302
|
|
|
314
303
|
- **Input State Management**
|
|
315
304
|
|
|
316
|
-
|
|
317
305
|
Using `updateRawValue` to update input content will automatically trigger "other party is typing" status notification (if supported). Using only `inputRawValue.value = 'xxx'` may not trigger this status.
|
|
318
306
|
|
|
319
307
|
- **History Message Scroll Maintenance**
|
|
320
308
|
|
|
321
|
-
|
|
322
309
|
In custom development, after calling `loadMoreOlderMessage` to load history messages, the DOM height will increase. To prevent view jumping, you need to record `scrollHeight` before loading, and adjust `scrollTop` after loading (`nextTick`) by calculating the height difference.
|
|
323
310
|
|
|
324
311
|
- **New Message Scroll Strategy**
|
|
325
312
|
|
|
326
|
-
|
|
327
313
|
It is recommended to implement "smart scroll" logic: when users are at the bottom of the list, automatically scroll to the bottom when receiving new messages; when users are browsing history messages, keep the current position unchanged and display a "new message" prompt bubble.
|
|
328
314
|
|
|
329
315
|
- **Conversation ID Format Requirements**
|
|
330
316
|
|
|
331
|
-
|
|
332
317
|
When calling `setActiveConversation`, you must use the ``GROUP${roomId}`` format (GROUP is a fixed prefix). This is the standard format for IM SDK group conversations, cannot be customized or prefix omitted, otherwise messages cannot be sent or received normally.
|
|
333
318
|
|
|
334
|
-
|
|
335
319
|
## Common Questions
|
|
336
320
|
|
|
337
321
|
**Failed to switch to group conversation or message list is empty?**
|
|
@@ -376,52 +360,10 @@ Component class names in `tuikit-atomicx-vue3` are usually stable. You can use C
|
|
|
376
360
|
Tencent Cloud provides a sample project [atomicx-vite-vue3-ts](https://github.com/Tencent-RTC/TUIRoomKit/tree/main/Web/example/atomicx-vite-vue3-ts) on GitHub, which you can refer to for implementing complete RoomKit functionality.
|
|
377
361
|
|
|
378
362
|
## API Documentation
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
</tr>
|
|
387
|
-
|
|
388
|
-
<tr>
|
|
389
|
-
<td rowspan="1" colSpan="1" >**useRoomState**</td>
|
|
390
|
-
|
|
391
|
-
<td rowspan="1" colSpan="1" >Room state management (create, join, schedule, etc.)</td>
|
|
392
|
-
|
|
393
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState)</td>
|
|
394
|
-
</tr>
|
|
395
|
-
|
|
396
|
-
<tr>
|
|
397
|
-
<td rowspan="1" colSpan="1" >**useRoomParticipantState**</td>
|
|
398
|
-
|
|
399
|
-
<td rowspan="1" colSpan="1" >Room participant management (member list, permission control)</td>
|
|
400
|
-
|
|
401
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState)</td>
|
|
402
|
-
</tr>
|
|
403
|
-
|
|
404
|
-
<tr>
|
|
405
|
-
<td rowspan="1" colSpan="1" >**useConversationListState**</td>
|
|
406
|
-
|
|
407
|
-
<td rowspan="1" colSpan="1" >Conversation list management</td>
|
|
408
|
-
|
|
409
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-ConversationListState)</td>
|
|
410
|
-
</tr>
|
|
411
|
-
|
|
412
|
-
<tr>
|
|
413
|
-
<td rowspan="1" colSpan="1" >**useMessageListState**</td>
|
|
414
|
-
|
|
415
|
-
<td rowspan="1" colSpan="1" >Message list management</td>
|
|
416
|
-
|
|
417
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageListState)</td>
|
|
418
|
-
</tr>
|
|
419
|
-
|
|
420
|
-
<tr>
|
|
421
|
-
<td rowspan="1" colSpan="1" >**useMessageInputState**</td>
|
|
422
|
-
|
|
423
|
-
<td rowspan="1" colSpan="1" >Message input management</td>
|
|
424
|
-
|
|
425
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageInputState)</td>
|
|
426
|
-
</tr>
|
|
427
|
-
</table>
|
|
363
|
+
| **State/Component** | **Feature Description** | **API Documentation** |
|
|
364
|
+
| --- | --- | --- |
|
|
365
|
+
| **useRoomState** | Room state management (create, join, schedule, etc.) | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState) |
|
|
366
|
+
| **useRoomParticipantState** | Room participant management (member list, permission control) | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState) |
|
|
367
|
+
| **useConversationListState** | Conversation list management | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-ConversationListState) |
|
|
368
|
+
| **useMessageListState** | Message list management | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageListState) |
|
|
369
|
+
| **useMessageInputState** | Message input management | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-MessageInputState) |
|
|
@@ -9,20 +9,15 @@ The member management module covers a complete set of capabilities for displayin
|
|
|
9
9
|
|
|
10
10
|
- **Tiered Management:** Supports differentiated permission strategies for room owners, administrators, and regular members.
|
|
11
11
|
|
|
12
|
-
|
|
13
12
|
## Prerequisites
|
|
14
|
-
- User has completed login authentication through [useLoginState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-LoginState), please refer to
|
|
15
|
-
|
|
16
|
-
- User has entered the room through [useRoomState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState), please refer to [Room Management](https://write.woa.com/document/197379861957083136).
|
|
13
|
+
- User has completed login authentication through [useLoginState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-LoginState), please refer to Integration Overview.
|
|
17
14
|
|
|
15
|
+
- User has entered the room through [useRoomState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomState), please refer to Room Management.
|
|
18
16
|
|
|
19
17
|
## Integrating Member Management Component
|
|
20
18
|
|
|
21
19
|
If you need to quickly build a member list interface, it's recommended to directly use the `RoomParticipantList` component. `RoomParticipantList` is an out-of-the-box participant list component with built-in complete member management UI and interactions.
|
|
22
20
|
|
|
23
|
-

|
|
24
|
-
|
|
25
|
-
|
|
26
21
|
Example code for integrating `RoomParticipantList` component:
|
|
27
22
|
``` typescript
|
|
28
23
|
<template>
|
|
@@ -43,11 +38,11 @@ Example code for integrating `RoomParticipantList` component:
|
|
|
43
38
|
<script setup lang="ts">
|
|
44
39
|
import { ref } from 'vue';
|
|
45
40
|
import { IconClose } from '@tencentcloud/uikit-base-component-vue3';
|
|
46
|
-
import {
|
|
41
|
+
import {
|
|
47
42
|
RoomView,
|
|
48
43
|
RoomParticipantList,
|
|
49
44
|
useRoomState,
|
|
50
|
-
useRoomParticipantState
|
|
45
|
+
useRoomParticipantState
|
|
51
46
|
} from 'tuikit-atomicx-vue3/room';
|
|
52
47
|
|
|
53
48
|
const { currentRoom } = useRoomState();
|
|
@@ -86,11 +81,10 @@ const { participantList } = useRoomParticipantState();
|
|
|
86
81
|
```
|
|
87
82
|
|
|
88
83
|
> **Note:**
|
|
89
|
-
>
|
|
84
|
+
>
|
|
90
85
|
> - `RoomParticipantList` will automatically fill the height and width of its parent container, please ensure its parent container has explicit dimensions.
|
|
91
86
|
> - When using the `RoomParticipantList` component, ensure global `UIKitProvider` is configured in `App.vue`, please refer to [Configure App.vue](https://cloud.tencent.com/document/product/647/81962#ce98ee15-b0cb-43af-81da-70f51231430e).
|
|
92
87
|
|
|
93
|
-
|
|
94
88
|
## Implementing Member Management Features
|
|
95
89
|
|
|
96
90
|
If you need to customize member list UI or trigger management actions in specific business scenarios, please use [useRoomParticipantState](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState).
|
|
@@ -118,11 +112,10 @@ const handleLoadMore = async () => {
|
|
|
118
112
|
```
|
|
119
113
|
|
|
120
114
|
> **Note:**
|
|
121
|
-
>
|
|
115
|
+
>
|
|
122
116
|
|
|
123
117
|
> Data successfully fetched by `getParticipantList` interface will be automatically maintained in `participantList`, UI only needs to render data from `participantList`.
|
|
124
|
-
>
|
|
125
|
-
|
|
118
|
+
>
|
|
126
119
|
|
|
127
120
|
### Step 2: Render Participant Information
|
|
128
121
|
|
|
@@ -137,15 +130,15 @@ Developers can use [participantList](https://web.sdk.qcloud.com/trtc/live/web/do
|
|
|
137
130
|
</button>
|
|
138
131
|
</div>
|
|
139
132
|
<div class="list-content">
|
|
140
|
-
<div
|
|
141
|
-
v-for="participant in participantList"
|
|
133
|
+
<div
|
|
134
|
+
v-for="participant in participantList"
|
|
142
135
|
:key="participant.userId"
|
|
143
136
|
class="participant-item"
|
|
144
137
|
>
|
|
145
138
|
<!-- Avatar -->
|
|
146
|
-
<Avatar
|
|
147
|
-
:user-id="participant.userId"
|
|
148
|
-
:avatar-url="participant.avatarUrl"
|
|
139
|
+
<Avatar
|
|
140
|
+
:user-id="participant.userId"
|
|
141
|
+
:avatar-url="participant.avatarUrl"
|
|
149
142
|
/>
|
|
150
143
|
|
|
151
144
|
<!-- User info -->
|
|
@@ -153,14 +146,14 @@ Developers can use [participantList](https://web.sdk.qcloud.com/trtc/live/web/do
|
|
|
153
146
|
<div class="user-name">
|
|
154
147
|
<span>{{ participant.userName }}</span>
|
|
155
148
|
<span v-if="participant.userId === localParticipant.userId" class="badge">Me</span>
|
|
156
|
-
<span
|
|
157
|
-
v-if="participant.role === RoomParticipantRole.Owner"
|
|
149
|
+
<span
|
|
150
|
+
v-if="participant.role === RoomParticipantRole.Owner"
|
|
158
151
|
class="role-badge owner"
|
|
159
152
|
>
|
|
160
153
|
Owner
|
|
161
154
|
</span>
|
|
162
|
-
<span
|
|
163
|
-
v-else-if="participant.role === RoomParticipantRole.Admin"
|
|
155
|
+
<span
|
|
156
|
+
v-else-if="participant.role === RoomParticipantRole.Admin"
|
|
164
157
|
class="role-badge admin"
|
|
165
158
|
>
|
|
166
159
|
Admin
|
|
@@ -170,15 +163,15 @@ Developers can use [participantList](https://web.sdk.qcloud.com/trtc/live/web/do
|
|
|
170
163
|
|
|
171
164
|
<!-- Device status -->
|
|
172
165
|
<div class="device-status">
|
|
173
|
-
<IconMicOn
|
|
166
|
+
<IconMicOn
|
|
174
167
|
size="20"
|
|
175
|
-
v-if="participant.microphoneStatus === DeviceStatus.On"
|
|
168
|
+
v-if="participant.microphoneStatus === DeviceStatus.On"
|
|
176
169
|
class="icon-on"
|
|
177
170
|
/>
|
|
178
171
|
<IconMicOff size="20" v-else class="icon-off" />
|
|
179
172
|
<IconCameraOn
|
|
180
173
|
size="20"
|
|
181
|
-
v-if="participant.cameraStatus === DeviceStatus.On"
|
|
174
|
+
v-if="participant.cameraStatus === DeviceStatus.On"
|
|
182
175
|
class="icon-on"
|
|
183
176
|
/>
|
|
184
177
|
<IconCameraOff size="20" v-else class="icon-off" />
|
|
@@ -191,15 +184,15 @@ Developers can use [participantList](https://web.sdk.qcloud.com/trtc/live/web/do
|
|
|
191
184
|
<script setup lang="ts">
|
|
192
185
|
import { computed } from 'vue';
|
|
193
186
|
import { IconRefresh, IconMicOn, IconMicOff, IconCameraOn, IconCameraOff } from '@tencentcloud/uikit-base-component-vue3';
|
|
194
|
-
import {
|
|
187
|
+
import {
|
|
195
188
|
useRoomParticipantState,
|
|
196
189
|
Avatar,
|
|
197
190
|
RoomParticipantRole,
|
|
198
191
|
DeviceStatus
|
|
199
192
|
} from 'tuikit-atomicx-vue3/room';
|
|
200
193
|
|
|
201
|
-
const {
|
|
202
|
-
localParticipant,
|
|
194
|
+
const {
|
|
195
|
+
localParticipant,
|
|
203
196
|
participantList,
|
|
204
197
|
getParticipantList,
|
|
205
198
|
transferOwner
|
|
@@ -231,11 +224,11 @@ Developers can use the [updateParticipantMetaData](https://web.sdk.qcloud.com/tr
|
|
|
231
224
|
<script setup lang="ts">
|
|
232
225
|
import { computed } from 'vue';
|
|
233
226
|
import { IconRefresh, IconMicOn, IconMicOff, IconCameraOn, IconCameraOff } from '@tencentcloud/uikit-base-component-vue3';
|
|
234
|
-
import {
|
|
227
|
+
import {
|
|
235
228
|
useRoomParticipantState,
|
|
236
229
|
} from 'tuikit-atomicx-vue3/room';
|
|
237
230
|
|
|
238
|
-
const {
|
|
231
|
+
const {
|
|
239
232
|
updateParticipantMetaData,
|
|
240
233
|
} = useRoomParticipantState();
|
|
241
234
|
|
|
@@ -362,27 +355,12 @@ await kickParticipant({ userId });
|
|
|
362
355
|
|
|
363
356
|
### Step 9: Invite Others to Join Room
|
|
364
357
|
|
|
365
|
-
In real business scenarios, you may need to initiate call invitations to users not yet in the room. Atomicx provides complete call system support, please see
|
|
358
|
+
In real business scenarios, you may need to initiate call invitations to users not yet in the room. Atomicx provides complete call system support, please see In-Meeting Call.
|
|
366
359
|
|
|
367
360
|
## API Documentation
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
<td rowspan="1" colSpan="1" >**Feature Description**</td>
|
|
373
|
-
|
|
374
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
375
|
-
</tr>
|
|
376
|
-
|
|
377
|
-
<tr>
|
|
378
|
-
<td rowspan="1" colSpan="1" >**useRoomParticipantState**</td>
|
|
379
|
-
|
|
380
|
-
<td rowspan="1" colSpan="1" >Contains user data in the room and user management interfaces.</td>
|
|
381
|
-
|
|
382
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState)</td>
|
|
383
|
-
</tr>
|
|
384
|
-
</table>
|
|
385
|
-
|
|
361
|
+
| **State/Component** | **Feature Description** | **API Documentation** |
|
|
362
|
+
| --- | --- | --- |
|
|
363
|
+
| **useRoomParticipantState** | Contains user data in the room and user management interfaces. | [API Documentation](https://web.sdk.qcloud.com/trtc/live/web/doc/zh/index.html#module-RoomParticipantState) |
|
|
386
364
|
|
|
387
365
|
## Development Recommendations
|
|
388
366
|
|