@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 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html) and [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_seat_store/LiveSeatStore-class.html) modules, used to manage the complete business process of audience mic connection. Users do not need to worry about complex state synchronization and signaling interaction, just call a few simple methods to add powerful audio-video interaction between audience and anchor to your live stream. This document will guide you on how to use `CoGuestStore` and `LiveSeatStore` for quick implementation of audio mic connection in Flutter application.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
|
-
|
|
6
3
|
## Core Scenario
|
|
7
4
|
|
|
8
5
|
`CoGuestStore` and `LiveSeatStore` support the following mainstream scenarios:
|
|
@@ -12,22 +9,20 @@
|
|
|
12
9
|
|
|
13
10
|
- **Anchor seat management**: The anchor can perform operations such as forced microphone removal, muting, and locking on the user on the seat.
|
|
14
11
|
|
|
15
|
-
|
|
16
12
|
## Implementation Steps
|
|
17
13
|
|
|
18
14
|
### Step 1: Component Integration
|
|
19
15
|
|
|
20
|
-
Refer to
|
|
16
|
+
Refer to quick integration to integrate **AtomicXCore**.
|
|
21
17
|
|
|
22
18
|
> **Note:**
|
|
23
|
-
>
|
|
19
|
+
>
|
|
24
20
|
|
|
25
21
|
> Before implementing the co-anchoring function, you need to get the `liveId` (the unique identifier of the live streaming room) to distinguish different live streaming rooms. The method for obtaining it is as follows.
|
|
26
|
-
>
|
|
22
|
+
>
|
|
27
23
|
> - **Anchor**: Specify when creating a live stream via `LiveListStore.shared.createLive(liveInfo)`.
|
|
28
24
|
> - **Client**: Get it from `liveInfo` in `LiveListState.liveList.value`, or obtain it by the Anchor sharing the live streaming room ID.
|
|
29
25
|
|
|
30
|
-
|
|
31
26
|
### Step 2: Implement Audience Mic-Link Request
|
|
32
27
|
|
|
33
28
|
#### Audience Side Implementation
|
|
@@ -35,21 +30,20 @@ Refer to [quick integration](https://write.woa.com/document/200555778169073664)
|
|
|
35
30
|
As an audience member, your main tasks are **initiating a request, handling the response**, and **leaving the mic proactively**.
|
|
36
31
|
1. **Initiate Mic-Link Request**
|
|
37
32
|
|
|
38
|
-
|
|
39
33
|
When the user taps the "Request Mic-Link" button in the UI, call the `applyForSeat` method.
|
|
40
34
|
|
|
41
35
|
``` java
|
|
42
36
|
import 'package:atomic_x_core/atomicxcore.dart';
|
|
43
|
-
|
|
37
|
+
|
|
44
38
|
final String liveId = "room ID";
|
|
45
39
|
late CoGuestStore guestStore;
|
|
46
|
-
|
|
40
|
+
|
|
47
41
|
@override
|
|
48
42
|
void initState() {
|
|
49
43
|
super.initState();
|
|
50
44
|
guestStore = CoGuestStore.create(liveId);
|
|
51
45
|
}
|
|
52
|
-
|
|
46
|
+
|
|
53
47
|
// User click "Apply for Mic Connection"
|
|
54
48
|
Future<void> requestToConnect() async {
|
|
55
49
|
// seatIndex: The seat index, starting from 0, represents the applied microphone position. 0 means the first seat. View seat status via LiveSeatState.seatList.value and select an idle seat.
|
|
@@ -69,12 +63,11 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
69
63
|
```
|
|
70
64
|
2. **Listen for Host Response**
|
|
71
65
|
|
|
72
|
-
|
|
73
66
|
By adding `GuestListener`, you can receive the host's response
|
|
74
67
|
|
|
75
68
|
``` java
|
|
76
69
|
late GuestListener _guestListener;
|
|
77
|
-
|
|
70
|
+
|
|
78
71
|
// Subscribe to events when your Widget initializes
|
|
79
72
|
void subscribeGuestEvents() {
|
|
80
73
|
_guestListener = GuestListener(
|
|
@@ -94,7 +87,7 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
94
87
|
);
|
|
95
88
|
guestStore.addGuestListener(_guestListener);
|
|
96
89
|
}
|
|
97
|
-
|
|
90
|
+
|
|
98
91
|
@override
|
|
99
92
|
void dispose() {
|
|
100
93
|
guestStore.removeGuestListener(_guestListener);
|
|
@@ -103,7 +96,6 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
103
96
|
```
|
|
104
97
|
3. **Leave Mic Proactively**
|
|
105
98
|
|
|
106
|
-
|
|
107
99
|
When an audience member on mic wants to end the interaction, call `disConnect` to return to regular audience status.
|
|
108
100
|
|
|
109
101
|
``` java
|
|
@@ -119,7 +111,6 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
119
111
|
```
|
|
120
112
|
4. **(Optional) Cancel Request**
|
|
121
113
|
|
|
122
|
-
|
|
123
114
|
If the audience member wants to withdraw the request before the host responds, call `cancelApplication`.
|
|
124
115
|
|
|
125
116
|
``` java
|
|
@@ -139,21 +130,20 @@ As an audience member, your main tasks are **initiating a request, handling the
|
|
|
139
130
|
As the host, your main tasks are **receiving requests, displaying the request list**, and **handling requests**.
|
|
140
131
|
1. **Listen for New Mic-Link Requests**
|
|
141
132
|
|
|
142
|
-
|
|
143
133
|
By adding `HostListener`, you can receive immediate notification when a new audience applies and prompt.
|
|
144
134
|
|
|
145
135
|
``` java
|
|
146
136
|
import 'package:atomic_x_core/atomicxcore.dart';
|
|
147
|
-
|
|
137
|
+
|
|
148
138
|
final String liveId = "room ID";
|
|
149
139
|
late CoGuestStore guestStore;
|
|
150
140
|
late HostListener _hostListener;
|
|
151
|
-
|
|
141
|
+
|
|
152
142
|
@override
|
|
153
143
|
void initState() {
|
|
154
144
|
super.initState();
|
|
155
145
|
guestStore = CoGuestStore.create(liveId);
|
|
156
|
-
|
|
146
|
+
|
|
157
147
|
// Subscribe to anchor event
|
|
158
148
|
_hostListener = HostListener(
|
|
159
149
|
onGuestApplicationReceived: (guestUser) {
|
|
@@ -163,7 +153,7 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
163
153
|
);
|
|
164
154
|
guestStore.addHostListener(_hostListener);
|
|
165
155
|
}
|
|
166
|
-
|
|
156
|
+
|
|
167
157
|
@override
|
|
168
158
|
void dispose() {
|
|
169
159
|
guestStore.removeHostListener(_hostListener);
|
|
@@ -172,23 +162,22 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
172
162
|
```
|
|
173
163
|
2. **Display Request List**
|
|
174
164
|
|
|
175
|
-
|
|
176
165
|
`CoGuestStore`'s `coGuestState` maintains the current applicant list in real time. You can subscribe to it to update your UI.
|
|
177
166
|
|
|
178
167
|
``` java
|
|
179
168
|
late final VoidCallback _applicantsListener = _onApplicantsChanged;
|
|
180
|
-
|
|
169
|
+
|
|
181
170
|
// Subscribe to status change
|
|
182
171
|
void subscribeApplicants() {
|
|
183
172
|
guestStore.coGuestState.applicants.addListener(_applicantsListener);
|
|
184
173
|
}
|
|
185
|
-
|
|
174
|
+
|
|
186
175
|
void _onApplicantsChanged() {
|
|
187
176
|
final applicants = guestStore.coGuestState.applicants.value;
|
|
188
177
|
debugPrint('Current number of applicants: ${applicants.length}');
|
|
189
178
|
// Update your "applicant list" UI here
|
|
190
179
|
}
|
|
191
|
-
|
|
180
|
+
|
|
192
181
|
@override
|
|
193
182
|
void dispose() {
|
|
194
183
|
guestStore.coGuestState.applicants.removeListener(_applicantsListener);
|
|
@@ -197,7 +186,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
197
186
|
```
|
|
198
187
|
3. **Handle Mic-Link Requests**
|
|
199
188
|
|
|
200
|
-
|
|
201
189
|
When you select an audience member from the list and tap "Accept" or "Reject", call the corresponding method.
|
|
202
190
|
|
|
203
191
|
``` java
|
|
@@ -208,7 +196,7 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
208
196
|
debugPrint('Approved $userId\'s request, the other party is joining the mic');
|
|
209
197
|
}
|
|
210
198
|
}
|
|
211
|
-
|
|
199
|
+
|
|
212
200
|
// Anchor clicks the "Reject" button
|
|
213
201
|
Future<void> reject(String userId) async {
|
|
214
202
|
final result = await guestStore.rejectApplication(userId);
|
|
@@ -223,7 +211,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
223
211
|
#### Host Side Implementation
|
|
224
212
|
1. **Invite Audience to Mic**
|
|
225
213
|
|
|
226
|
-
|
|
227
214
|
When the host selects a viewer from the audience list and taps "Invite to Mic", call the `inviteToSeat` method.
|
|
228
215
|
|
|
229
216
|
``` java
|
|
@@ -243,7 +230,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
243
230
|
```
|
|
244
231
|
2. **Listen for Audience Response**
|
|
245
232
|
|
|
246
|
-
|
|
247
233
|
Listen to the `onHostInvitationResponded` event via `HostListener`.
|
|
248
234
|
|
|
249
235
|
``` java
|
|
@@ -262,7 +248,6 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
262
248
|
#### Audience Side Implementation
|
|
263
249
|
1. **Receive Host Invitation**
|
|
264
250
|
|
|
265
|
-
|
|
266
251
|
Listen to the `onHostInvitationReceived` event via `GuestListener`.
|
|
267
252
|
|
|
268
253
|
``` java
|
|
@@ -277,12 +262,11 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
277
262
|
```
|
|
278
263
|
2. **Respond to invitation**
|
|
279
264
|
|
|
280
|
-
|
|
281
265
|
After the user makes a selection in the pop-up dialog box, call the method accordingly.
|
|
282
266
|
|
|
283
267
|
``` java
|
|
284
268
|
final String inviterId = "anchor ID who initiates invitation"; // obtain from onHostInvitationReceived event
|
|
285
|
-
|
|
269
|
+
|
|
286
270
|
// User clicks "Accept"
|
|
287
271
|
Future<void> accept() async {
|
|
288
272
|
final result = await guestStore.acceptInvitation(inviterId);
|
|
@@ -293,7 +277,7 @@ As the host, your main tasks are **receiving requests, displaying the request li
|
|
|
293
277
|
DeviceStore.shared.openLocalMicrophone();
|
|
294
278
|
}
|
|
295
279
|
}
|
|
296
|
-
|
|
280
|
+
|
|
297
281
|
// User click "Reject"
|
|
298
282
|
Future<void> reject() async {
|
|
299
283
|
await guestStore.rejectInvitation(inviterId);
|
|
@@ -311,7 +295,6 @@ When using the seat feature, you need to understand the difference between `Devi
|
|
|
311
295
|
|
|
312
296
|
- **LiveSeatStore**: Manages seat business (i.e., audio stream). `muteMicrophone` mutes and stops sending local audio stream to the remote end, but the microphone device itself keeps running. `unmuteMicrophone` unmutes and restores sending audio stream to the remote end.
|
|
313
297
|
|
|
314
|
-
|
|
315
298
|
**Recommended workflow**: You should follow the principle of "open the device only once and use the mute switch for Anchor."
|
|
316
299
|
|
|
317
300
|
1. **When going on stage**: Once the audience succeeds in going on stage, call `openLocalMicrophone` only once to start the device.
|
|
@@ -320,7 +303,6 @@ When using the seat feature, you need to understand the difference between `Devi
|
|
|
320
303
|
|
|
321
304
|
3. **When going off stage**: When a user goes off stage (such as calling `disconnect`), call `closeLocalMicrophone` to release the device.
|
|
322
305
|
|
|
323
|
-
|
|
324
306
|
### On-Mic Users Control Their Own Microphone
|
|
325
307
|
|
|
326
308
|
On-mic users (including the host) can control their own microphone mute status via the `LiveSeatStore` interface.
|
|
@@ -330,7 +312,6 @@ On-mic users (including the host) can control their own microphone mute status v
|
|
|
330
312
|
|
|
331
313
|
2. **Unmute**: Call the `unmuteMicrophone()` method.
|
|
332
314
|
|
|
333
|
-
|
|
334
315
|
#### Example code:
|
|
335
316
|
``` java
|
|
336
317
|
final seatStore = LiveSeatStore.create(liveId);
|
|
@@ -351,7 +332,6 @@ The host can perform "force mute" or "invite to unmute" operations on other on-m
|
|
|
351
332
|
|
|
352
333
|
3. **User Unmutes Themselves**: After receiving the unlock notification, the user must actively call `LiveSeatStore`'s `unmuteMicrophone()` to actually unmute and be heard in the room.
|
|
353
334
|
|
|
354
|
-
|
|
355
335
|
#### Example code:
|
|
356
336
|
|
|
357
337
|
##### Host Side:
|
|
@@ -403,52 +383,15 @@ void dispose() {
|
|
|
403
383
|
```
|
|
404
384
|
|
|
405
385
|
#### CloseRemoteMicrophone API Parameter
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
411
|
-
|
|
412
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
413
|
-
</tr>
|
|
414
|
-
|
|
415
|
-
<tr>
|
|
416
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
417
|
-
|
|
418
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
419
|
-
|
|
420
|
-
<td rowspan="1" colSpan="1" >Operating user `userID`.</td>
|
|
421
|
-
</tr>
|
|
422
|
-
</table>
|
|
423
|
-
|
|
386
|
+
| **Parameter** | **Type** | **Description** |
|
|
387
|
+
| --- | --- | --- |
|
|
388
|
+
| `userID` | `String` | Operating user `userID`. |
|
|
424
389
|
|
|
425
390
|
#### OpenRemoteMicrophone API Parameter
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
431
|
-
|
|
432
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
433
|
-
</tr>
|
|
434
|
-
|
|
435
|
-
<tr>
|
|
436
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
437
|
-
|
|
438
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
439
|
-
|
|
440
|
-
<td rowspan="1" colSpan="1" >Operating user `userID`.</td>
|
|
441
|
-
</tr>
|
|
442
|
-
|
|
443
|
-
<tr>
|
|
444
|
-
<td rowspan="1" colSpan="1" >`policy`</td>
|
|
445
|
-
|
|
446
|
-
<td rowspan="1" colSpan="1" >`DeviceControlPolicy`</td>
|
|
447
|
-
|
|
448
|
-
<td rowspan="1" colSpan="1" >Turn on microphone policy.</td>
|
|
449
|
-
</tr>
|
|
450
|
-
</table>
|
|
451
|
-
|
|
391
|
+
| **Parameter** | **Type** | **Description** |
|
|
392
|
+
| --- | --- | --- |
|
|
393
|
+
| `userID` | `String` | Operating user `userID`. |
|
|
394
|
+
| `policy` | `DeviceControlPolicy` | Turn on microphone policy. |
|
|
452
395
|
|
|
453
396
|
### Host Removes On-Mic User from the Seat
|
|
454
397
|
|
|
@@ -457,7 +400,6 @@ void dispose() {
|
|
|
457
400
|
|
|
458
401
|
2. **Listen for Event Notification**: Users kicked off the mic will receive the `GuestListener``onKickedOffSeat` event notification.
|
|
459
402
|
|
|
460
|
-
|
|
461
403
|
#### Example code:
|
|
462
404
|
``` java
|
|
463
405
|
// Assume "userB" is to be kicked out
|
|
@@ -479,24 +421,9 @@ _guestListener = GuestListener(
|
|
|
479
421
|
```
|
|
480
422
|
|
|
481
423
|
#### KickUserOutOfSeat API Parameter
|
|
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 kicked off the mic `userID`.</td>
|
|
497
|
-
</tr>
|
|
498
|
-
</table>
|
|
499
|
-
|
|
424
|
+
| **Parameter** | **Type** | **Description** |
|
|
425
|
+
| --- | --- | --- |
|
|
426
|
+
| `userID` | `String` | The user kicked off the mic `userID`. |
|
|
500
427
|
|
|
501
428
|
### Host Locks and Unlocks Mic Seats
|
|
502
429
|
|
|
@@ -507,7 +434,6 @@ The host can lock or unlock a specific mic seat.
|
|
|
507
434
|
|
|
508
435
|
2. **Unlock Seat**: Call `unlockSeat` to unlock the seat. The seat can be occupied again after unlocking.
|
|
509
436
|
|
|
510
|
-
|
|
511
437
|
#### Example code:
|
|
512
438
|
``` java
|
|
513
439
|
// Lock seat 2
|
|
@@ -524,55 +450,24 @@ if (result2.isSuccess) {
|
|
|
524
450
|
```
|
|
525
451
|
|
|
526
452
|
#### LockSeat API Parameter
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
532
|
-
|
|
533
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
534
|
-
</tr>
|
|
535
|
-
|
|
536
|
-
<tr>
|
|
537
|
-
<td rowspan="1" colSpan="1" >`seatIndex`</td>
|
|
538
|
-
|
|
539
|
-
<td rowspan="1" colSpan="1" >`int`</td>
|
|
540
|
-
|
|
541
|
-
<td rowspan="1" colSpan="1" >Index of the mic to lock.</td>
|
|
542
|
-
</tr>
|
|
543
|
-
</table>
|
|
544
|
-
|
|
453
|
+
| **Parameter** | **Type** | **Description** |
|
|
454
|
+
| --- | --- | --- |
|
|
455
|
+
| `seatIndex` | `int` | Index of the mic to lock. |
|
|
545
456
|
|
|
546
457
|
#### UnlockSeat API Parameter
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
552
|
-
|
|
553
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
554
|
-
</tr>
|
|
555
|
-
|
|
556
|
-
<tr>
|
|
557
|
-
<td rowspan="1" colSpan="1" >`seatIndex`</td>
|
|
558
|
-
|
|
559
|
-
<td rowspan="1" colSpan="1" >`int`</td>
|
|
560
|
-
|
|
561
|
-
<td rowspan="1" colSpan="1" >Index of the mic to unlock.</td>
|
|
562
|
-
</tr>
|
|
563
|
-
</table>
|
|
564
|
-
|
|
458
|
+
| **Parameter** | **Type** | **Description** |
|
|
459
|
+
| --- | --- | --- |
|
|
460
|
+
| `seatIndex` | `int` | Index of the mic to unlock. |
|
|
565
461
|
|
|
566
462
|
### Move Seat
|
|
567
463
|
|
|
568
464
|
Anchor and regular Microphone Users can call `moveUserToSeat` to move microphone positions.
|
|
569
465
|
|
|
570
466
|
#### Implementation:
|
|
571
|
-
1. **Host Moves User to Mic Seat**: The host can call this API to move any user to a specified seat. At this point, `userID` is the ID of the target user, `targetIndex` is the index of the target seat, and the `policy` parameter specifies the move strategy if the target seat is occupied. For details, see the
|
|
467
|
+
1. **Host Moves User to Mic Seat**: The host can call this API to move any user to a specified seat. At this point, `userID` is the ID of the target user, `targetIndex` is the index of the target seat, and the `policy` parameter specifies the move strategy if the target seat is occupied. For details, see the API parameter description.
|
|
572
468
|
|
|
573
469
|
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.
|
|
574
470
|
|
|
575
|
-
|
|
576
471
|
#### Example code:
|
|
577
472
|
``` java
|
|
578
473
|
final result = await seatStore.moveUserToSeat(
|
|
@@ -588,70 +483,19 @@ if (result.isSuccess) {
|
|
|
588
483
|
```
|
|
589
484
|
|
|
590
485
|
#### MoveUserToSeat API Parameter
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
<
|
|
596
|
-
|
|
597
|
-
<td rowspan="1" colSpan="1" >**Description**</td>
|
|
598
|
-
</tr>
|
|
599
|
-
|
|
600
|
-
<tr>
|
|
601
|
-
<td rowspan="1" colSpan="1" >`userID`</td>
|
|
602
|
-
|
|
603
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
604
|
-
|
|
605
|
-
<td rowspan="1" colSpan="1" >The user who needs to move the mic `userID`.</td>
|
|
606
|
-
</tr>
|
|
607
|
-
|
|
608
|
-
<tr>
|
|
609
|
-
<td rowspan="1" colSpan="1" >`targetIndex`</td>
|
|
610
|
-
|
|
611
|
-
<td rowspan="1" colSpan="1" >`int`</td>
|
|
612
|
-
|
|
613
|
-
<td rowspan="1" colSpan="1" >Index of the target seat.</td>
|
|
614
|
-
</tr>
|
|
615
|
-
|
|
616
|
-
<tr>
|
|
617
|
-
<td rowspan="1" colSpan="1" >`policy`</td>
|
|
618
|
-
|
|
619
|
-
<td rowspan="1" colSpan="1" >`MoveSeatPolicy`</td>
|
|
620
|
-
|
|
621
|
-
<td rowspan="1" colSpan="1" >Processing policy when the target seat is occupied<br>- `abortWhenOccupied`: Abort movement when the target seat is occupied (default policy)<br>- `forceReplace`: Forcibly replace the user on the target seat. The replaced user will be kicked off the mic.<br>- `swapPosition`: Exchange with the user on the target seat.</td>
|
|
622
|
-
</tr>
|
|
623
|
-
</table>
|
|
624
|
-
|
|
486
|
+
| **Parameter** | **Type** | **Description** |
|
|
487
|
+
| --- | --- | --- |
|
|
488
|
+
| `userID` | `String` | The user who needs to move the mic `userID`. |
|
|
489
|
+
| `targetIndex` | `int` | Index of the target seat. |
|
|
490
|
+
| `policy` | `MoveSeatPolicy` | Processing policy when the target seat is occupied<br>- `abortWhenOccupied`: Abort movement when the target seat is occupied (default policy)<br>- `forceReplace`: Forcibly replace the user on the target seat. The replaced user will be kicked off the mic.<br>- `swapPosition`: Exchange with the user on the target seat. |
|
|
625
491
|
|
|
626
492
|
## API documentation
|
|
627
493
|
|
|
628
494
|
For detailed information about ALL public interfaces, attributes, and methods of [CoGuestStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html), [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_seat_store/LiveSeatStore-class.html), and its related classes, see the official API documentation of the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_Flutter) framework. The related Store used in this guide is as follows:
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
<td rowspan="1" colSpan="1" >**Feature Description**</td>
|
|
634
|
-
|
|
635
|
-
<td rowspan="1" colSpan="1" >**API Reference**</td>
|
|
636
|
-
</tr>
|
|
637
|
-
|
|
638
|
-
<tr>
|
|
639
|
-
<td rowspan="1" colSpan="1" >**CoGuestStore**</td>
|
|
640
|
-
|
|
641
|
-
<td rowspan="1" colSpan="1" >Audience co-broadcasting management: join microphone application/invite/consent/deny, member permission control (microphone/camera), state synchronization.</td>
|
|
642
|
-
|
|
643
|
-
<td rowspan="1" colSpan="1" >[API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html)</td>
|
|
644
|
-
</tr>
|
|
645
|
-
|
|
646
|
-
<tr>
|
|
647
|
-
<td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
|
|
648
|
-
|
|
649
|
-
<td rowspan="1" colSpan="1" >Seat management: mute/unmute, lock/unlock seats, remove speaker, remotely control Anchor microphone, listen to list status.</td>
|
|
650
|
-
|
|
651
|
-
<td rowspan="1" colSpan="1" >[API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_seat_store/LiveSeatStore-class.html)</td>
|
|
652
|
-
</tr>
|
|
653
|
-
</table>
|
|
654
|
-
|
|
495
|
+
| **Store/Component** | **Feature Description** | **API Reference** |
|
|
496
|
+
| --- | --- | --- |
|
|
497
|
+
| **CoGuestStore** | Audience co-broadcasting management: join microphone application/invite/consent/deny, member permission control (microphone/camera), state synchronization. | [API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html) |
|
|
498
|
+
| **LiveSeatStore** | Seat management: mute/unmute, lock/unlock seats, remove speaker, remotely control Anchor microphone, listen to list status. | [API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_seat_store/LiveSeatStore-class.html) |
|
|
655
499
|
|
|
656
500
|
## FAQs
|
|
657
501
|
|
|
@@ -662,7 +506,6 @@ The main difference between both lies in business form and UI display:
|
|
|
662
506
|
|
|
663
507
|
- Voice room (voice chat room): The core is the seat grid. You will not use `LiveCoreWidget`, but build a grid UI (such as `GridView`) based on `LiveSeatStore`'s `liveSeatState` (especially `seatList`). The UI focuses on displaying each seat `SeatInfo` state in real time: whether there is a person, whether it is muted, whether it is locked, and whether speaking is ongoing. You only need to turn on microphone.
|
|
664
508
|
|
|
665
|
-
|
|
666
509
|
### How to Real-Time Refresh Seat Information on UI (Such As Whether There Is a Person, Whether Muted)
|
|
667
510
|
|
|
668
511
|
You should subscribe to the `seatList` property in `LiveSeatState`, which is a responsive data of `ValueListenable<List<SeatInfo>>` data type. It will notify you to re-render the microphone position list whenever the array changes. By traversing this array, you can:
|
|
@@ -671,5 +514,3 @@ You should subscribe to the `seatList` property in `LiveSeatState`, which is a r
|
|
|
671
514
|
- Check whether the seat is locked through `seatInfo.isLocked`.
|
|
672
515
|
|
|
673
516
|
- Check the mic status of the on-mic user through `seatInfo.userInfo.microphoneStatus`.
|
|
674
|
-
|
|
675
|
-
|