@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
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
This document provides a detailed introduction to the **barrage component**, including the **barrage message component (BarrageList)** and the **message sending component (BarrageInput)**. You can refer to the sample code in this document for seamless integration of our pre-developed components into your existing project, or customize the style and layout according to your needs by following the component customization section in the document.
|
|
2
|
+
|
|
3
|
+
## Component Composition
|
|
4
|
+
| **Component Name** | **Detailed Description** |
|
|
5
|
+
| --- | --- |
|
|
6
|
+
| **Barrage Message Component (BarrageList)** | A component responsible for real-time display and management of barrage message streams, providing a complete message display solution including **message list rendering, time aggregation, user interaction, and responsive adaptation**. |
|
|
7
|
+
| **Message Sending Component (BarrageInput)** | An input component that provides rich text editing and message sending features, with seamless integration of **emoji selector, character limit, status management, and cross-platform adaptation**, offering users a smooth input experience. |
|
|
8
|
+
|
|
9
|
+
## Component Integration
|
|
10
|
+
|
|
11
|
+
### Step 1: Configuring the Environment and Activating the Service
|
|
12
|
+
|
|
13
|
+
Before performing quick integration, you need to refer to preparations, meet the related environment configuration and activate the corresponding service.
|
|
14
|
+
|
|
15
|
+
### Step 2: Installing Dependencies
|
|
16
|
+
|
|
17
|
+
【npm】
|
|
18
|
+
``` bash
|
|
19
|
+
npm install tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3 --save
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
【pnpm】
|
|
23
|
+
``` bash
|
|
24
|
+
pnpm add tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
【yarn】
|
|
28
|
+
``` bash
|
|
29
|
+
yarn add tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
### Step 3: Integrating the Barrage Component
|
|
33
|
+
|
|
34
|
+
Introduce and use the barrage component in your project. You can copy the following example directly to show **a complete live streaming room barrage message component and message send component** in your project.
|
|
35
|
+
``` typescript
|
|
36
|
+
<template>
|
|
37
|
+
<UIKitProvider theme="dark" language="en-US">
|
|
38
|
+
<div class="app">
|
|
39
|
+
<div class="chat-container">
|
|
40
|
+
<div class="chat-content">
|
|
41
|
+
<BarrageList class="barrage-list" />
|
|
42
|
+
</div>
|
|
43
|
+
<div class="chat-input">
|
|
44
|
+
<BarrageInput class="barrage-input" />
|
|
45
|
+
</div>
|
|
46
|
+
</div>
|
|
47
|
+
</div>
|
|
48
|
+
</UIKitProvider>
|
|
49
|
+
</template>
|
|
50
|
+
|
|
51
|
+
<script setup lang="ts">
|
|
52
|
+
import { onMounted, ref } from 'vue';
|
|
53
|
+
import { UIKitProvider } from '@tencentcloud/uikit-base-component-vue3';
|
|
54
|
+
import { BarrageList, BarrageInput, useLoginState, useLiveState } from 'tuikit-atomicx-vue3';
|
|
55
|
+
|
|
56
|
+
const { login, loginUserInfo } = useLoginState();
|
|
57
|
+
const { joinLive } = useLiveState();
|
|
58
|
+
|
|
59
|
+
async function initLogin() {
|
|
60
|
+
try {
|
|
61
|
+
await login({
|
|
62
|
+
sdkAppId: 0, // SDKAppID, see Step 1 to get
|
|
63
|
+
userId: '', // UserID, see Step 1 to get
|
|
64
|
+
userSig: '', // userSig, see Step 1 to get
|
|
65
|
+
});
|
|
66
|
+
} catch (error) {
|
|
67
|
+
console.error('login error:', error);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
onMounted(async () => {
|
|
72
|
+
await initLogin();
|
|
73
|
+
await joinLive({
|
|
74
|
+
liveId: 'input corresponding live streaming room LiveId', // enter live room by inputting corresponding liveId
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
</script>
|
|
78
|
+
|
|
79
|
+
<style scoped>.app{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}.chat-container{width:100%;max-width:500px;height:600px;border-radius:16px;display:flex;flex-direction:column;overflow:hidden}.chat-content{flex:1;overflow:hidden}.barrage-list{width:100%;height:100%}.chat-input{background-color:var(--bg-color-dialog);padding:16px}.barrage-input{width:100%}</style>
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Customize Component
|
|
83
|
+
|
|
84
|
+
**Barrage Message Component** provides users with various and dimensional `Props` APIs for custom requirements, allowing users to customize features or UI. Parameter content is as shown in the table below.
|
|
85
|
+
|
|
86
|
+
> **Note:**
|
|
87
|
+
>
|
|
88
|
+
|
|
89
|
+
> Note: To directly learn about the custom details of the Barrage Message Component (BarrageList), quickly jump to the following link: Barrage Message Component Customization;
|
|
90
|
+
>
|
|
91
|
+
|
|
92
|
+
> Note: To directly learn about the custom details of the Message Sending Component (BarrageInput), quickly jump to the following link: Message Sending Component Customization;
|
|
93
|
+
>
|
|
94
|
+
|
|
95
|
+
### Barrage Message Component (BarrageList) Customization
|
|
96
|
+
|
|
97
|
+
#### **Props**
|
|
98
|
+
| **Parameter Name** | **Parameter Type** | **Default Value** | **Description** |
|
|
99
|
+
| --- | --- | --- | --- |
|
|
100
|
+
| messageAggregationTime | Number | 300 | Maximum time interval for message grouping (seconds). |
|
|
101
|
+
| filter | (message: IMessageModel) => boolean | - | Functions for filtering messages. |
|
|
102
|
+
| Message | Component | Message | Custom Message Component |
|
|
103
|
+
| MessageTimeDivider | Component | MessageTimeDivider | Custom Message Time Segmentation Component. |
|
|
104
|
+
| LocalNoticeMessage | Component | LocalNoticeMessage | Custom Local Notification Component. |
|
|
105
|
+
| containerStyle | CSSProperties | - | Custom message list container style. |
|
|
106
|
+
| itemStyle | CSSProperties | - | Custom single message item style. |
|
|
107
|
+
| height | String | - | Component height, supports CSS units. |
|
|
108
|
+
| style | CSSProperties | - | Specify the root element's custom style. |
|
|
109
|
+
|
|
110
|
+
As indicated in the table above, the Props custom part of the Barrage Message Component consists of three sections: **component properties, replaceable subcomponents, and custom styles.** Specific content is as shown in the table below.
|
|
111
|
+
| **Content** | **Parameter** |
|
|
112
|
+
| --- | --- |
|
|
113
|
+
| **Component Property** | `filter`,`messageAggregationTime` |
|
|
114
|
+
| **Replaceable subcomponent** | `Message`,`MessageTimeDivider`,`LocalNoticeMessage` |
|
|
115
|
+
| **Custom style** | `ContainerStyle`,`ItemStyle`,`height`,`style` |
|
|
116
|
+
|
|
117
|
+
#### Filter Message
|
|
118
|
+
|
|
119
|
+
By setting the `filter` parameter, you can flexibly control the message content displayed in the barrage message component.
|
|
120
|
+
``` typescript
|
|
121
|
+
<BarrageList :filter="(message) => message.type === 'TIMTextElem'" />
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
#### Message Aggregation Time
|
|
125
|
+
|
|
126
|
+
By setting the `messageAggregationTime` parameter, you can control the grouping time interval.
|
|
127
|
+
``` typescript
|
|
128
|
+
<BarrageList :messageAggregationTime="300" />
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
#### Custom Style
|
|
132
|
+
|
|
133
|
+
Barrage Message Component provides `containerStyle`, `itemStyle`, `custom child component`, etc., for customizing component styles.
|
|
134
|
+
1. To customize the message list container style, you can pass a style object to the `containerStyle` attribute.
|
|
135
|
+
|
|
136
|
+
**Example: Custom container padding**
|
|
137
|
+
|
|
138
|
+
``` typescript
|
|
139
|
+
<BarrageList :containerStyle="{ padding: '0px' }" />
|
|
140
|
+
```
|
|
141
|
+
2. To customize a single message style, you can pass a style object to the `itemStyle` attribute.
|
|
142
|
+
|
|
143
|
+
**Example: Custom message item spacing, border, and message bubble color**
|
|
144
|
+
|
|
145
|
+
``` typescript
|
|
146
|
+
<BarrageList :itemStyle="{ borderRadius: '10px', background: '#1C66e5', padding: '10px', boxSizing: 'border-box'}" />
|
|
147
|
+
```
|
|
148
|
+
3. The barrage message component supports custom message display components, and you can fully control the rendering method.
|
|
149
|
+
|
|
150
|
+
**Example: Custom Message Component**
|
|
151
|
+
|
|
152
|
+
``` typescript
|
|
153
|
+
// MyCustomMessage.vue
|
|
154
|
+
<template>
|
|
155
|
+
<div class="custom-message">
|
|
156
|
+
<div class="message-header">
|
|
157
|
+
<span class="user-name">{{ getUserName(message) }}</span>
|
|
158
|
+
<span class="message-time">{{ formatTime(message.time) }}</span>
|
|
159
|
+
</div>
|
|
160
|
+
<div class="message-content">
|
|
161
|
+
{{ getMessageText(message) }}
|
|
162
|
+
</div>
|
|
163
|
+
</div>
|
|
164
|
+
</template>
|
|
165
|
+
|
|
166
|
+
<script setup lang="ts">
|
|
167
|
+
interface SimpleMessage {
|
|
168
|
+
id: string;
|
|
169
|
+
from: string;
|
|
170
|
+
nick?: string;
|
|
171
|
+
nameCard?: string;
|
|
172
|
+
time: number;
|
|
173
|
+
type: string;
|
|
174
|
+
content: string;
|
|
175
|
+
avatar?: string;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
interface Props {
|
|
179
|
+
message: SimpleMessage;
|
|
180
|
+
isLastInChunk?: boolean;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
const props = defineProps<Props>();
|
|
184
|
+
|
|
185
|
+
const formatTime = (timestamp: number) => {
|
|
186
|
+
return new Date(timestamp * 1000).toLocaleTimeString('zh-CN', {
|
|
187
|
+
hour: '2-digit',
|
|
188
|
+
minute: '2-digit'
|
|
189
|
+
});
|
|
190
|
+
};
|
|
191
|
+
|
|
192
|
+
const getUserName = (message: SimpleMessage) => {
|
|
193
|
+
return message.nameCard || message.nick || message.from || 'anonymous user';
|
|
194
|
+
};
|
|
195
|
+
|
|
196
|
+
const getMessageText = (message: SimpleMessage) => {
|
|
197
|
+
if (message.type === 'text') {
|
|
198
|
+
return message.content || '';
|
|
199
|
+
} else if (message.type === 'image') {
|
|
200
|
+
return '[image message]';
|
|
201
|
+
} else if (message.type === 'emoji') {
|
|
202
|
+
return '[emoji message]';
|
|
203
|
+
}
|
|
204
|
+
return '[other types of messages]';
|
|
205
|
+
};
|
|
206
|
+
</script>
|
|
207
|
+
|
|
208
|
+
<style scoped>.custom-message{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:12px;border-radius:12px;margin:4px 0;box-shadow:0 2px 8px rgba(0,0,0,0.1);transition:transform 0.2s ease}.custom-message:hover{transform:translateY(-2px)}.message-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;opacity:0.9}.user-name{font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-time{font-size:11px;opacity:0.7}.message-content{font-size:14px;line-height:1.4;word-break:break-word}</style>
|
|
209
|
+
|
|
210
|
+
// Use the barrage message component for use in
|
|
211
|
+
<template>
|
|
212
|
+
<BarrageList :Message="MyCustomMessage" />
|
|
213
|
+
</template>
|
|
214
|
+
|
|
215
|
+
<script setup lang="ts">
|
|
216
|
+
import MyCustomMessage from "./MyCustomMessage.vue";
|
|
217
|
+
</script>
|
|
218
|
+
```
|
|
219
|
+
| **Before modification** | **After modification** | | |
|
|
220
|
+
| --- | --- | --- | --- |
|
|
221
|
+
| **Custom container padding** | **Custom message item spacing and border** | **Custom Message Component** | |
|
|
222
|
+
| | | | |
|
|
223
|
+
|
|
224
|
+
### Message Sending Component (BarrageInput) Customization
|
|
225
|
+
|
|
226
|
+
#### **Props**
|
|
227
|
+
| **Parameter Name** | **Type** | **Default Value** | **Description** |
|
|
228
|
+
| --- | --- | --- | --- |
|
|
229
|
+
| containerClass | String | '' | Custom container CSS class name. |
|
|
230
|
+
| containerStyle | Record | {} | Inline style of custom container. |
|
|
231
|
+
| width | String | - | Component width, supports CSS units. |
|
|
232
|
+
| height | String | - | Component height, supports CSS units. |
|
|
233
|
+
| minHeight | String | '40px' | Minimum component height, supports CSS units. |
|
|
234
|
+
| maxHeight | String | '140px' | Max component height, supports CSS units. |
|
|
235
|
+
| placeholder | String | - | Placeholder text in the input box. |
|
|
236
|
+
| disabled | Boolean | false | Whether to disable the input box. |
|
|
237
|
+
| autoFocus | Boolean | true | Whether to auto-focus into the input box. |
|
|
238
|
+
| maxLength | Number | 80 | Maximum character limit for input content. |
|
|
239
|
+
|
|
240
|
+
#### **Events**
|
|
241
|
+
| **Event Name** | **Parameter** | **Description** |
|
|
242
|
+
| --- | --- | --- |
|
|
243
|
+
| focus | - | Trigger when the input box gets focus. |
|
|
244
|
+
| blur | - | Trigger when the input box loses focus. |
|
|
245
|
+
|
|
246
|
+
As indicated in the table above, the Props custom part of the Message Sending Component consists of three sections: **size control, input restriction, and custom styles.** Specific content is as shown in the table below.
|
|
247
|
+
| **Content** | **Parameter** |
|
|
248
|
+
| --- | --- |
|
|
249
|
+
| **Size control** | `width`,`height`,`minHeight`,`minWidth` |
|
|
250
|
+
| **Input restriction** | `maxLength` |
|
|
251
|
+
| **Custom style** | `ContainerStyle`,`ContainerClass` |
|
|
252
|
+
|
|
253
|
+
#### Size Control
|
|
254
|
+
|
|
255
|
+
By setting `width`, `height`, `minHeight`, `maxHeight` parameters, you can flexibly control the size of **BarrageInput**.
|
|
256
|
+
``` typescript
|
|
257
|
+
<BarrageInput width="400px" height="60px" minHeight="40px" maxHeight="120px" />
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
#### Input Restriction
|
|
261
|
+
|
|
262
|
+
By setting the `maxLength` parameter, you can control the maximum number of characters for input content.
|
|
263
|
+
``` typescript
|
|
264
|
+
<BarrageInput :maxLength="100" />
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
#### Custom Style
|
|
268
|
+
|
|
269
|
+
The message send component provides `containerStyle` and `containerClass` attributes for customizing component style.
|
|
270
|
+
1. To customize the input box container style, you can pass a style object to the `containerStyle` attribute.
|
|
271
|
+
|
|
272
|
+
**Example: Custom container background and border rounded corners**
|
|
273
|
+
|
|
274
|
+
``` typescript
|
|
275
|
+
<BarrageInput :containerStyle="{ backgroundColor: '#a8abb2', borderRadius: '0 0', boxShadow: '0 2px 8px rgba(0,0,0,0.1)'}" />
|
|
276
|
+
```
|
|
277
|
+
2. To customize the input box container class name, you can pass a class name string to the `containerClass` attribute.
|
|
278
|
+
|
|
279
|
+
**Example: Custom container class name**
|
|
280
|
+
|
|
281
|
+
``` typescript
|
|
282
|
+
<template>
|
|
283
|
+
<BarrageInput containerClass="my-custom-input-container" />
|
|
284
|
+
</template>
|
|
285
|
+
|
|
286
|
+
<style>.my-custom-input-container {background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);border: none;border-radius: 20px;padding: 8px 20px;}.my-custom-input-container:focus-within {box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.3);}</style>
|
|
287
|
+
```
|
|
288
|
+
| **Before modification** | **After modification** | |
|
|
289
|
+
| --- | --- | --- |
|
|
290
|
+
| **Custom container background and border rounded corners** | **Custom message item spacing and border** | |
|
|
291
|
+
| | | |
|
|
@@ -1,59 +1,30 @@
|
|
|
1
1
|
This document provides a detailed introduction to **Link Management Panel (CoGuestPanel)**. You can refer to the sample code in this document for seamless integration of our pre-developed components in your existing project, or customize the style and layout according to your needs by following the customization section of components in the document.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Features
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
</tr>
|
|
13
|
-
|
|
14
|
-
<tr>
|
|
15
|
-
<td rowspan="1" colSpan="1" >**Tab switchover**</td>
|
|
16
|
-
|
|
17
|
-
<td rowspan="1" colSpan="1" >The UI offers dual tabs, allowing users to quickly switch between the Mic Connection Request and Mic Connection Management feature modules. It supports status memory and message prompts.</td>
|
|
18
|
-
</tr>
|
|
19
|
-
|
|
20
|
-
<tr>
|
|
21
|
-
<td rowspan="1" colSpan="1" >**Application List**</td>
|
|
22
|
-
|
|
23
|
-
<td rowspan="1" colSpan="1" >Display all pending Mic Connection Requests in real time, showing user avatars, Nicknames, and status. Supports sorting by time and the filter function.</td>
|
|
24
|
-
</tr>
|
|
25
|
-
|
|
26
|
-
<tr>
|
|
27
|
-
<td rowspan="1" colSpan="1" >**Anchor Operations**</td>
|
|
28
|
-
|
|
29
|
-
<td rowspan="1" colSpan="1" >Provide abundant one-click operation buttons, support accept application, reject application, disconnect and other features, with real-time feedback on operation results.</td>
|
|
30
|
-
</tr>
|
|
31
|
-
</table>
|
|
32
|
-
|
|
4
|
+
| **Feature Name** | **Detailed Description** |
|
|
5
|
+
| --- | --- |
|
|
6
|
+
| **Tab switchover** | The UI offers dual tabs, allowing users to quickly switch between the Mic Connection Request and Mic Connection Management feature modules. It supports status memory and message prompts. |
|
|
7
|
+
| **Application List** | Display all pending Mic Connection Requests in real time, showing user avatars, Nicknames, and status. Supports sorting by time and the filter function. |
|
|
8
|
+
| **Anchor Operations** | Provide abundant one-click operation buttons, support accept application, reject application, disconnect and other features, with real-time feedback on operation results. |
|
|
33
9
|
|
|
34
10
|
## Component Integration
|
|
35
11
|
|
|
36
12
|
### Step 1: Configuring the Environment and Activating the Service
|
|
37
13
|
|
|
38
|
-
Before performing quick integration, you need to refer to
|
|
14
|
+
Before performing quick integration, you need to refer to preparations to meet the related environment configuration and activate the corresponding service.
|
|
39
15
|
|
|
40
16
|
### Step 2: Dependency Installation
|
|
41
17
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
18
|
【npm】
|
|
46
19
|
``` bash
|
|
47
20
|
npm install tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3 --save
|
|
48
21
|
```
|
|
49
22
|
|
|
50
|
-
|
|
51
23
|
【pnpm】
|
|
52
24
|
``` bash
|
|
53
25
|
pnpm add tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3
|
|
54
26
|
```
|
|
55
27
|
|
|
56
|
-
|
|
57
28
|
【yarn】
|
|
58
29
|
``` bash
|
|
59
30
|
yarn add tuikit-atomicx-vue3 @tencentcloud/uikit-base-component-vue3
|
|
@@ -95,7 +66,7 @@ onMounted(async () => {
|
|
|
95
66
|
await initLogin();
|
|
96
67
|
// enter live room by inputting corresponding liveId
|
|
97
68
|
await joinLive({
|
|
98
|
-
liveId: 'input corresponding live streaming room LiveId',
|
|
69
|
+
liveId: 'input corresponding live streaming room LiveId',
|
|
99
70
|
});
|
|
100
71
|
});
|
|
101
72
|
</script>
|
|
@@ -115,16 +86,6 @@ The Link Management Panel supports style customization via CSS variables. You ca
|
|
|
115
86
|
.co-guest-panel{--text-color-primary:#2d3748;--text-color-secondary:#93a3bb;--text-color-link:#20c9e7;--bg-color-primary:#ffffff;--bg-color-hover:#d6e7f3;--stroke-color-primary:#8bb6ef;--stroke-color-secondary:#90c0f4;--shadow-light:0 2px 8px rgba(69,67,67,0.08);--shadow-medium:0 4px 16px rgba(93,87,87,0.12);--transition:all 0.3s ease;}.co-guest-panel .panel-content{background:var(--bg-color-primary);border-radius:16px;border:1px solid var(--stroke-color-primary);box-shadow:var(--shadow-medium);transition:var(--transition);overflow:hidden;}.co-guest-panel .panel-content:hover{box-shadow:0 8px 24px rgba(0,0,0,0.15);transform:translateY(-2px);border-color:var(--stroke-color-secondary);}.co-guest-panel .user-item{padding:16px;margin:8px 0;background:var(--bg-color-primary);border:1px solid var(--stroke-color-primary);border-radius:12px;transition:var(--transition);cursor:pointer;}.co-guest-panel .user-item:hover{background:var(--bg-color-hover);border-color:var(--text-color-link);box-shadow:var(--shadow-light);transform:translateY(-1px);}.co-guest-panel .user-item:active{transform:translateY(0);transition:all 0.15s ease;}.co-guest-panel .user-item.selected{background:rgba(102,126,234,0.08);border-color:var(--text-color-link);box-shadow:var(--shadow-light);}
|
|
116
87
|
</style>
|
|
117
88
|
```
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
<td rowspan="1" colSpan="1" >**After modification**</td>
|
|
123
|
-
</tr>
|
|
124
|
-
|
|
125
|
-
<tr>
|
|
126
|
-
<td rowspan="1" colSpan="1" ><br></td>
|
|
127
|
-
|
|
128
|
-
<td rowspan="1" colSpan="1" ><br></td>
|
|
129
|
-
</tr>
|
|
130
|
-
</table>
|
|
89
|
+
| **Before modification** | **After modification** |
|
|
90
|
+
| --- | --- |
|
|
91
|
+
| | |
|
|
@@ -1,59 +1,30 @@
|
|
|
1
1
|
This document provides a detailed introduction to the **Audience List Component (LiveAudienceList)**. You can refer to the sample code in this document for seamless integration into your existing project, or customize the style and layout according to your needs by following the component customization section in the document.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Features
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
</tr>
|
|
13
|
-
|
|
14
|
-
<tr>
|
|
15
|
-
<td rowspan="1" colSpan="1" >**Real-time audience show**</td>
|
|
16
|
-
|
|
17
|
-
<td rowspan="1" colSpan="1" >Display the online audience list in the live streaming room in real time, support avatar and nickname display, and provide a clear audience information view, enabling hosts to intuitively understand audience composition.</td>
|
|
18
|
-
</tr>
|
|
19
|
-
|
|
20
|
-
<tr>
|
|
21
|
-
<td rowspan="1" colSpan="1" >**Responsive design**</td>
|
|
22
|
-
|
|
23
|
-
<td rowspan="1" colSpan="1" >Component support includes UI solutions for desktop and mobile terminals, automatically adapting to different device screen dimensions to provide consistent user experience and meet multi-platform live streaming needs.</td>
|
|
24
|
-
</tr>
|
|
25
|
-
|
|
26
|
-
<tr>
|
|
27
|
-
<td rowspan="1" colSpan="1" >**Customizable UI**</td>
|
|
28
|
-
|
|
29
|
-
<td rowspan="1" colSpan="1" >Provide flexible slot mechanism, support customization of audience tags, profile photo style and other elements, enabling you to customize the display effect of the audience list based on business needs, creating a unique visual experience.</td>
|
|
30
|
-
</tr>
|
|
31
|
-
</table>
|
|
32
|
-
|
|
4
|
+
| **Feature Category** | **Specific capabilities** |
|
|
5
|
+
| --- | --- |
|
|
6
|
+
| **Real-time audience show** | Display the online audience list in the live streaming room in real time, support avatar and nickname display, and provide a clear audience information view, enabling hosts to intuitively understand audience composition. |
|
|
7
|
+
| **Responsive design** | Component support includes UI solutions for desktop and mobile terminals, automatically adapting to different device screen dimensions to provide consistent user experience and meet multi-platform live streaming needs. |
|
|
8
|
+
| **Customizable UI** | Provide flexible slot mechanism, support customization of audience tags, profile photo style and other elements, enabling you to customize the display effect of the audience list based on business needs, creating a unique visual experience. |
|
|
33
9
|
|
|
34
10
|
## Component Integration
|
|
35
11
|
|
|
36
12
|
### Step 1: Configuring the Environment and Activating the Service
|
|
37
13
|
|
|
38
|
-
Before performing quick integration, you need to refer to
|
|
14
|
+
Before performing quick integration, you need to refer to preparations, meet the required environment configuration and activate the corresponding service.
|
|
39
15
|
|
|
40
16
|
### Step 2: Dependency Installation
|
|
41
17
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
18
|
【npm】
|
|
46
19
|
``` bash
|
|
47
20
|
npm install tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3 --save
|
|
48
21
|
```
|
|
49
22
|
|
|
50
|
-
|
|
51
23
|
【pnpm】
|
|
52
24
|
``` bash
|
|
53
25
|
pnpm add tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3
|
|
54
26
|
```
|
|
55
27
|
|
|
56
|
-
|
|
57
28
|
【yarn】
|
|
58
29
|
``` bash
|
|
59
30
|
yarn add tuikit-atomicx-vue3@latest @tencentcloud/uikit-base-component-vue3
|
|
@@ -94,7 +65,7 @@ async function initLogin() {
|
|
|
94
65
|
}
|
|
95
66
|
|
|
96
67
|
onMounted(async () => {
|
|
97
|
-
await initLogin();
|
|
68
|
+
await initLogin();
|
|
98
69
|
await joinLive({
|
|
99
70
|
liveId: 'input the corresponding live streaming room LiveId', // enter live room
|
|
100
71
|
});
|
|
@@ -109,23 +80,9 @@ onMounted(async () => {
|
|
|
109
80
|
**Audience List Component** provides flexible custom slots, supporting adjustment of audience tags, unique identifiers and other elements' style and layout based on your needs. Below are slot usage examples.
|
|
110
81
|
|
|
111
82
|
### Component Slot
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
<td rowspan="1" colSpan="1" >**Parameter**</td>
|
|
117
|
-
|
|
118
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
119
|
-
</tr>
|
|
120
|
-
|
|
121
|
-
<tr>
|
|
122
|
-
<td rowspan="1" colSpan="1" >**customAudienceInfo**</td>
|
|
123
|
-
|
|
124
|
-
<td rowspan="1" colSpan="1" >**audience: AudienceInfo**</td>
|
|
125
|
-
|
|
126
|
-
<td rowspan="1" colSpan="1" >**Customize audience information display UI**</td>
|
|
127
|
-
</tr>
|
|
128
|
-
</table>
|
|
83
|
+
| **Name** | **Parameter** | **Description** |
|
|
84
|
+
| --- | --- | --- |
|
|
85
|
+
| **customAudienceInfo** | **audience: AudienceInfo** | **Customize audience information display UI** |
|
|
129
86
|
|
|
130
87
|
``` typescript
|
|
131
88
|
// Example of using the customAudienceInfo slot
|
|
@@ -135,55 +92,13 @@ onMounted(async () => {
|
|
|
135
92
|
```
|
|
136
93
|
|
|
137
94
|
`AudienceInfo` defines the basic info and status of each audience in a live streaming room:
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
</tr>
|
|
146
|
-
|
|
147
|
-
<tr>
|
|
148
|
-
<td rowspan="1" colSpan="1" >`userId`</td>
|
|
149
|
-
|
|
150
|
-
<td rowspan="1" colSpan="1" >`string`</td>
|
|
151
|
-
|
|
152
|
-
<td rowspan="1" colSpan="1" >The audience's unique identifier must be unique across the entire system.</td>
|
|
153
|
-
</tr>
|
|
154
|
-
|
|
155
|
-
<tr>
|
|
156
|
-
<td rowspan="1" colSpan="1" >`userName`</td>
|
|
157
|
-
|
|
158
|
-
<td rowspan="1" colSpan="1" >`string`</td>
|
|
159
|
-
|
|
160
|
-
<td rowspan="1" colSpan="1" >The name displayed for the audience in the live stream supports Chinese and English characters. If empty, the userId is displayed.</td>
|
|
161
|
-
</tr>
|
|
162
|
-
|
|
163
|
-
<tr>
|
|
164
|
-
<td rowspan="1" colSpan="1" >`avatarUrl`</td>
|
|
165
|
-
|
|
166
|
-
<td rowspan="1" colSpan="1" >`string`</td>
|
|
167
|
-
|
|
168
|
-
<td rowspan="1" colSpan="1" >The complete URL of the audience avatar supports HTTPS protocol.</td>
|
|
169
|
-
</tr>
|
|
170
|
-
|
|
171
|
-
<tr>
|
|
172
|
-
<td rowspan="1" colSpan="1" >`isMessageDisabled`</td>
|
|
173
|
-
|
|
174
|
-
<td rowspan="1" colSpan="1" >`boolean`</td>
|
|
175
|
-
|
|
176
|
-
<td rowspan="1" colSpan="1" >Whether the audience is muted. true indicates muted, false indicates normal speaking.</td>
|
|
177
|
-
</tr>
|
|
178
|
-
|
|
179
|
-
<tr>
|
|
180
|
-
<td rowspan="1" colSpan="1" >`joinTime`</td>
|
|
181
|
-
|
|
182
|
-
<td rowspan="1" colSpan="1" >`number`</td>
|
|
183
|
-
|
|
184
|
-
<td rowspan="1" colSpan="1" >Timestamp of audience entering the live room, for sorting and statistics</td>
|
|
185
|
-
</tr>
|
|
186
|
-
</table>
|
|
95
|
+
| **Parameter** | **Type** | **Description** |
|
|
96
|
+
| --- | --- | --- |
|
|
97
|
+
| `userId` | `string` | The audience's unique identifier must be unique across the entire system. |
|
|
98
|
+
| `userName` | `string` | The name displayed for the audience in the live stream supports Chinese and English characters. If empty, the userId is displayed. |
|
|
99
|
+
| `avatarUrl` | `string` | The complete URL of the audience avatar supports HTTPS protocol. |
|
|
100
|
+
| `isMessageDisabled` | `boolean` | Whether the audience is muted. true indicates muted, false indicates normal speaking. |
|
|
101
|
+
| `joinTime` | `number` | Timestamp of audience entering the live room, for sorting and statistics |
|
|
187
102
|
|
|
188
103
|
``` typescript
|
|
189
104
|
interface AudienceInfo {
|
|
@@ -192,42 +107,14 @@ interface AudienceInfo {
|
|
|
192
107
|
avatarUrl?: string; // Audience avatar URL (optional)
|
|
193
108
|
isMessageDisabled?: boolean; // Whether muted (optional)
|
|
194
109
|
joinTime?: number; // Entry timestamp (optional)
|
|
195
|
-
}
|
|
110
|
+
}
|
|
196
111
|
```
|
|
197
112
|
|
|
198
113
|
### Component Properties
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
204
|
-
|
|
205
|
-
<td rowspan="1" colSpan="1" >**Default Value**</td>
|
|
206
|
-
|
|
207
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
208
|
-
</tr>
|
|
209
|
-
|
|
210
|
-
<tr>
|
|
211
|
-
<td rowspan="1" colSpan="1" >`height`</td>
|
|
212
|
-
|
|
213
|
-
<td rowspan="1" colSpan="1" >`string`</td>
|
|
214
|
-
|
|
215
|
-
<td rowspan="1" colSpan="1" >**'500px'**</td>
|
|
216
|
-
|
|
217
|
-
<td rowspan="1" colSpan="1" >Component height, supports CSS units (px, %, vh)</td>
|
|
218
|
-
</tr>
|
|
219
|
-
|
|
220
|
-
<tr>
|
|
221
|
-
<td rowspan="1" colSpan="1" >`style`</td>
|
|
222
|
-
|
|
223
|
-
<td rowspan="1" colSpan="1" >`CSSProperties`</td>
|
|
224
|
-
|
|
225
|
-
<td rowspan="1" colSpan="1" >**{}**</td>
|
|
226
|
-
|
|
227
|
-
<td rowspan="1" colSpan="1" >Custom style object used to override component default style</td>
|
|
228
|
-
</tr>
|
|
229
|
-
</table>
|
|
230
|
-
|
|
114
|
+
| **Attribute name** | **Type** | **Default Value** | **Description** |
|
|
115
|
+
| --- | --- | --- | --- |
|
|
116
|
+
| `height` | `string` | **'500px'** | Component height, supports CSS units (px, %, vh) |
|
|
117
|
+
| `style` | `CSSProperties` | **{}** | Custom style object used to override component default style |
|
|
231
118
|
|
|
232
119
|
#### Custom Slot Example
|
|
233
120
|
|
|
@@ -238,18 +125,13 @@ To help you better experience and understand the **audience list component**'s *
|
|
|
238
125
|
<template #customAudienceInfo="{ audience }">
|
|
239
126
|
<div class="custom-audience-info">
|
|
240
127
|
avatar
|
|
241
|
-
|
|
242
|
-
:src="audience.avatarUrl || defaultAvatar"
|
|
243
|
-
:alt="audience.userName || audience.userId"
|
|
244
|
-
class="audience-avatar"
|
|
245
|
-
/>
|
|
246
|
-
|
|
128
|
+
|
|
247
129
|
audience information
|
|
248
130
|
<div class="audience-details">
|
|
249
131
|
<span class="audience-name">{{ audience.userName || audience.userId }}</span>
|
|
250
132
|
<span class="join-time">{{ formatJoinTime(audience.joinTime) }}</span>
|
|
251
133
|
</div>
|
|
252
|
-
|
|
134
|
+
|
|
253
135
|
status indicator
|
|
254
136
|
<div v-if="audience.isMessageDisabled" class="muted-indicator">🔇</div>
|
|
255
137
|
</div>
|
|
@@ -264,13 +146,13 @@ const defaultAvatar = 'xxx'; // Input default avatar Url
|
|
|
264
146
|
|
|
265
147
|
const formatJoinTime = (timestamp?: number) => { // Format join time
|
|
266
148
|
if (!timestamp) return 'just now join';
|
|
267
|
-
|
|
149
|
+
|
|
268
150
|
const now = Date.now();
|
|
269
151
|
const diff = now - timestamp;
|
|
270
152
|
const minutes = Math.floor(diff / (1000 * 60));
|
|
271
153
|
const hours = Math.floor(diff / (1000 * 60 * 60));
|
|
272
154
|
const days = Math.floor(diff / (1000 * 60 * 60 * 24));
|
|
273
|
-
|
|
155
|
+
|
|
274
156
|
if (days > 0) return `${days} days ago join`;
|
|
275
157
|
if (hours > 0) return `${hours} hours ago join`;
|
|
276
158
|
if (minutes > 0) return `${minutes} minutes ago join`;
|