@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
|
AtomicXCore provides the [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) and [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html) modules, which are designed to streamline the entire audience co-hosting workflow for live streaming scenarios. You do not need to manage complex state synchronization or signaling logic—simply invoke a few intuitive methods to enable seamless audio and video interactions between hosts and audience members. This guide explains how to quickly implement voice co-hosting features in your Android app using `CoGuestStore` and `LiveSeatStore`.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Scenarios
|
|
7
4
|
|
|
8
5
|
`CoGuestStore` and `LiveSeatStore` support the following primary live streaming scenarios:
|
|
@@ -12,12 +9,11 @@ AtomicXCore provides the [CoGuestStore](https://tencent-rtc.github.io/TUIKit_And
|
|
|
12
9
|
|
|
13
10
|
- **Host Manages Mic Seats**: Hosts can manage mic seat users, including removing users, muting, and locking mic seats.
|
|
14
11
|
|
|
15
|
-
|
|
16
12
|
## Implementation
|
|
17
13
|
|
|
18
14
|
### Step 1: Component Integration
|
|
19
15
|
|
|
20
|
-
Refer to the
|
|
16
|
+
Refer to the Quick Start guide to integrate **AtomicXCore** into your project.
|
|
21
17
|
|
|
22
18
|
### Step 2: Implement Audience Mic-Link Request
|
|
23
19
|
|
|
@@ -26,16 +22,15 @@ Refer to the [Quick Start](https://write.woa.com/document/194571595678187521) gu
|
|
|
26
22
|
As an audience member, your main tasks are **initiating a request, handling the response**, and **leaving the mic proactively**.
|
|
27
23
|
1. **Initiate Mic-Link Request**
|
|
28
24
|
|
|
29
|
-
|
|
30
25
|
When the user taps the "Request to Co-host" button, call the `applyForSeat` method:
|
|
31
26
|
|
|
32
27
|
``` java
|
|
33
28
|
import io.trtc.tuikit.atomicxcore.api.CompletionHandler
|
|
34
29
|
import io.trtc.tuikit.atomicxcore.api.live.CoGuestStore
|
|
35
|
-
|
|
30
|
+
|
|
36
31
|
val liveId = "Room ID"
|
|
37
32
|
val guestStore = CoGuestStore.create(liveId)
|
|
38
|
-
|
|
33
|
+
|
|
39
34
|
// User taps "Request to Co-host"
|
|
40
35
|
fun requestToConnect() {
|
|
41
36
|
// timeout: request timeout, e.g., 30 seconds
|
|
@@ -43,7 +38,7 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
43
38
|
override fun onSuccess() {
|
|
44
39
|
print("Co-hosting request sent, waiting for host to respond...")
|
|
45
40
|
}
|
|
46
|
-
|
|
41
|
+
|
|
47
42
|
override fun onFailure(code: Int, desc: String) {
|
|
48
43
|
print("Failed to send request: $desc")
|
|
49
44
|
}
|
|
@@ -52,14 +47,13 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
52
47
|
```
|
|
53
48
|
2. **Listen for Host Response**
|
|
54
49
|
|
|
55
|
-
|
|
56
50
|
Subscribe to `GuestListener` to handle the host’s approval or rejection:
|
|
57
51
|
|
|
58
52
|
``` java
|
|
59
53
|
import io.trtc.tuikit.atomicxcore.api.device.DeviceStore
|
|
60
54
|
import io.trtc.tuikit.atomicxcore.api.live.GuestListener
|
|
61
55
|
import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
|
|
62
|
-
|
|
56
|
+
|
|
63
57
|
// Add listener during Activity/Fragment initialization
|
|
64
58
|
fun subscribeGuestEvents() {
|
|
65
59
|
val guestListener = object : GuestListener() {
|
|
@@ -81,7 +75,6 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
81
75
|
```
|
|
82
76
|
3. **Leave Mic Proactively**
|
|
83
77
|
|
|
84
|
-
|
|
85
78
|
To leave the mic seat and revert to audience status, call `disconnect`:
|
|
86
79
|
|
|
87
80
|
``` java
|
|
@@ -91,7 +84,7 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
91
84
|
override fun onSuccess() {
|
|
92
85
|
print("Successfully left the mic")
|
|
93
86
|
}
|
|
94
|
-
|
|
87
|
+
|
|
95
88
|
override fun onFailure(code: Int, desc: String) {
|
|
96
89
|
print("Failed to leave mic: $desc")
|
|
97
90
|
}
|
|
@@ -100,7 +93,6 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
100
93
|
```
|
|
101
94
|
4. **(Optional) Cancel Request**
|
|
102
95
|
|
|
103
|
-
|
|
104
96
|
If the audience member wishes to withdraw their request before the host responds, call `cancelApplication`:
|
|
105
97
|
|
|
106
98
|
``` java
|
|
@@ -110,7 +102,7 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
110
102
|
override fun onSuccess() {
|
|
111
103
|
print("Request cancelled")
|
|
112
104
|
}
|
|
113
|
-
|
|
105
|
+
|
|
114
106
|
override fun onFailure(code: Int, desc: String) {
|
|
115
107
|
print("Failed to cancel request: $desc")
|
|
116
108
|
}
|
|
@@ -123,17 +115,16 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
123
115
|
As the host, your main tasks are **receiving requests, displaying the request list**, and **handling requests**.
|
|
124
116
|
1. **Listen for New Mic-Link Requests**
|
|
125
117
|
|
|
126
|
-
|
|
127
118
|
Subscribe to `HostListener` to receive notifications when an audience member requests to join the mic:
|
|
128
119
|
|
|
129
120
|
``` java
|
|
130
121
|
import io.trtc.tuikit.atomicxcore.api.live.CoGuestStore
|
|
131
122
|
import io.trtc.tuikit.atomicxcore.api.live.HostListener
|
|
132
123
|
import io.trtc.tuikit.atomicxcore.api.live.LiveUserInfo
|
|
133
|
-
|
|
124
|
+
|
|
134
125
|
val liveId = "Room ID"
|
|
135
126
|
val guestStore = CoGuestStore.create(liveId)
|
|
136
|
-
|
|
127
|
+
|
|
137
128
|
// Subscribe to host events
|
|
138
129
|
val hostListener = object : HostListener() {
|
|
139
130
|
override fun onGuestApplicationReceived(guestUser: LiveUserInfo) {
|
|
@@ -146,14 +137,13 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
146
137
|
```
|
|
147
138
|
2. **Display Request List**
|
|
148
139
|
|
|
149
|
-
|
|
150
140
|
Subscribe to the `applicants` property in `CoGuestStore`’s state to update the UI in real time:
|
|
151
141
|
|
|
152
142
|
``` java
|
|
153
143
|
import kotlinx.coroutines.CoroutineScope
|
|
154
144
|
import kotlinx.coroutines.Dispatchers
|
|
155
145
|
import kotlinx.coroutines.launch
|
|
156
|
-
|
|
146
|
+
|
|
157
147
|
// Subscribe to state changes
|
|
158
148
|
fun observeApplicants() {
|
|
159
149
|
CoroutineScope(Dispatchers.Main).launch {
|
|
@@ -166,7 +156,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
166
156
|
```
|
|
167
157
|
3. **Handle Mic-Link Requests**
|
|
168
158
|
|
|
169
|
-
|
|
170
159
|
Approve or reject requests using the following methods:
|
|
171
160
|
|
|
172
161
|
``` java
|
|
@@ -178,14 +167,14 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
178
167
|
override fun onSuccess() {
|
|
179
168
|
print("Approved $userId's request. They are joining the mic.")
|
|
180
169
|
}
|
|
181
|
-
|
|
170
|
+
|
|
182
171
|
override fun onFailure(code: Int, desc: String) {
|
|
183
172
|
print("Failed to approve request: $desc")
|
|
184
173
|
}
|
|
185
174
|
}
|
|
186
175
|
)
|
|
187
176
|
}
|
|
188
|
-
|
|
177
|
+
|
|
189
178
|
// Host taps "Reject"
|
|
190
179
|
fun reject(userId: String) {
|
|
191
180
|
guestStore.rejectApplication(
|
|
@@ -194,7 +183,7 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
194
183
|
override fun onSuccess() {
|
|
195
184
|
print("Rejected $userId's request")
|
|
196
185
|
}
|
|
197
|
-
|
|
186
|
+
|
|
198
187
|
override fun onFailure(code: Int, desc: String) {
|
|
199
188
|
print("Failed to reject request: $desc")
|
|
200
189
|
}
|
|
@@ -208,7 +197,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
208
197
|
#### Host Side Implementation
|
|
209
198
|
1. **Invite Audience Mic**
|
|
210
199
|
|
|
211
|
-
|
|
212
200
|
To invite an audience member, call `inviteToSeat`:
|
|
213
201
|
|
|
214
202
|
``` java
|
|
@@ -219,7 +207,7 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
219
207
|
override fun onSuccess() {
|
|
220
208
|
print("Invitation sent to $userId, waiting for response...")
|
|
221
209
|
}
|
|
222
|
-
|
|
210
|
+
|
|
223
211
|
override fun onFailure(code: Int, desc: String) {
|
|
224
212
|
print("Failed to send invitation: $desc")
|
|
225
213
|
}
|
|
@@ -228,7 +216,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
228
216
|
```
|
|
229
217
|
2. **Listen for Audience Response**
|
|
230
218
|
|
|
231
|
-
|
|
232
219
|
Handle the audience member’s response via `HostListener`:
|
|
233
220
|
|
|
234
221
|
``` java
|
|
@@ -245,7 +232,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
245
232
|
#### Audience Side Implementation
|
|
246
233
|
1. **Receive Host Invitation**
|
|
247
234
|
|
|
248
|
-
|
|
249
235
|
Listen for invitations via `GuestListener`:
|
|
250
236
|
|
|
251
237
|
``` java
|
|
@@ -257,12 +243,11 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
257
243
|
```
|
|
258
244
|
2. **Respond to Invitation**
|
|
259
245
|
|
|
260
|
-
|
|
261
246
|
Invoke the appropriate method based on the user’s choice:
|
|
262
247
|
|
|
263
248
|
``` java
|
|
264
249
|
val inviterId = "Host ID who sent the invitation" // From onHostInvitationReceived
|
|
265
|
-
|
|
250
|
+
|
|
266
251
|
// User taps "Accept"
|
|
267
252
|
fun accept() {
|
|
268
253
|
guestStore.acceptInvitation(inviterId, object : CompletionHandler {
|
|
@@ -270,13 +255,13 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
270
255
|
// Enable microphone
|
|
271
256
|
DeviceStore.shared().openLocalMicrophone(null)
|
|
272
257
|
}
|
|
273
|
-
|
|
258
|
+
|
|
274
259
|
override fun onFailure(code: Int, desc: String) {
|
|
275
260
|
print("Failed to accept invitation: $desc")
|
|
276
261
|
}
|
|
277
262
|
})
|
|
278
263
|
}
|
|
279
|
-
|
|
264
|
+
|
|
280
265
|
// User taps "Reject"
|
|
281
266
|
fun reject() {
|
|
282
267
|
guestStore.rejectInvitation(inviterId, object : CompletionHandler {
|
|
@@ -303,7 +288,6 @@ On-mic users (including the host) can control their own microphone mute status v
|
|
|
303
288
|
|
|
304
289
|
- **Unmute:** Call `unmuteMicrophone(completion)`.
|
|
305
290
|
|
|
306
|
-
|
|
307
291
|
#### Example Code
|
|
308
292
|
``` java
|
|
309
293
|
import io.trtc.tuikit.atomicxcore.api.live.LiveSeatStore
|
|
@@ -316,24 +300,9 @@ seatStore.unmuteMicrophone(null) // Unmute
|
|
|
316
300
|
```
|
|
317
301
|
|
|
318
302
|
#### unmuteMicrophone Parameters
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
324
|
-
|
|
325
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
326
|
-
</tr>
|
|
327
|
-
|
|
328
|
-
<tr>
|
|
329
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
330
|
-
|
|
331
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
332
|
-
|
|
333
|
-
<td rowspan="1" colSpan="1" >Callback after operation completes.</td>
|
|
334
|
-
</tr>
|
|
335
|
-
</table>
|
|
336
|
-
|
|
303
|
+
| **Parameter** | **Type** | **Description** |
|
|
304
|
+
| --- | --- | --- |
|
|
305
|
+
| `completion` | `CompletionHandler?` | Callback after operation completes. |
|
|
337
306
|
|
|
338
307
|
### Host Remotely Controls Mic Seat User’s Microphone
|
|
339
308
|
|
|
@@ -346,7 +315,6 @@ Hosts can forcibly mute or invite mic seat users to unmute.
|
|
|
346
315
|
|
|
347
316
|
3. **User Unmutes Themselves:** After receiving an unlock notification, the user must call `unmuteMicrophone()` to resume audio transmission.
|
|
348
317
|
|
|
349
|
-
|
|
350
318
|
#### Example Code
|
|
351
319
|
|
|
352
320
|
##### Host Side
|
|
@@ -396,60 +364,16 @@ seatStore.addLiveSeatEventListener(seatListener)
|
|
|
396
364
|
```
|
|
397
365
|
|
|
398
366
|
#### closeRemoteMicrophone Parameters
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
404
|
-
|
|
405
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
406
|
-
</tr>
|
|
407
|
-
|
|
408
|
-
<tr>
|
|
409
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
410
|
-
|
|
411
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
412
|
-
|
|
413
|
-
<td rowspan="1" colSpan="1" >The user ID of the target user.</td>
|
|
414
|
-
</tr>
|
|
415
|
-
|
|
416
|
-
<tr>
|
|
417
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
418
|
-
|
|
419
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
420
|
-
|
|
421
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
422
|
-
</tr>
|
|
423
|
-
</table>
|
|
424
|
-
|
|
367
|
+
| **Parameter** | **Type** | **Description** |
|
|
368
|
+
| --- | --- | --- |
|
|
369
|
+
| `userID` | `String` | The user ID of the target user. |
|
|
370
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
425
371
|
|
|
426
372
|
#### openRemoteMicrophone Parameters
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
432
|
-
|
|
433
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
434
|
-
</tr>
|
|
435
|
-
|
|
436
|
-
<tr>
|
|
437
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
438
|
-
|
|
439
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
440
|
-
|
|
441
|
-
<td rowspan="1" colSpan="1" >The user ID of the target user.</td>
|
|
442
|
-
</tr>
|
|
443
|
-
|
|
444
|
-
<tr>
|
|
445
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
446
|
-
|
|
447
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
448
|
-
|
|
449
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
450
|
-
</tr>
|
|
451
|
-
</table>
|
|
452
|
-
|
|
373
|
+
| **Parameter** | **Type** | **Description** |
|
|
374
|
+
| --- | --- | --- |
|
|
375
|
+
| `userID` | `String` | The user ID of the target user. |
|
|
376
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
453
377
|
|
|
454
378
|
### Host Removes On-Mic User from the Seat
|
|
455
379
|
|
|
@@ -458,7 +382,6 @@ seatStore.addLiveSeatEventListener(seatListener)
|
|
|
458
382
|
|
|
459
383
|
2. **Event Notification:** The removed user receives the `onKickedOffSeat` event in `GuestListener`.
|
|
460
384
|
|
|
461
|
-
|
|
462
385
|
#### Example Code
|
|
463
386
|
``` java
|
|
464
387
|
// Remove "userB" from mic seat
|
|
@@ -479,32 +402,10 @@ override fun onKickedOffSeat(seatIndex: Int, hostUser: LiveUserInfo) {
|
|
|
479
402
|
```
|
|
480
403
|
|
|
481
404
|
#### kickUserOutOfSeat Parameters
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
487
|
-
|
|
488
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
489
|
-
</tr>
|
|
490
|
-
|
|
491
|
-
<tr>
|
|
492
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
493
|
-
|
|
494
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
495
|
-
|
|
496
|
-
<td rowspan="1" colSpan="1" >The user ID of the user to remove.</td>
|
|
497
|
-
</tr>
|
|
498
|
-
|
|
499
|
-
<tr>
|
|
500
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
501
|
-
|
|
502
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
503
|
-
|
|
504
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
505
|
-
</tr>
|
|
506
|
-
</table>
|
|
507
|
-
|
|
405
|
+
| **Parameter** | **Type** | **Description** |
|
|
406
|
+
| --- | --- | --- |
|
|
407
|
+
| `userID` | `String` | The user ID of the user to remove. |
|
|
408
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
508
409
|
|
|
509
410
|
### Host Locks and Unlocks Mic Seats
|
|
510
411
|
|
|
@@ -515,7 +416,6 @@ Hosts can lock or unlock specific mic seats.
|
|
|
515
416
|
|
|
516
417
|
2. **Unlock Mic Seat:** Call `unlockSeat` to make the seat available again.
|
|
517
418
|
|
|
518
|
-
|
|
519
419
|
#### Example Code
|
|
520
420
|
``` java
|
|
521
421
|
// Lock mic seat 2
|
|
@@ -540,60 +440,16 @@ seatStore.unlockSeat(2, object : CompletionHandler {
|
|
|
540
440
|
```
|
|
541
441
|
|
|
542
442
|
#### lockSeat Parameters
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
548
|
-
|
|
549
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
550
|
-
</tr>
|
|
551
|
-
|
|
552
|
-
<tr>
|
|
553
|
-
<td rowspan="1" colSpan="1" >`seatIndex`</td>
|
|
554
|
-
|
|
555
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
556
|
-
|
|
557
|
-
<td rowspan="1" colSpan="1" >Index of the mic seat to lock.</td>
|
|
558
|
-
</tr>
|
|
559
|
-
|
|
560
|
-
<tr>
|
|
561
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
562
|
-
|
|
563
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
564
|
-
|
|
565
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
566
|
-
</tr>
|
|
567
|
-
</table>
|
|
568
|
-
|
|
443
|
+
| **Parameter** | **Type** | **Description** |
|
|
444
|
+
| --- | --- | --- |
|
|
445
|
+
| `seatIndex` | `Int` | Index of the mic seat to lock. |
|
|
446
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
569
447
|
|
|
570
448
|
#### unlockSeat Parameters
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
576
|
-
|
|
577
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
578
|
-
</tr>
|
|
579
|
-
|
|
580
|
-
<tr>
|
|
581
|
-
<td rowspan="1" colSpan="1" >`seatIndex`</td>
|
|
582
|
-
|
|
583
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
584
|
-
|
|
585
|
-
<td rowspan="1" colSpan="1" >Index of the mic seat to unlock.</td>
|
|
586
|
-
</tr>
|
|
587
|
-
|
|
588
|
-
<tr>
|
|
589
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
590
|
-
|
|
591
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
592
|
-
|
|
593
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
594
|
-
</tr>
|
|
595
|
-
</table>
|
|
596
|
-
|
|
449
|
+
| **Parameter** | **Type** | **Description** |
|
|
450
|
+
| --- | --- | --- |
|
|
451
|
+
| `seatIndex` | `Int` | Index of the mic seat to unlock. |
|
|
452
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
597
453
|
|
|
598
454
|
### Move Mic Seats
|
|
599
455
|
|
|
@@ -604,7 +460,6 @@ Hosts and mic seat users can call `moveUserToSeat` to move users between mic sea
|
|
|
604
460
|
|
|
605
461
|
2. **On-Mic User Moves Themselves:** On-mic users can also call this API to move themselves. In this case, `userID` must be the user's own ID, `targetIndex` is the desired new seat index, and the `policy` parameter is ignored. If the target seat is occupied, the move fails with an error.
|
|
606
462
|
|
|
607
|
-
|
|
608
463
|
#### Example Code
|
|
609
464
|
``` java
|
|
610
465
|
import io.trtc.tuikit.atomicxcore.api.CompletionHandler
|
|
@@ -624,78 +479,20 @@ seatStore.moveUserToSeat("userC",
|
|
|
624
479
|
```
|
|
625
480
|
|
|
626
481
|
#### moveUserToSeat Parameters
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
<
|
|
632
|
-
|
|
633
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
634
|
-
</tr>
|
|
635
|
-
|
|
636
|
-
<tr>
|
|
637
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
638
|
-
|
|
639
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
640
|
-
|
|
641
|
-
<td rowspan="1" colSpan="1" >The user ID of the user to move.</td>
|
|
642
|
-
</tr>
|
|
643
|
-
|
|
644
|
-
<tr>
|
|
645
|
-
<td rowspan="1" colSpan="1" >`targetIndex`</td>
|
|
646
|
-
|
|
647
|
-
<td rowspan="1" colSpan="1" >`Int`</td>
|
|
648
|
-
|
|
649
|
-
<td rowspan="1" colSpan="1" >Target mic seat index.</td>
|
|
650
|
-
</tr>
|
|
651
|
-
|
|
652
|
-
<tr>
|
|
653
|
-
<td rowspan="1" colSpan="1" >`policy`</td>
|
|
654
|
-
|
|
655
|
-
<td rowspan="1" colSpan="1" >`MoveSeatPolicy?`</td>
|
|
656
|
-
|
|
657
|
-
<td rowspan="1" colSpan="1" >Seat movement policy if the target seat is occupied:<br>- `abortWhenOccupied`: Abort move if seat is occupied (default)<br>- `forceReplace`: Force replace the user on the target seat; replaced user will be removed<br>- `swapPosition`: Swap positions with the user on the target seat.</td>
|
|
658
|
-
</tr>
|
|
659
|
-
|
|
660
|
-
<tr>
|
|
661
|
-
<td rowspan="1" colSpan="1" >`completion`</td>
|
|
662
|
-
|
|
663
|
-
<td rowspan="1" colSpan="1" >`CompletionHandler?`</td>
|
|
664
|
-
|
|
665
|
-
<td rowspan="1" colSpan="1" >Callback after request completes.</td>
|
|
666
|
-
</tr>
|
|
667
|
-
</table>
|
|
668
|
-
|
|
482
|
+
| **Parameter** | **Type** | **Description** |
|
|
483
|
+
| --- | --- | --- |
|
|
484
|
+
| `userID` | `String` | The user ID of the user to move. |
|
|
485
|
+
| `targetIndex` | `Int` | Target mic seat index. |
|
|
486
|
+
| `policy` | `MoveSeatPolicy?` | Seat movement policy if the target seat is occupied:<br>- `abortWhenOccupied`: Abort move if seat is occupied (default)<br>- `forceReplace`: Force replace the user on the target seat; replaced user will be removed<br>- `swapPosition`: Swap positions with the user on the target seat. |
|
|
487
|
+
| `completion` | `CompletionHandler?` | Callback after request completes. |
|
|
669
488
|
|
|
670
489
|
## API Documentation
|
|
671
490
|
|
|
672
491
|
For detailed information about all public interfaces, properties, and methods of [CoGuestStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore), [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore), and related classes, refer to the official [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework API documentation. The relevant stores used in this guide are as follows:
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
<td rowspan="1" colSpan="1" >**Feature Description**</td>
|
|
678
|
-
|
|
679
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
680
|
-
</tr>
|
|
681
|
-
|
|
682
|
-
<tr>
|
|
683
|
-
<td rowspan="1" colSpan="1" >CoGuestStore</td>
|
|
684
|
-
|
|
685
|
-
<td rowspan="1" colSpan="1" >Audience co-hosting management: co-hosting requests/invitations, approval/rejection, co-host member permission control (microphone/camera), state synchronization.</td>
|
|
686
|
-
|
|
687
|
-
<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.live/-co-guest-store/index.html)</td>
|
|
688
|
-
</tr>
|
|
689
|
-
|
|
690
|
-
<tr>
|
|
691
|
-
<td rowspan="1" colSpan="1" >LiveSeatStore</td>
|
|
692
|
-
|
|
693
|
-
<td rowspan="1" colSpan="1" >Mic seat management: mute/unmute, lock/unlock mic seat, remove user from mic, remote microphone control, mic seat list state monitoring.</td>
|
|
694
|
-
|
|
695
|
-
<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.live/-live-seat-store/index.html)</td>
|
|
696
|
-
</tr>
|
|
697
|
-
</table>
|
|
698
|
-
|
|
492
|
+
| **Store/Component** | **Feature Description** | **API Documentation** |
|
|
493
|
+
| --- | --- | --- |
|
|
494
|
+
| CoGuestStore | Audience co-hosting management: co-hosting requests/invitations, approval/rejection, co-host member permission control (microphone/camera), state synchronization. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-guest-store/index.html) |
|
|
495
|
+
| LiveSeatStore | Mic seat management: mute/unmute, lock/unlock mic seat, remove user from mic, remote microphone control, mic seat list state monitoring. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html) |
|
|
699
496
|
|
|
700
497
|
## FAQs
|
|
701
498
|
|
|
@@ -706,7 +503,6 @@ The main differences are in business logic and UI design:
|
|
|
706
503
|
|
|
707
504
|
- `Voice Room (Audio Chat Room)`**:** The mic seat grid is central. Do not use `LiveCoreView`; instead, build a grid UI (e.g., `RecyclerView`) based on `LiveSeatStore.state` (especially `seatList`). The UI displays each mic seat’s `SeatInfo`—occupied, muted, locked, or speaking—in real time. Only the microphone needs to be enabled.
|
|
708
505
|
|
|
709
|
-
|
|
710
506
|
### How do I update mic seat information (such as occupancy and mute status) in the UI in real time?
|
|
711
507
|
|
|
712
508
|
Subscribe to the `seatList` property in `LiveSeatState`, which is a reactive `List<SeatInfo>`. When the array changes, update your mic seat UI. For each seat:
|
|
@@ -716,7 +512,6 @@ Subscribe to the `seatList` property in `LiveSeatState`, which is a reactive `Li
|
|
|
716
512
|
|
|
717
513
|
- Use `seatInfo.userInfo.microphoneStatus` for the user’s microphone status.
|
|
718
514
|
|
|
719
|
-
|
|
720
515
|
### What is the difference between microphone interfaces in LiveSeatStore and DeviceStore?
|
|
721
516
|
|
|
722
517
|
`DeviceStore` manages the physical microphone device, while `LiveSeatStore` manages mic seat business logic (audio stream).
|
|
@@ -726,14 +521,12 @@ Subscribe to the `seatList` property in `LiveSeatState`, which is a reactive `Li
|
|
|
726
521
|
|
|
727
522
|
- `closeLocalMicrophone`: Stops audio capture and releases the microphone device.
|
|
728
523
|
|
|
729
|
-
|
|
730
524
|
`LiveSeatStore:`
|
|
731
525
|
|
|
732
526
|
- `muteMicrophone`: Mutes the audio stream sent to remote users; the microphone device remains active.
|
|
733
527
|
|
|
734
528
|
- `unmuteMicrophone`: Unmutes the audio stream.
|
|
735
529
|
|
|
736
|
-
|
|
737
530
|
**Recommended workflow:** "Open the device once, control mute/unmute while on mic"
|
|
738
531
|
|
|
739
532
|
1. **When joining mic:** When an audience member successfully joins the mic, call `openLocalMicrophone` once to start the device.
|
|
@@ -741,5 +534,3 @@ Subscribe to the `seatList` property in `LiveSeatState`, which is a reactive `Li
|
|
|
741
534
|
2. **While on mic:** All "mute" and "unmute" actions while on mic should use `muteMicrophone` and `unmuteMicrophone` to control the audio stream.
|
|
742
535
|
|
|
743
536
|
3. **When leaving mic:** When leaving mic (e.g., calling `disconnect`), call `closeLocalMicrophone` to release the device.
|
|
744
|
-
|
|
745
|
-
|