@tencent-rtc/mcp 1.3.9 → 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/{tuicallkit → callkit/preset}/android/integration.md +53 -365
- package/resource/doc/callkit/preset/flutter/api.md +410 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
- package/resource/doc/callkit/preset/ios/api.md +80 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
- package/resource/doc/callkit/preset/react/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
- package/resource/doc/callkit/preset/vue/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/android/integration.md +28 -121
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +18 -87
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
- package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
- package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
- package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
- package/resource/doc/chatkit/react/components/conversation-preview.md +118 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
- package/resource/doc/chatkit/react/components/search.md +243 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
- package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
- package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
- package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -492
- package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
- package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +2 -223
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +28 -141
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +94 -344
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +18 -89
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +28 -141
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +50 -259
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +51 -265
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +61 -427
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +33 -173
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -203
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +56 -416
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +35 -111
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +35 -193
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +31 -144
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +43 -252
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +79 -459
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +46 -264
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-integration.md +61 -445
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +32 -169
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
- package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +10 -49
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -0
- package/resource/doc/roomkit/vue/faq.md +1 -0
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
- package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
- package/resource/doc/roomkit/vue/features/device-state.md +24 -44
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
- package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
- package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
- package/resource/doc/roomkit/vue/features/room-state.md +25 -34
- package/resource/doc/roomkit/vue/features/room-view.md +30 -125
- package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
- package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
- package/resource/doc/roomkit/vue/features/virtual-background.md +13 -29
- package/resource/doc/roomkit/vue/integration.md +21 -76
- package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
- package/resource/doc/rtcengine/faq/web/web.md +14 -24
- package/resource/doc/rtcengine/web/api.md +1 -3
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
- package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
- package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -5
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
- package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
- package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
- package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
- package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
- package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
- package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
- package/resource/doc/trtc/android/TXLiteAVCode.md +114 -892
- package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
- package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
- package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
- package/server.js +1 -5
- package/server.js.map +1 -1
- package/tools/call/get_callkit_api.js +32 -0
- package/tools/call/get_callkit_api.js.map +1 -0
- package/tools/call/get_native_call_uikit_integration.js +34 -0
- package/tools/call/get_native_call_uikit_integration.js.map +1 -0
- package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
- package/tools/call/get_web_call_uikit_integration.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_integration.js +45 -0
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_integration.js +45 -0
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
- package/tools/common/get_faq.js +265 -0
- package/tools/common/get_faq.js.map +1 -0
- package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
- package/tools/common/get_usersig.js.map +1 -0
- package/tools/common/present_framework_choice.js +63 -0
- package/tools/common/present_framework_choice.js.map +1 -0
- package/tools/definitions/get_callkit_api_def.js +29 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +17 -18
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
- package/tools/definitions/get_usersig_def.js +17 -22
- package/tools/definitions/get_usersig_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +15 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +30 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +15 -46
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +24 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/index.js +47 -61
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_features.js +65 -0
- package/tools/live/get_native_livekit_core_features.js.map +1 -0
- package/tools/live/get_native_livekit_core_integration.js +59 -0
- package/tools/live/get_native_livekit_core_integration.js.map +1 -0
- package/tools/live/get_web_live_uikit_integration.js +48 -0
- package/tools/live/get_web_live_uikit_integration.js.map +1 -0
- package/tools/live/get_web_livekit_api.js +32 -0
- package/tools/live/get_web_livekit_api.js.map +1 -0
- package/tools/live/get_web_livekit_component_detail.js +34 -0
- package/tools/live/get_web_livekit_component_detail.js.map +1 -0
- package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
- package/tools/room/get_web_room_uikit_integration.js.map +1 -0
- package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
- package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
- package/utils/generate-structured-result.js +61 -17
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/report-cls-client.js +12 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +2 -2
- package/resource/doc/chatuikit/android/workflow.md +0 -713
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
- package/resource/doc/chatuikit/flutter/workflow.md +0 -941
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
- package/resource/doc/chatuikit/react/components/search.md +0 -745
- package/resource/doc/chatuikit/react/create-group.md +0 -23
- package/resource/doc/chatuikit/react/init.md +0 -26
- package/resource/doc/chatuikit/react/workflow.md +0 -258
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/create-group.md +0 -25
- package/resource/doc/chatuikit/vue/init.md +0 -40
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -320
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -454
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
- package/resource/doc/livekit/live/vue/workflow.md +0 -218
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
- package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
- package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
- package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
- package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
- package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -865
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -733
- package/resource/doc/tuicallkit/android/workflow.md +0 -441
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1404
- package/resource/doc/tuicallkit/vue/api.md +0 -1406
- package/resource/doc/tuicallkit/vue/faq.md +0 -36
- package/tools/call/get-native-call-integration.js +0 -43
- package/tools/call/get-native-call-integration.js.map +0 -1
- package/tools/call/get-web-call-api.js +0 -27
- package/tools/call/get-web-call-api.js.map +0 -1
- package/tools/call/get-web-call-integration.js.map +0 -1
- package/tools/chat/get-native-chat-feature-detail.js +0 -30
- package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
- package/tools/chat/get-native-chat-integration.js +0 -45
- package/tools/chat/get-native-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-component-detail.js +0 -31
- package/tools/chat/get-web-chat-component-detail.js.map +0 -1
- package/tools/chat/get-web-chat-integration.js +0 -45
- package/tools/chat/get-web-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-uikit-init.js +0 -28
- package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
- package/tools/chat/get-web-create-group-doc.js +0 -28
- package/tools/chat/get-web-create-group-doc.js.map +0 -1
- package/tools/common/get-faq.js +0 -91
- package/tools/common/get-faq.js.map +0 -1
- package/tools/common/get-usersig.js.map +0 -1
- package/tools/common/present-framework-choice.js +0 -16
- package/tools/common/present-framework-choice.js.map +0 -1
- package/tools/common/present-scenario-choice.js +0 -16
- package/tools/common/present-scenario-choice.js.map +0 -1
- package/tools/common/record-prompt.js +0 -55
- package/tools/common/record-prompt.js.map +0 -1
- package/tools/common/record-result.js +0 -60
- package/tools/common/record-result.js.map +0 -1
- package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
- package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_live_api_def.js +0 -23
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
- package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -16
- package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
- package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
- package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
- package/tools/definitions/get_web_create_group_doc_def.js +0 -18
- package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
- package/tools/definitions/get_web_live_state_detail_def.js +0 -19
- package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_state_detail_def.js +0 -19
- package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
- package/tools/definitions/present_scenario_choice_def.js +0 -53
- package/tools/definitions/present_scenario_choice_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -58
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -46
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -177
- package/tools/live/get-native-live-uikit-integration.js.map +0 -1
- package/tools/live/get-web-live-component-detail.js +0 -31
- package/tools/live/get-web-live-component-detail.js.map +0 -1
- package/tools/live/get-web-live-state-detail.js +0 -31
- package/tools/live/get-web-live-state-detail.js.map +0 -1
- package/tools/live/get-web-live-uikit-integration.js +0 -52
- package/tools/live/get-web-live-uikit-integration.js.map +0 -1
- package/tools/live/get_native_live_uikit_extra_features.js +0 -105
- package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
- package/tools/live/get_native_live_uikit_interaction.js +0 -194
- package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
- package/tools/native_live/get-native-live-api.js +0 -31
- package/tools/native_live/get-native-live-api.js.map +0 -1
- package/tools/room/get-web-room-feature-detail.js.map +0 -1
- package/tools/room/get-web-room-integration.js.map +0 -1
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
- package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
- package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
- package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
- package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
- package/tools/trtc/get-trtc-native-api.js +0 -31
- package/tools/trtc/get-trtc-native-api.js.map +0 -1
- package/utils/handle-component-name.js +0 -33
- package/utils/handle-component-name.js.map +0 -1
- /package/resource/doc/{chatuikit/iOS/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
- /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
- /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
- /package/resource/doc/roomkit/faq/common/{error_code.md → error-code.md} +0 -0
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
`LiveListStore` is the core module of **AtomicXCore** responsible for managing the live room list, creating and joining rooms, and maintaining room state. With `LiveListStore`, you can implement comprehensive live streaming lifecycle management in your application.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Features
|
|
7
4
|
- **Live Room List Fetching**: Retrieve all currently public live rooms, returned one page at a time.
|
|
8
5
|
|
|
@@ -10,58 +7,20 @@
|
|
|
10
7
|
|
|
11
8
|
- **Real-Time Event Listening**: Listen for key events such as live session end or users being removed from a room.
|
|
12
9
|
|
|
13
|
-
|
|
14
10
|
## Core Concepts
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
<td rowspan="1" colSpan="1" >**Core Responsibility & Description**</td>
|
|
22
|
-
</tr>
|
|
23
|
-
|
|
24
|
-
<tr>
|
|
25
|
-
<td rowspan="1" colSpan="1" >`LiveInfo`</td>
|
|
26
|
-
|
|
27
|
-
<td rowspan="1" colSpan="1" >`struct`</td>
|
|
28
|
-
|
|
29
|
-
<td rowspan="1" colSpan="1" >- Represents the complete information model of a live room. <br>- Includes the live room ID (`liveID`), name (`liveName`), owner information (`liveOwner`), and custom metadata (`metaData`), among other properties.</td>
|
|
30
|
-
</tr>
|
|
31
|
-
|
|
32
|
-
<tr>
|
|
33
|
-
<td rowspan="1" colSpan="1" >`LiveListState`</td>
|
|
34
|
-
|
|
35
|
-
<td rowspan="1" colSpan="1" >`struct`</td>
|
|
36
|
-
|
|
37
|
-
<td rowspan="1" colSpan="1" >- Represents the current state of the live list module. <br>- The core property `liveList` is a StateFlow containing the fetched live room list; <br>- `currentLive` represents the information of the live room the user is currently in.</td>
|
|
38
|
-
</tr>
|
|
39
|
-
|
|
40
|
-
<tr>
|
|
41
|
-
<td rowspan="1" colSpan="1" >`LiveListEvent`</td>
|
|
42
|
-
|
|
43
|
-
<td rowspan="1" colSpan="1" >`enum`</td>
|
|
44
|
-
|
|
45
|
-
<td rowspan="1" colSpan="1" >Handles global live room events, including `.onLiveEnded` (live ended) and `.onKickedOutOfLive` (user removed from live), for responding to key room state changes.</td>
|
|
46
|
-
</tr>
|
|
47
|
-
|
|
48
|
-
<tr>
|
|
49
|
-
<td rowspan="1" colSpan="1" >`LiveListStore`</td>
|
|
50
|
-
|
|
51
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
52
|
-
|
|
53
|
-
<td rowspan="1" colSpan="1" >- The core management class for interacting with the live room list and room lifecycle. <br>- It is a global singleton responsible for all operations such as creating, joining, and updating live room information.</td>
|
|
54
|
-
</tr>
|
|
55
|
-
</table>
|
|
56
|
-
|
|
11
|
+
| **Core Concept** | **Type** | **Core Responsibility & Description** |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| `LiveInfo` | `struct` | - Represents the complete information model of a live room.<br>- Includes the live room ID (`liveID`), name (`liveName`), owner information (`liveOwner`), and custom metadata (`metaData`), among other properties. |
|
|
14
|
+
| `LiveListState` | `struct` | - Represents the current state of the live list module.<br>- The core property `liveList` is a StateFlow containing the fetched live room list;<br>- `currentLive` represents the information of the live room the user is currently in. |
|
|
15
|
+
| `LiveListEvent` | `enum` | Handles global live room events, including `.onLiveEnded` (live ended) and `.onKickedOutOfLive` (user removed from live), for responding to key room state changes. |
|
|
16
|
+
| `LiveListStore` | `class` | - The core management class for interacting with the live room list and room lifecycle.<br>- It is a global singleton responsible for all operations such as creating, joining, and updating live room information. |
|
|
57
17
|
|
|
58
18
|
## Implementation
|
|
59
19
|
|
|
60
20
|
### Step 1: Component Integration
|
|
61
|
-
- **Video Live Streaming**:Refer to
|
|
62
|
-
|
|
63
|
-
- **Voice Chat Room**:Refer to [Quick Start](https://write.woa.com/document/194571595685527552) to integrate AtomicXCore and complete the implementation of the [Host Audio Streaming](https://write.woa.com/document/194571595685527552) and [Audience Join and Watch](https://write.woa.com/document/194571595685527552) features.
|
|
21
|
+
- **Video Live Streaming**:Refer to Quick Start to integrate AtomicXCore and complete the implementation of the Host Video Streaming and Audience Join and Watch features.
|
|
64
22
|
|
|
23
|
+
- **Voice Chat Room**:Refer to Quick Start to integrate AtomicXCore and complete the implementation of the Host Audio Streaming and Audience Join and Watch features.
|
|
65
24
|
|
|
66
25
|
### Step 2: Implement Audience Entry from Live Room List
|
|
67
26
|
|
|
@@ -85,7 +44,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
85
44
|
bindStore()
|
|
86
45
|
fetchLiveList()
|
|
87
46
|
}
|
|
88
|
-
|
|
47
|
+
|
|
89
48
|
private func bindStore() {
|
|
90
49
|
// Subscribe to state to automatically receive list updates
|
|
91
50
|
liveListStore.state
|
|
@@ -105,7 +64,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
105
64
|
}
|
|
106
65
|
}
|
|
107
66
|
}
|
|
108
|
-
|
|
67
|
+
|
|
109
68
|
// Called when the user taps a cell in the list
|
|
110
69
|
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
|
|
111
70
|
let selectedLiveInfo = liveList[indexPath.item]
|
|
@@ -114,7 +73,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
114
73
|
audienceVC.modalPresentationStyle = .fullScreen
|
|
115
74
|
present(audienceVC, animated: true)
|
|
116
75
|
}
|
|
117
|
-
|
|
76
|
+
|
|
118
77
|
// --- UICollectionViewDataSource, Delegate, and UI setup methods ---
|
|
119
78
|
private func setupUI() {
|
|
120
79
|
let layout = UICollectionViewFlowLayout()
|
|
@@ -129,7 +88,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
129
88
|
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
|
|
130
89
|
return liveList.count
|
|
131
90
|
}
|
|
132
|
-
|
|
91
|
+
|
|
133
92
|
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
|
|
134
93
|
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "LiveCell", for: indexPath)
|
|
135
94
|
cell.backgroundColor = .lightGray // Customize your cell style
|
|
@@ -137,7 +96,7 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
137
96
|
// ... (e.g.: cell.titleLabel.text = liveInfo.liveName)
|
|
138
97
|
return cell
|
|
139
98
|
}
|
|
140
|
-
|
|
99
|
+
|
|
141
100
|
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
|
|
142
101
|
// Adjust cell size for single or double column layout as needed
|
|
143
102
|
let width = (view.bounds.width - 30) / 2
|
|
@@ -147,80 +106,16 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
147
106
|
```
|
|
148
107
|
|
|
149
108
|
#### LiveInfo Parameter Reference
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
<td rowspan="1" colSpan="1" >`liveID`</td>
|
|
161
|
-
|
|
162
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
163
|
-
|
|
164
|
-
<td rowspan="1" colSpan="1" >Unique identifier for the live room</td>
|
|
165
|
-
</tr>
|
|
166
|
-
|
|
167
|
-
<tr>
|
|
168
|
-
<td rowspan="1" colSpan="1" >`liveName`</td>
|
|
169
|
-
|
|
170
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
171
|
-
|
|
172
|
-
<td rowspan="1" colSpan="1" >Title of the live room</td>
|
|
173
|
-
</tr>
|
|
174
|
-
|
|
175
|
-
<tr>
|
|
176
|
-
<td rowspan="1" colSpan="1" >`coverURL`</td>
|
|
177
|
-
|
|
178
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
179
|
-
|
|
180
|
-
<td rowspan="1" colSpan="1" >URL of the live room cover image</td>
|
|
181
|
-
</tr>
|
|
182
|
-
|
|
183
|
-
<tr>
|
|
184
|
-
<td rowspan="1" colSpan="1" >`liveOwner`</td>
|
|
185
|
-
|
|
186
|
-
<td rowspan="1" colSpan="1" >[LiveUserInfo](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveuserinfo)</td>
|
|
187
|
-
|
|
188
|
-
<td rowspan="1" colSpan="1" >Personal information of the room owner</td>
|
|
189
|
-
</tr>
|
|
190
|
-
|
|
191
|
-
<tr>
|
|
192
|
-
<td rowspan="1" colSpan="1" >`totalViewerCount`</td>
|
|
193
|
-
|
|
194
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
195
|
-
|
|
196
|
-
<td rowspan="1" colSpan="1" >Total number of viewers in the live room</td>
|
|
197
|
-
</tr>
|
|
198
|
-
|
|
199
|
-
<tr>
|
|
200
|
-
<td rowspan="1" colSpan="1" >`categoryList`</td>
|
|
201
|
-
|
|
202
|
-
<td rowspan="1" colSpan="1" >`[NSNumber]`</td>
|
|
203
|
-
|
|
204
|
-
<td rowspan="1" colSpan="1" >List of category tags for the live room</td>
|
|
205
|
-
</tr>
|
|
206
|
-
|
|
207
|
-
<tr>
|
|
208
|
-
<td rowspan="1" colSpan="1" >`notice`</td>
|
|
209
|
-
|
|
210
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
211
|
-
|
|
212
|
-
<td rowspan="1" colSpan="1" >Announcement information for the live room</td>
|
|
213
|
-
</tr>
|
|
214
|
-
|
|
215
|
-
<tr>
|
|
216
|
-
<td rowspan="1" colSpan="1" >`metaData`</td>
|
|
217
|
-
|
|
218
|
-
<td rowspan="1" colSpan="1" >`[String: String]`</td>
|
|
219
|
-
|
|
220
|
-
<td rowspan="1" colSpan="1" >Developer-defined metadata for implementing complex business scenarios</td>
|
|
221
|
-
</tr>
|
|
222
|
-
</table>
|
|
223
|
-
|
|
109
|
+
| **Parameter Name** | **Type** | **Description** |
|
|
110
|
+
| --- | --- | --- |
|
|
111
|
+
| `liveID` | `String` | Unique identifier for the live room |
|
|
112
|
+
| `liveName` | `String` | Title of the live room |
|
|
113
|
+
| `coverURL` | `String` | URL of the live room cover image |
|
|
114
|
+
| `liveOwner` | [LiveUserInfo](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveuserinfo) | Personal information of the room owner |
|
|
115
|
+
| `totalViewerCount` | `Int` | Total number of viewers in the live room |
|
|
116
|
+
| `categoryList` | `[NSNumber]` | List of category tags for the live room |
|
|
117
|
+
| `notice` | `String` | Announcement information for the live room |
|
|
118
|
+
| `metaData` | `[String: String]` | Developer-defined metadata for implementing complex business scenarios |
|
|
224
119
|
|
|
225
120
|
## Advanced Features
|
|
226
121
|
|
|
@@ -228,9 +123,6 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
228
123
|
|
|
229
124
|
On the live plaza page, users can select category tags such as "Hot", "Music", "Games", etc. When a tag is selected, the live room list dynamically filters to display only rooms in the chosen category, helping users quickly discover relevant content.
|
|
230
125
|
|
|
231
|
-

|
|
232
|
-
|
|
233
|
-
|
|
234
126
|
#### Implementation
|
|
235
127
|
|
|
236
128
|
Use the `categoryList` property in the `LiveInfo` model. When the host sets a category at the start of the stream, the `LiveInfo` object returned by `fetchLiveList` includes this category data. After fetching the full live room list, filter it on the client side based on the selected category and update the UI.
|
|
@@ -321,17 +213,13 @@ class LiveListViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
321
213
|
Users can switch between live rooms by swiping up or down. When a new live room is centered on the screen, its video will automatically start preview playback; when it is swiped away or no longer visible on the screen, playback will automatically stop to save bandwidth and device resources.
|
|
322
214
|
|
|
323
215
|
> **Note:**
|
|
324
|
-
>
|
|
216
|
+
>
|
|
325
217
|
|
|
326
218
|
> **Swipe-to-Play **is currently only supported for Video Live Streaming.
|
|
327
|
-
>
|
|
328
|
-
|
|
219
|
+
>
|
|
329
220
|
|
|
330
221
|
#### Interaction Flow
|
|
331
222
|
|
|
332
|
-

|
|
333
|
-
|
|
334
|
-
|
|
335
223
|
#### Implementation
|
|
336
224
|
|
|
337
225
|
`LiveCoreView` supports multiple instances. Create a separate `LiveCoreView` for each `UICollectionViewCell`. By listening to the scroll delegate methods of `UICollectionView`, you can control when the `LiveCoreView` in each cell should start or stop streaming, enabling "play on swipe in, stop on swipe out".
|
|
@@ -409,32 +297,10 @@ class LiveFeedViewController: UIViewController, UICollectionViewDataSource, UICo
|
|
|
409
297
|
## **API Documentation**
|
|
410
298
|
|
|
411
299
|
For detailed information on all public interfaces, properties, and methods of [LiveListStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) and related classes, refer to the official API documentation included with the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework. The relevant Stores used in this document are as follows:
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
<td rowspan="1" colSpan="1" >**Feature Description**</td>
|
|
417
|
-
|
|
418
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
419
|
-
</tr>
|
|
420
|
-
|
|
421
|
-
<tr>
|
|
422
|
-
<td rowspan="1" colSpan="1" >LiveCoreView</td>
|
|
423
|
-
|
|
424
|
-
<td rowspan="1" colSpan="1" >- Core view component for live video stream display and interaction. <br>- Responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host linking.</td>
|
|
425
|
-
|
|
426
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview)</td>
|
|
427
|
-
</tr>
|
|
428
|
-
|
|
429
|
-
<tr>
|
|
430
|
-
<td rowspan="1" colSpan="1" >LiveListStore</td>
|
|
431
|
-
|
|
432
|
-
<td rowspan="1" colSpan="1" >Full lifecycle management of live rooms: create, join, leave, destroy rooms; query room list; modify live information (name, announcement, etc.); listen to live status (such as being removed or ended).</td>
|
|
433
|
-
|
|
434
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore)</td>
|
|
435
|
-
</tr>
|
|
436
|
-
</table>
|
|
437
|
-
|
|
300
|
+
| **Store/Component** | **Feature Description** | **API Documentation** |
|
|
301
|
+
| --- | --- | --- |
|
|
302
|
+
| LiveCoreView | - Core view component for live video stream display and interaction.<br>- Responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host linking. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview) |
|
|
303
|
+
| LiveListStore | Full lifecycle management of live rooms: create, join, leave, destroy rooms; query room list; modify live information (name, announcement, etc.); listen to live status (such as being removed or ended). | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) |
|
|
438
304
|
|
|
439
305
|
## FAQs
|
|
440
306
|
|
|
@@ -450,7 +316,7 @@ We recommend two approaches:
|
|
|
450
316
|
|
|
451
317
|
**Approach 1 (Recommended): Use seatLayoutTemplateID for differentiation.**
|
|
452
318
|
|
|
453
|
-
This template ID defines the room layout. For supported template IDs and effects, refer to
|
|
319
|
+
This template ID defines the room layout. For supported template IDs and effects, refer to Run And Test.
|
|
454
320
|
- **Step 1: Specify ID when creating a room**
|
|
455
321
|
|
|
456
322
|
- When calling `LiveListStore.shared.createLive`, set the `seatLayoutTemplateID` property of `LiveInfo` based on your business scenario:
|
|
@@ -462,18 +328,15 @@ This template ID defines the room layout. For supported template IDs and effects
|
|
|
462
328
|
- **Step 2: Filter when fetching the list**
|
|
463
329
|
|
|
464
330
|
- On the client side, after receiving the list in `LiveListStore.state.liveList`, determine the business scenario by checking the template ID range.
|
|
465
|
-
|
|
466
331
|
|
|
467
332
|
> **Note:**
|
|
468
|
-
>
|
|
333
|
+
>
|
|
469
334
|
|
|
470
335
|
> If the seatLayoutTemplateID does not match your business scenario (voice chat room or video live room), seat layout features may not work as expected.
|
|
471
|
-
>
|
|
472
|
-
|
|
336
|
+
>
|
|
473
337
|
|
|
474
338
|
**Approach 2:****Add a business prefix to **`liveID`**.**
|
|
475
339
|
|
|
476
|
-
|
|
477
340
|
This is an optional, application-layer convention to help you filter rooms quickly.
|
|
478
341
|
|
|
479
342
|
- **Step 1: Add prefix when creating a room**
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
`LiveAudienceStore` is a module in `AtomicXCore` designed for managing audience information in live streaming rooms. With `LiveAudienceStore`, you can implement a comprehensive audience list and management system for your live streaming application.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Features
|
|
7
4
|
- **Real-Time Audience List**: Retrieve and display all audience information currently present in the live room.
|
|
8
5
|
|
|
@@ -14,58 +11,20 @@
|
|
|
14
11
|
|
|
15
12
|
- **Room Management**: The host or administrator can remove (kick out) any regular viewer from the live room.
|
|
16
13
|
|
|
17
|
-
|
|
18
14
|
## Core Concepts
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
<td rowspan="1" colSpan="1" >**Core Responsibilities & Description**</td>
|
|
26
|
-
</tr>
|
|
27
|
-
|
|
28
|
-
<tr>
|
|
29
|
-
<td rowspan="1" colSpan="1" >`LiveUserInfo`</td>
|
|
30
|
-
|
|
31
|
-
<td rowspan="1" colSpan="1" >data class</td>
|
|
32
|
-
|
|
33
|
-
<td rowspan="1" colSpan="1" >Represents the basic information model of an audience member (user). It contains the user's unique identifier (`userID`), nickname (`userName`), and avatar URL (`avatarURL`).</td>
|
|
34
|
-
</tr>
|
|
35
|
-
|
|
36
|
-
<tr>
|
|
37
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceState`</td>
|
|
38
|
-
|
|
39
|
-
<td rowspan="1" colSpan="1" >data class</td>
|
|
40
|
-
|
|
41
|
-
<td rowspan="1" colSpan="1" >Represents the current state of the audience module. Its core property `audienceList` is a StateFlow that stores the real-time state of the audience list; `audienceCount` represents the real-time state of the current total number of viewers.</td>
|
|
42
|
-
</tr>
|
|
43
|
-
|
|
44
|
-
<tr>
|
|
45
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceListener`</td>
|
|
46
|
-
|
|
47
|
-
<td rowspan="1" colSpan="1" >abstract class</td>
|
|
48
|
-
|
|
49
|
-
<td rowspan="1" colSpan="1" >Represents real-time audience activity events. It includes `onAudienceJoined` (audience joins) and `onAudienceLeft` (audience leaves), used for incremental updates to the audience list.</td>
|
|
50
|
-
</tr>
|
|
51
|
-
|
|
52
|
-
<tr>
|
|
53
|
-
<td rowspan="1" colSpan="1" >`LiveAudienceStore`</td>
|
|
54
|
-
|
|
55
|
-
<td rowspan="1" colSpan="1" >abstract class</td>
|
|
56
|
-
|
|
57
|
-
<td rowspan="1" colSpan="1" >This is the core management class for interacting with audience list functionality. Through it, you can obtain audience list snapshots, perform management operations, and subscribe to its `LiveAudienceListener` for real-time updates.</td>
|
|
58
|
-
</tr>
|
|
59
|
-
</table>
|
|
60
|
-
|
|
15
|
+
| **Core Concept** | **Type** | **Core Responsibilities & Description** |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `LiveUserInfo` | data class | Represents the basic information model of an audience member (user). It contains the user's unique identifier (`userID`), nickname (`userName`), and avatar URL (`avatarURL`). |
|
|
18
|
+
| `LiveAudienceState` | data class | Represents the current state of the audience module. Its core property `audienceList` is a StateFlow that stores the real-time state of the audience list; `audienceCount` represents the real-time state of the current total number of viewers. |
|
|
19
|
+
| `LiveAudienceListener` | abstract class | Represents real-time audience activity events. It includes `onAudienceJoined` (audience joins) and `onAudienceLeft` (audience leaves), used for incremental updates to the audience list. |
|
|
20
|
+
| `LiveAudienceStore` | abstract class | This is the core management class for interacting with audience list functionality. Through it, you can obtain audience list snapshots, perform management operations, and subscribe to its `LiveAudienceListener` for real-time updates. |
|
|
61
21
|
|
|
62
22
|
## Implementation Guide
|
|
63
23
|
|
|
64
24
|
### Step 1: Component Integration
|
|
65
|
-
- **Video Live Streaming**: Please refer to
|
|
66
|
-
|
|
67
|
-
- **Voice Chat Room**: Please refer to [Quick Start](https://write.woa.com/document/194571595678187521) to integrate AtomicXCore.
|
|
25
|
+
- **Video Live Streaming**: Please refer to Quick Start to integrate AtomicXCore
|
|
68
26
|
|
|
27
|
+
- **Voice Chat Room**: Please refer to Quick Start to integrate AtomicXCore.
|
|
69
28
|
|
|
70
29
|
### Step 2: Initialize and Retrieve the Audience List
|
|
71
30
|
|
|
@@ -86,11 +45,11 @@ class AudienceManager(
|
|
|
86
45
|
// Expose the [full] audience list state flow for UI layer subscription
|
|
87
46
|
private val _audienceList = MutableStateFlow<List<LiveUserInfo>>(emptyList())
|
|
88
47
|
val audienceList: StateFlow<List<LiveUserInfo>> = _audienceList.asStateFlow()
|
|
89
|
-
|
|
48
|
+
|
|
90
49
|
// Expose the audience count state flow
|
|
91
50
|
private val _audienceCount = MutableStateFlow(0)
|
|
92
51
|
val audienceCount: StateFlow<Int> = _audienceCount.asStateFlow()
|
|
93
|
-
|
|
52
|
+
|
|
94
53
|
init {
|
|
95
54
|
// 1. Subscribe to state and events, see next section for implementation
|
|
96
55
|
subscribeToAudienceState()
|
|
@@ -113,7 +72,7 @@ class AudienceManager(
|
|
|
113
72
|
}
|
|
114
73
|
})
|
|
115
74
|
}
|
|
116
|
-
|
|
75
|
+
|
|
117
76
|
// ... subsequent code
|
|
118
77
|
}
|
|
119
78
|
```
|
|
@@ -132,7 +91,7 @@ class AudienceManager {
|
|
|
132
91
|
}
|
|
133
92
|
}
|
|
134
93
|
|
|
135
|
-
scope.launch {
|
|
94
|
+
scope.launch {
|
|
136
95
|
// audienceCount is the real-time total
|
|
137
96
|
audienceStore.liveAudienceState.audienceCount.collect { count ->
|
|
138
97
|
_audienceCount.value = count
|
|
@@ -200,7 +159,7 @@ class AudienceManager {
|
|
|
200
159
|
override fun onSuccess() {
|
|
201
160
|
println("Successfully promoted user $userId to administrator")
|
|
202
161
|
}
|
|
203
|
-
|
|
162
|
+
|
|
204
163
|
override fun onFailure(code: Int, desc: String) {
|
|
205
164
|
println("Failed to set administrator: $desc")
|
|
206
165
|
}
|
|
@@ -276,40 +235,11 @@ class LiveRoomManager(
|
|
|
276
235
|
## API Documentation
|
|
277
236
|
|
|
278
237
|
For detailed information on all public interfaces, properties, and methods of [LiveAudienceStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-audience-store/index.html) and its related classes, refer to the official API documentation included with the [AtomicX Core](https://tencent-rtc.github.io/TUIKit_Android/index.html) framework. The relevant Stores used in this document are as follows:
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
286
|
-
</tr>
|
|
287
|
-
|
|
288
|
-
<tr>
|
|
289
|
-
<td rowspan="1" colSpan="1" >LiveCoreView</td>
|
|
290
|
-
|
|
291
|
-
<td rowspan="1" colSpan="1" >Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection.</td>
|
|
292
|
-
|
|
293
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
294
|
-
</tr>
|
|
295
|
-
|
|
296
|
-
<tr>
|
|
297
|
-
<td rowspan="1" colSpan="1" >LiveAudienceStore</td>
|
|
298
|
-
|
|
299
|
-
<td rowspan="1" colSpan="1" >Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events.</td>
|
|
300
|
-
|
|
301
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
302
|
-
</tr>
|
|
303
|
-
|
|
304
|
-
<tr>
|
|
305
|
-
<td rowspan="1" colSpan="1" >BarrageStore</td>
|
|
306
|
-
|
|
307
|
-
<td rowspan="1" colSpan="1" >Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time.</td>
|
|
308
|
-
|
|
309
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html)</td>
|
|
310
|
-
</tr>
|
|
311
|
-
</table>
|
|
312
|
-
|
|
238
|
+
| **Store/Component** | **Feature Description** | **API Documentation** |
|
|
239
|
+
| --- | --- | --- |
|
|
240
|
+
| LiveCoreView | Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
241
|
+
| LiveAudienceStore | Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
242
|
+
| BarrageStore | Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.barrage/-barrage-store/index.html) |
|
|
313
243
|
|
|
314
244
|
## FAQs
|
|
315
245
|
|
|
@@ -330,5 +260,4 @@ The update of `audienceCount` is not always strictly real-time. The mechanism is
|
|
|
330
260
|
|
|
331
261
|
- **What does this mean for developers?**
|
|
332
262
|
|
|
333
|
-
|
|
334
263
|
`audienceCount` is a near real-time, high-precision estimate, but in extreme high-concurrency scenarios, there may be brief delays or data loss. We recommend using it for UI display only, and not as the sole basis for billing, statistics, or other scenarios requiring absolute accuracy.
|