@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
|
@@ -11,42 +11,18 @@
|
|
|
11
11
|
|
|
12
12
|
- **State Monitoring:** Real-time access to currently applied beautification settings.
|
|
13
13
|
|
|
14
|
-
|
|
15
14
|
## Core Concepts
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
<td rowspan="1" colSpan="1" >**Type**</td>
|
|
21
|
-
|
|
22
|
-
<td rowspan="1" colSpan="1" >**Core Responsibilities and Description**</td>
|
|
23
|
-
</tr>
|
|
24
|
-
|
|
25
|
-
<tr>
|
|
26
|
-
<td rowspan="1" colSpan="1" >`BaseBeautyState`</td>
|
|
27
|
-
|
|
28
|
-
<td rowspan="1" colSpan="1" >`struct`</td>
|
|
29
|
-
|
|
30
|
-
<td rowspan="1" colSpan="1" >- Represents the current state of the basic beautification module. <br>- Contains the currently applied intensity values for smoothing (smoothLevel), whitening (whitenessLevel), and rosy (ruddyLevel).</td>
|
|
31
|
-
</tr>
|
|
32
|
-
|
|
33
|
-
<tr>
|
|
34
|
-
<td rowspan="1" colSpan="1" >`BaseBeautyStore`</td>
|
|
35
|
-
|
|
36
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
37
|
-
|
|
38
|
-
<td rowspan="1" colSpan="1" >- The core management class for interacting with basic beautification features. <br>- Implemented as a global singleton (`shared`). Responsible for setting parameters, resetting effects, and synchronizing state across the app.</td>
|
|
39
|
-
</tr>
|
|
40
|
-
</table>
|
|
41
|
-
|
|
15
|
+
| **Core Concept** | **Type** | **Core Responsibilities and Description** |
|
|
16
|
+
| --- | --- | --- |
|
|
17
|
+
| `BaseBeautyState` | `struct` | - Represents the current state of the basic beautification module.<br>- Contains the currently applied intensity values for smoothing (smoothLevel), whitening (whitenessLevel), and rosy (ruddyLevel). |
|
|
18
|
+
| `BaseBeautyStore` | `class` | - The core management class for interacting with basic beautification features.<br>- Implemented as a global singleton (`shared`). Responsible for setting parameters, resetting effects, and synchronizing state across the app. |
|
|
42
19
|
|
|
43
20
|
## Implementation
|
|
44
21
|
|
|
45
22
|
### Step 1: Component Integration
|
|
46
|
-
- **Video Live Streaming**: Please refer to
|
|
47
|
-
|
|
48
|
-
- **Voice Chat Room**: Please refer to [Quick Start](https://write.woa.com/document/194571595685527552) to integrate AtomicXCore and complete the setup of LiveCoreView.
|
|
23
|
+
- **Video Live Streaming**: Please refer to Quick Start to integrate AtomicXCore and complete the setup of LiveCoreView.
|
|
49
24
|
|
|
25
|
+
- **Voice Chat Room**: Please refer to Quick Start to integrate AtomicXCore and complete the setup of LiveCoreView.
|
|
50
26
|
|
|
51
27
|
### Step 2: Obtain the Instance and Subscribe to State
|
|
52
28
|
|
|
@@ -57,18 +33,17 @@ Obtain the global singleton instance of `BaseBeautyStore` and subscribe to recei
|
|
|
57
33
|
|
|
58
34
|
2. **Subscribe to State**: Subscribe to `baseBeautyStore.baseBeautyState` to receive real-time updates of `BaseBeautyState`.
|
|
59
35
|
|
|
60
|
-
|
|
61
36
|
#### Code Example
|
|
62
37
|
``` swift
|
|
63
38
|
import Foundation
|
|
64
|
-
import AtomicXCore
|
|
65
|
-
import Combine
|
|
39
|
+
import AtomicXCore
|
|
40
|
+
import Combine
|
|
66
41
|
|
|
67
42
|
class BeautyManager {
|
|
68
43
|
// 1. Get the singleton instance
|
|
69
44
|
private let baseBeautyStore = BaseBeautyStore.shared
|
|
70
45
|
private var cancellables = Set<AnyCancellable>()
|
|
71
|
-
|
|
46
|
+
|
|
72
47
|
// Expose beauty status externally
|
|
73
48
|
let beautyStatePublisher = CurrentValueSubject<BaseBeautyState, Never>(BaseBeautyState())
|
|
74
49
|
|
|
@@ -76,7 +51,7 @@ class BeautyManager {
|
|
|
76
51
|
// 2. Subscribe to the state
|
|
77
52
|
subscribeToBeautyState()
|
|
78
53
|
}
|
|
79
|
-
|
|
54
|
+
|
|
80
55
|
private func subscribeToBeautyState() {
|
|
81
56
|
baseBeautyStore.state
|
|
82
57
|
.subscribe()
|
|
@@ -84,7 +59,7 @@ class BeautyManager {
|
|
|
84
59
|
.assign(to: \.value, on: beautyStatePublisher)
|
|
85
60
|
.store(in: &cancellables)
|
|
86
61
|
}
|
|
87
|
-
|
|
62
|
+
|
|
88
63
|
// ... Subsequent methods
|
|
89
64
|
}
|
|
90
65
|
```
|
|
@@ -94,15 +69,14 @@ class BeautyManager {
|
|
|
94
69
|
When users adjust a beautification slider or select a preset, call the corresponding API to set the desired intensity.
|
|
95
70
|
|
|
96
71
|
#### Implementation
|
|
97
|
-
1. **Get Intensity Value**:
|
|
72
|
+
1. **Get Intensity Value**:
|
|
98
73
|
|
|
99
|
-
- Obtain the intensity value set by the user from the UI control (such as a `UISlider`).
|
|
74
|
+
- Obtain the intensity value set by the user from the UI control (such as a `UISlider`).
|
|
100
75
|
|
|
101
76
|
- Note that the SDK interface accepts a parameter range of `[0, 9]`, where 0 means the effect is off, and 9 means the effect is most prominent. You need to map the UI control value (e.g., `0.0 - 1.0` for a `UISlider`) to the `0 - 9` range.
|
|
102
77
|
|
|
103
78
|
2. **Call API**: Use `setSmoothLevel(smoothLevel:)`, `setWhitenessLevel(whitenessLevel:)`, and `setRuddyLevel(ruddyLevel:)` to set the smoothing, whitening, and rosy intensities.
|
|
104
79
|
|
|
105
|
-
|
|
106
80
|
#### Code Example
|
|
107
81
|
``` swift
|
|
108
82
|
extension BeautyManager {
|
|
@@ -134,7 +108,6 @@ When users click "Reset" or "Disable Beauty," restore all beautification paramet
|
|
|
134
108
|
#### Implementation
|
|
135
109
|
- **Call API**: Call the `baseBeautyStore.reset()` method.
|
|
136
110
|
|
|
137
|
-
|
|
138
111
|
#### Code Example
|
|
139
112
|
``` swift
|
|
140
113
|
extension BeautyManager {
|
|
@@ -150,48 +123,12 @@ extension BeautyManager {
|
|
|
150
123
|
### Comparison: Basic vs. Advanced Beautification
|
|
151
124
|
|
|
152
125
|
AtomicXCore also provides advanced beautification features for more demanding scenarios:
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
<td rowspan="1" colSpan="1" >**Advanced Beautification (TEBeautyKit)**</td>
|
|
160
|
-
</tr>
|
|
161
|
-
|
|
162
|
-
<tr>
|
|
163
|
-
<td rowspan="1" colSpan="1" >Core Features</td>
|
|
164
|
-
|
|
165
|
-
<td rowspan="1" colSpan="1" >Smoothing, Whitening, Rosy</td>
|
|
166
|
-
|
|
167
|
-
<td rowspan="1" colSpan="1" >Includes all basic features, plus V-shape face, eye distance adjustment, nose slimming, 3D stickers, filters, makeup, and more</td>
|
|
168
|
-
</tr>
|
|
169
|
-
|
|
170
|
-
<tr>
|
|
171
|
-
<td rowspan="1" colSpan="1" >Pricing</td>
|
|
172
|
-
|
|
173
|
-
<td rowspan="1" colSpan="1" >Free (included in AtomicXCore license)</td>
|
|
174
|
-
|
|
175
|
-
<td rowspan="1" colSpan="1" >Paid (Requires separate license)</td>
|
|
176
|
-
</tr>
|
|
177
|
-
|
|
178
|
-
<tr>
|
|
179
|
-
<td rowspan="1" colSpan="1" >Integration</td>
|
|
180
|
-
|
|
181
|
-
<td rowspan="1" colSpan="1" >Built-in by default; use `BaseBeautyStore.shared() `directly</td>
|
|
182
|
-
|
|
183
|
-
<td rowspan="1" colSpan="1" >Requires additional integration of the TEBeautyKit component and authentication</td>
|
|
184
|
-
</tr>
|
|
185
|
-
|
|
186
|
-
<tr>
|
|
187
|
-
<td rowspan="1" colSpan="1" >Recommended Scenarios</td>
|
|
188
|
-
|
|
189
|
-
<td rowspan="1" colSpan="1" >Scenarios with basic beautification needs and rapid implementation requirements</td>
|
|
190
|
-
|
|
191
|
-
<td rowspan="1" colSpan="1" >Scenarios requiring advanced beautification, shaping, stickers, filters, and other premium features</td>
|
|
192
|
-
</tr>
|
|
193
|
-
</table>
|
|
194
|
-
|
|
126
|
+
| **Comparison Item** | **Basic Beautification (BaseBeautyStore)** | **Advanced Beautification (TEBeautyKit)** |
|
|
127
|
+
| --- | --- | --- |
|
|
128
|
+
| Core Features | Smoothing, Whitening, Rosy | Includes all basic features, plus V-shape face, eye distance adjustment, nose slimming, 3D stickers, filters, makeup, and more |
|
|
129
|
+
| Pricing | Free (included in AtomicXCore license) | Paid (Requires separate license) |
|
|
130
|
+
| Integration | Built-in by default; use `BaseBeautyStore.shared() `directly | Requires additional integration of the TEBeautyKit component and authentication |
|
|
131
|
+
| Recommended Scenarios | Scenarios with basic beautification needs and rapid implementation requirements | Scenarios requiring advanced beautification, shaping, stickers, filters, and other premium features |
|
|
195
132
|
|
|
196
133
|
### Integrating Advanced Beautification
|
|
197
134
|
|
|
@@ -200,40 +137,11 @@ To use advanced beautification features, refer to the [Advanced Beauty](https://
|
|
|
200
137
|
## API Documentation
|
|
201
138
|
|
|
202
139
|
For detailed information on all public interfaces, properties, and methods of [BaseBeautyStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/basebeautystore) and related classes, see the official API documentation for the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework. The relevant stores referenced in this guide are:
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
<td rowspan="1" colSpan="1" >**API Reference**</td>
|
|
210
|
-
</tr>
|
|
211
|
-
|
|
212
|
-
<tr>
|
|
213
|
-
<td rowspan="1" colSpan="1" >`LiveCoreView`</td>
|
|
214
|
-
|
|
215
|
-
<td rowspan="1" colSpan="1" >- Core view component for displaying and interacting with live video streams. Handles video rendering and view widgets, supports host streaming, audience co-hosting, host connections, and more.</td>
|
|
216
|
-
|
|
217
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html)</td>
|
|
218
|
-
</tr>
|
|
219
|
-
|
|
220
|
-
<tr>
|
|
221
|
-
<td rowspan="1" colSpan="1" >`DeviceStore`</td>
|
|
222
|
-
|
|
223
|
-
<td rowspan="1" colSpan="1" >Controls audio/video devices: microphone (on/off, volume), camera (on/off, switch, quality), screen sharing, and real-time device status monitoring.</td>
|
|
224
|
-
|
|
225
|
-
<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.device/-device-store/index.html)</td>
|
|
226
|
-
</tr>
|
|
227
|
-
|
|
228
|
-
<tr>
|
|
229
|
-
<td rowspan="1" colSpan="1" >`BaseBeautyStore`</td>
|
|
230
|
-
|
|
231
|
-
<td rowspan="1" colSpan="1" >Basic beauty filters: adjust smoothing/whitening/rosiness (0-100), reset beauty status, and synchronize effect parameters.</td>
|
|
232
|
-
|
|
233
|
-
<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.device/-base-beauty-store/index.html)</td>
|
|
234
|
-
</tr>
|
|
235
|
-
</table>
|
|
236
|
-
|
|
140
|
+
| **Store/Component** | **Description** | **API Reference** |
|
|
141
|
+
| --- | --- | --- |
|
|
142
|
+
| `LiveCoreView` | - Core view component for displaying and interacting with live video streams. Handles video rendering and view widgets, supports host streaming, audience co-hosting, host connections, and more. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-live-core-view/index.html) |
|
|
143
|
+
| `DeviceStore` | Controls audio/video devices: microphone (on/off, volume), camera (on/off, switch, quality), screen sharing, and real-time device status monitoring. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-device-store/index.html) |
|
|
144
|
+
| `BaseBeautyStore` | Basic beauty filters: adjust smoothing/whitening/rosiness (0-100), reset beauty status, and synchronize effect parameters. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.device/-base-beauty-store/index.html) |
|
|
237
145
|
|
|
238
146
|
## FAQs
|
|
239
147
|
|
|
@@ -7,48 +7,18 @@
|
|
|
7
7
|
|
|
8
8
|
- **Host Invites to Join**: The host can invite any audience member in the live room to co-host.
|
|
9
9
|
|
|
10
|
-
|
|
11
10
|
## Core Concepts
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
<td rowspan="1" colSpan="1" >**Key APIs / Properties**</td>
|
|
19
|
-
</tr>
|
|
20
|
-
|
|
21
|
-
<tr>
|
|
22
|
-
<td rowspan="1" colSpan="1" >CoGuestStore</td>
|
|
23
|
-
|
|
24
|
-
<td rowspan="1" colSpan="1" >Manages the entire signaling workflow for viewer-host interaction (Apply, Invite, Accept, Reject, Disconnect) and provides Combine publishers for event handling.</td>
|
|
25
|
-
|
|
26
|
-
<td rowspan="1" colSpan="1" >- `state`: A StatePublisher containing `connected`, `applicants`, and `invitees` lists.<br>- `applyForSeat()`: Viewer applies to become a co-guest.<br>- `inviteToSeat()`: Host invites a viewer to take a seat.<br>- `acceptApplication()`: Host accepts a link mic application.<br>- `disConnect()`: Terminates the connection.</td>
|
|
27
|
-
</tr>
|
|
28
|
-
|
|
29
|
-
<tr>
|
|
30
|
-
<td rowspan="1" colSpan="1" >CoGuestState</td>
|
|
31
|
-
|
|
32
|
-
<td rowspan="1" colSpan="1" >Stores all user lists related to link mic, driving UI updates (e.g., notification badges, video window display).</td>
|
|
33
|
-
|
|
34
|
-
<td rowspan="1" colSpan="1" >- `connected`: List of users currently co-hosting.<br>- `applicants`: List of viewers currently applying.<br>- `invitees`: List of viewers currently being invited.</td>
|
|
35
|
-
</tr>
|
|
36
|
-
|
|
37
|
-
<tr>
|
|
38
|
-
<td rowspan="1" colSpan="1" >HostEvent / GuestEvent</td>
|
|
39
|
-
|
|
40
|
-
<td rowspan="1" colSpan="1" >Defines the signaling events received by the host and audience respectively, emitted via Publishers in the Store.</td>
|
|
41
|
-
|
|
42
|
-
<td rowspan="1" colSpan="1" >- `hostEventPublisher`: Publishes host-side events (e.g., onGuestApplicationReceived).<br>- `guestEventPublisher`: Publishes audience-side events (e.g., onHostInvitationReceived).</td>
|
|
43
|
-
</tr>
|
|
44
|
-
</table>
|
|
45
|
-
|
|
11
|
+
| **Core Concept** | **Core Responsibilities** | **Key APIs / Properties** |
|
|
12
|
+
| --- | --- | --- |
|
|
13
|
+
| CoGuestStore | Manages the entire signaling workflow for viewer-host interaction (Apply, Invite, Accept, Reject, Disconnect) and provides Combine publishers for event handling. | - `state`: A StatePublisher containing `connected`, `applicants`, and `invitees` lists.<br>- `applyForSeat()`: Viewer applies to become a co-guest.<br>- `inviteToSeat()`: Host invites a viewer to take a seat.<br>- `acceptApplication()`: Host accepts a link mic application.<br>- `disConnect()`: Terminates the connection. |
|
|
14
|
+
| CoGuestState | Stores all user lists related to link mic, driving UI updates (e.g., notification badges, video window display). | - `connected`: List of users currently co-hosting.<br>- `applicants`: List of viewers currently applying.<br>- `invitees`: List of viewers currently being invited. |
|
|
15
|
+
| HostEvent / GuestEvent | Defines the signaling events received by the host and audience respectively, emitted via Publishers in the Store. | - `hostEventPublisher`: Publishes host-side events (e.g., onGuestApplicationReceived).<br>- `guestEventPublisher`: Publishes audience-side events (e.g., onHostInvitationReceived). |
|
|
46
16
|
|
|
47
17
|
## Implementation
|
|
48
18
|
|
|
49
19
|
### Step 1: Component Integration
|
|
50
20
|
|
|
51
|
-
Refer to
|
|
21
|
+
Refer to Quick Start to integrate AtomicXCore and complete the setup of `LiveCoreView`.
|
|
52
22
|
|
|
53
23
|
### Step 2: Implement Audience Request to Join
|
|
54
24
|
|
|
@@ -57,15 +27,14 @@ Refer to [Quick Start](https://write.woa.com/document/194571606121816064) to int
|
|
|
57
27
|
As an audience member, your primary tasks are to **initiate a request, handle the host's response, and leave the seat when desired.**
|
|
58
28
|
1. **Initiate a Co-hosting Request**
|
|
59
29
|
|
|
60
|
-
|
|
61
30
|
When the user taps the "Request to Join" button, call the `applyForSeat` method.
|
|
62
31
|
|
|
63
32
|
``` swift
|
|
64
33
|
import AtomicXCore
|
|
65
|
-
|
|
34
|
+
|
|
66
35
|
let liveId = "Room ID"
|
|
67
36
|
let guestStore = CoGuestStore.create(liveID: liveId)
|
|
68
|
-
|
|
37
|
+
|
|
69
38
|
// User taps "Request to Co-host"
|
|
70
39
|
func requestToConnect() {
|
|
71
40
|
// timeout: Request timeout duration, e.g., 30 seconds
|
|
@@ -81,7 +50,6 @@ As an audience member, your primary tasks are to **initiate a request, handle th
|
|
|
81
50
|
```
|
|
82
51
|
2. **Listen for Host Response**
|
|
83
52
|
|
|
84
|
-
|
|
85
53
|
Subscribe to `guestEventPublisher` to receive the host's response.
|
|
86
54
|
|
|
87
55
|
``` swift
|
|
@@ -107,7 +75,6 @@ As an audience member, your primary tasks are to **initiate a request, handle th
|
|
|
107
75
|
```
|
|
108
76
|
3. **Leave the Seat**
|
|
109
77
|
|
|
110
|
-
|
|
111
78
|
When a co-hosting audience member wants to end the interaction, call the `disConnect` method to return to audience status.
|
|
112
79
|
|
|
113
80
|
``` swift
|
|
@@ -125,7 +92,6 @@ As an audience member, your primary tasks are to **initiate a request, handle th
|
|
|
125
92
|
```
|
|
126
93
|
4. **(Optional) Cancel Request**
|
|
127
94
|
|
|
128
|
-
|
|
129
95
|
If the audience member wants to withdraw the request before the host responds, call `cancelApplication`.
|
|
130
96
|
|
|
131
97
|
``` swift
|
|
@@ -147,15 +113,14 @@ As an audience member, your primary tasks are to **initiate a request, handle th
|
|
|
147
113
|
As a host, your main responsibilities are to **receive requests, display the applicant list, and process requests**.
|
|
148
114
|
1. **Listen for New Co-hosting Requests**
|
|
149
115
|
|
|
150
|
-
|
|
151
116
|
Subscribe to `hostEventPublisher` to be notified when a new audience member requests to co-host.
|
|
152
117
|
|
|
153
118
|
``` swift
|
|
154
119
|
import AtomicXCore
|
|
155
|
-
|
|
120
|
+
|
|
156
121
|
let liveId = "Room ID"
|
|
157
122
|
let guestStore = CoGuestStore.create(liveID: liveId)
|
|
158
|
-
|
|
123
|
+
|
|
159
124
|
// Subscribe to host events
|
|
160
125
|
guestStore.hostEventPublisher
|
|
161
126
|
.sink { [weak self] event in
|
|
@@ -168,7 +133,6 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
168
133
|
```
|
|
169
134
|
2. **Display Request List**
|
|
170
135
|
|
|
171
|
-
|
|
172
136
|
`CoGuestStore` maintains the current list of applicants in real time. Subscribe to this list to update your UI.
|
|
173
137
|
|
|
174
138
|
``` swift
|
|
@@ -185,7 +149,6 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
185
149
|
```
|
|
186
150
|
3. **Process Co-hosting Requests**
|
|
187
151
|
|
|
188
|
-
|
|
189
152
|
When you select an audience member and choose "Accept" or "Reject", call the corresponding method.
|
|
190
153
|
|
|
191
154
|
``` swift
|
|
@@ -197,7 +160,7 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
197
160
|
}
|
|
198
161
|
}
|
|
199
162
|
}
|
|
200
|
-
|
|
163
|
+
|
|
201
164
|
// Host taps "Reject" button
|
|
202
165
|
func reject(userId: String) {
|
|
203
166
|
guestStore.rejectApplication(userID: userId) { result in
|
|
@@ -213,7 +176,6 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
213
176
|
#### Host-Side Implementation
|
|
214
177
|
1. **Send Invitation to Audience**
|
|
215
178
|
|
|
216
|
-
|
|
217
179
|
When the host selects an audience member and taps "Invite to Co-host", call the `inviteToSeat` method.
|
|
218
180
|
|
|
219
181
|
``` swift
|
|
@@ -229,7 +191,6 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
229
191
|
```
|
|
230
192
|
2. **Listen for Audience Response**
|
|
231
193
|
|
|
232
|
-
|
|
233
194
|
Listen for the `onHostInvitationResponded` event via `hostEventPublisher`.
|
|
234
195
|
|
|
235
196
|
``` swift
|
|
@@ -246,7 +207,6 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
246
207
|
#### Audience-Side Implementation
|
|
247
208
|
1. **Receive Host Invitation**
|
|
248
209
|
|
|
249
|
-
|
|
250
210
|
Listen for the `onHostInvitationReceived` event via `guestEventPublisher`.
|
|
251
211
|
|
|
252
212
|
``` swift
|
|
@@ -259,12 +219,11 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
259
219
|
```
|
|
260
220
|
2. **Respond to Invitation**
|
|
261
221
|
|
|
262
|
-
|
|
263
222
|
After the user makes a selection, call the corresponding method.
|
|
264
223
|
|
|
265
224
|
``` swift
|
|
266
225
|
let inviterId = "Inviting host's ID" // Obtain from the onHostInvitationReceived event
|
|
267
|
-
|
|
226
|
+
|
|
268
227
|
// User taps "Accept"
|
|
269
228
|
func accept() {
|
|
270
229
|
guestStore.acceptInvitation(inviterID: inviterId) { result in
|
|
@@ -275,7 +234,7 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
275
234
|
}
|
|
276
235
|
}
|
|
277
236
|
}
|
|
278
|
-
|
|
237
|
+
|
|
279
238
|
// User taps "Reject"
|
|
280
239
|
func reject() {
|
|
281
240
|
guestStore.rejectInvitation(inviterID: inviterId) { result in
|
|
@@ -286,10 +245,7 @@ As a host, your main responsibilities are to **receive requests, display the app
|
|
|
286
245
|
|
|
287
246
|
### Run and Test
|
|
288
247
|
|
|
289
|
-
After integrating the above features, use two audience members and a host to test co-hosting. For example, Audience A enables both camera and microphone, while Audience B enables only the microphone. The result is shown below. For UI customization, see
|
|
290
|
-
|
|
291
|
-

|
|
292
|
-
|
|
248
|
+
After integrating the above features, use two audience members and a host to test co-hosting. For example, Audience A enables both camera and microphone, while Audience B enables only the microphone. The result is shown below. For UI customization, see Refining UI Details.
|
|
293
249
|
|
|
294
250
|
## Refining UI Details
|
|
295
251
|
|
|
@@ -299,22 +255,19 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
299
255
|
|
|
300
256
|
#### Implementation Example
|
|
301
257
|
|
|
302
|
-

|
|
303
|
-
|
|
304
|
-
|
|
305
258
|
#### Implementation Steps
|
|
306
259
|
|
|
307
260
|
> **Note:**
|
|
308
|
-
>
|
|
261
|
+
>
|
|
309
262
|
|
|
310
263
|
> For complete implementation details, refer to the open-source TUILiveKit project files [AnchorCoGuestView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Features/AnchorBoardcast/View/LivingView/Video/AnchorCoGuestView.swift) and [AnchorEmptySeatView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Features/AnchorBoardcast/View/LivingView/Video/AnchorEmptySeatView.swift).
|
|
311
|
-
>
|
|
264
|
+
>
|
|
312
265
|
|
|
313
266
|
- **Step 1**: Create the foreground view `CustomSeatView` to display user info above the video stream.
|
|
314
267
|
|
|
315
268
|
``` swift
|
|
316
269
|
import UIKit
|
|
317
|
-
|
|
270
|
+
|
|
318
271
|
// Custom floating user info view (foreground)
|
|
319
272
|
class CustomSeatView: UIView {
|
|
320
273
|
lazy var nameLabel: UILabel = {
|
|
@@ -323,7 +276,7 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
323
276
|
label.font = .systemFont(ofSize: 14)
|
|
324
277
|
return label
|
|
325
278
|
}()
|
|
326
|
-
|
|
279
|
+
|
|
327
280
|
override init(frame: CGRect) {
|
|
328
281
|
super.init(frame: frame)
|
|
329
282
|
backgroundColor = UIColor.black.withAlphaComponent(0.5)
|
|
@@ -339,7 +292,7 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
339
292
|
|
|
340
293
|
``` swift
|
|
341
294
|
import UIKit
|
|
342
|
-
|
|
295
|
+
|
|
343
296
|
// Custom avatar placeholder view (background)
|
|
344
297
|
class CustomAvatarView: UIView {
|
|
345
298
|
lazy var avatarImageView: UIImageView = {
|
|
@@ -347,7 +300,7 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
347
300
|
imageView.tintColor = .gray
|
|
348
301
|
return imageView
|
|
349
302
|
}()
|
|
350
|
-
|
|
303
|
+
|
|
351
304
|
override init(frame: CGRect) {
|
|
352
305
|
super.init(frame: frame)
|
|
353
306
|
backgroundColor = .clear
|
|
@@ -364,12 +317,12 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
364
317
|
|
|
365
318
|
``` swift
|
|
366
319
|
import AtomicXCore
|
|
367
|
-
|
|
320
|
+
|
|
368
321
|
// 1. In your view controller, conform to the VideoViewDelegate protocol
|
|
369
322
|
class YourViewController: UIViewController, VideoViewDelegate {
|
|
370
|
-
|
|
323
|
+
|
|
371
324
|
// ... other code ...
|
|
372
|
-
|
|
325
|
+
|
|
373
326
|
// 2. Implement the protocol method to handle both viewLayer types
|
|
374
327
|
func createCoGuestView(seatInfo: TUISeatFullInfo, viewLayer: ViewLayer) -> UIView? {
|
|
375
328
|
guard let userId = seatInfo.userID, !userId.isEmpty else {
|
|
@@ -391,110 +344,24 @@ Use the "slot" capability provided by the `LiveCoreView.VideoViewDelegate` proto
|
|
|
391
344
|
```
|
|
392
345
|
|
|
393
346
|
#### Parameter Description:
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
<tr>
|
|
404
|
-
<td rowspan="1" colSpan="1" >`seatInfo`</td>
|
|
405
|
-
|
|
406
|
-
<td rowspan="1" colSpan="1" >`SeatFullInfo?`</td>
|
|
407
|
-
|
|
408
|
-
<td rowspan="1" colSpan="1" >Seat information object, containing detailed information about the user on the seat</td>
|
|
409
|
-
</tr>
|
|
410
|
-
|
|
411
|
-
<tr>
|
|
412
|
-
<td rowspan="1" colSpan="1" >`seatInfo.userId`</td>
|
|
413
|
-
|
|
414
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
415
|
-
|
|
416
|
-
<td rowspan="1" colSpan="1" >ID of the user on the seat</td>
|
|
417
|
-
</tr>
|
|
418
|
-
|
|
419
|
-
<tr>
|
|
420
|
-
<td rowspan="1" colSpan="1" >`seatInfo.userName`</td>
|
|
421
|
-
|
|
422
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
423
|
-
|
|
424
|
-
<td rowspan="1" colSpan="1" >Nickname of the user on the seat</td>
|
|
425
|
-
</tr>
|
|
426
|
-
|
|
427
|
-
<tr>
|
|
428
|
-
<td rowspan="1" colSpan="1" >`seatInfo.userAvatar`</td>
|
|
429
|
-
|
|
430
|
-
<td rowspan="1" colSpan="1" >`String`</td>
|
|
431
|
-
|
|
432
|
-
<td rowspan="1" colSpan="1" >Avatar URL of the user on the seat</td>
|
|
433
|
-
</tr>
|
|
434
|
-
|
|
435
|
-
<tr>
|
|
436
|
-
<td rowspan="1" colSpan="1" >`seatInfo.userMicrophoneStatus`</td>
|
|
437
|
-
|
|
438
|
-
<td rowspan="1" colSpan="1" >`DeviceStatus`</td>
|
|
439
|
-
|
|
440
|
-
<td rowspan="1" colSpan="1" >Microphone status of the user on the seat</td>
|
|
441
|
-
</tr>
|
|
442
|
-
|
|
443
|
-
<tr>
|
|
444
|
-
<td rowspan="1" colSpan="1" >`seatInfo.userCameraStatus`</td>
|
|
445
|
-
|
|
446
|
-
<td rowspan="1" colSpan="1" >`DeviceStatus`</td>
|
|
447
|
-
|
|
448
|
-
<td rowspan="1" colSpan="1" >Camera status of the user on the seat</td>
|
|
449
|
-
</tr>
|
|
450
|
-
|
|
451
|
-
<tr>
|
|
452
|
-
<td rowspan="1" colSpan="1" >`viewLayer`</td>
|
|
453
|
-
|
|
454
|
-
<td rowspan="1" colSpan="1" >`ViewLayer`</td>
|
|
455
|
-
|
|
456
|
-
<td rowspan="1" colSpan="1" >View layer enum:<br>- `.foreground`: Foreground widget view, always displayed on top of the video<br>- `.background`: Background widget view, displayed below the foreground view, only shown when the user has no video stream (e.g., camera is off); typically used for the user's avatar or a placeholder image</td>
|
|
457
|
-
</tr>
|
|
458
|
-
</table>
|
|
459
|
-
|
|
347
|
+
| **Parameter** | **Type** | **Description** |
|
|
348
|
+
| --- | --- | --- |
|
|
349
|
+
| `seatInfo` | `SeatFullInfo?` | Seat information object, containing detailed information about the user on the seat |
|
|
350
|
+
| `seatInfo.userId` | `String` | ID of the user on the seat |
|
|
351
|
+
| `seatInfo.userName` | `String` | Nickname of the user on the seat |
|
|
352
|
+
| `seatInfo.userAvatar` | `String` | Avatar URL of the user on the seat |
|
|
353
|
+
| `seatInfo.userMicrophoneStatus` | `DeviceStatus` | Microphone status of the user on the seat |
|
|
354
|
+
| `seatInfo.userCameraStatus` | `DeviceStatus` | Camera status of the user on the seat |
|
|
355
|
+
| `viewLayer` | `ViewLayer` | View layer enum:<br>- `.foreground`: Foreground widget view, always displayed on top of the video<br>- `.background`: Background widget view, displayed below the foreground view, only shown when the user has no video stream (e.g., camera is off); typically used for the user's avatar or a placeholder image |
|
|
460
356
|
|
|
461
357
|
## API Documentation
|
|
462
358
|
|
|
463
359
|
For detailed information on all public interfaces, properties, and methods of [CoGuestStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore) and related classes, refer to the official API documentation included with the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework. The relevant stores used in this guide include:
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
471
|
-
</tr>
|
|
472
|
-
|
|
473
|
-
<tr>
|
|
474
|
-
<td rowspan="1" colSpan="1" >LiveCoreView</td>
|
|
475
|
-
|
|
476
|
-
<td rowspan="1" colSpan="1" >Core view component for live video stream display and interaction. Handles video rendering and widget management, supporting host streaming, audience co-hosting, host connections, and more.</td>
|
|
477
|
-
|
|
478
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview)</td>
|
|
479
|
-
</tr>
|
|
480
|
-
|
|
481
|
-
<tr>
|
|
482
|
-
<td rowspan="1" colSpan="1" >DeviceStore</td>
|
|
483
|
-
|
|
484
|
-
<td rowspan="1" colSpan="1" >Audio and video device control: microphone (on/off, volume), camera (on/off, switch, quality), screen sharing, real-time device status monitoring.</td>
|
|
485
|
-
|
|
486
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/devicestore)</td>
|
|
487
|
-
</tr>
|
|
488
|
-
|
|
489
|
-
<tr>
|
|
490
|
-
<td rowspan="1" colSpan="1" >CoGuestStore</td>
|
|
491
|
-
|
|
492
|
-
<td rowspan="1" colSpan="1" >Audience co-hosting management: request/invite/accept/reject co-hosting, permission control (microphone/camera), state synchronization.</td>
|
|
493
|
-
|
|
494
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore)</td>
|
|
495
|
-
</tr>
|
|
496
|
-
</table>
|
|
497
|
-
|
|
360
|
+
| **Store/Component** | **Function Description** | **API Documentation** |
|
|
361
|
+
| --- | --- | --- |
|
|
362
|
+
| LiveCoreView | Core view component for live video stream display and interaction. Handles video rendering and widget management, supporting host streaming, audience co-hosting, host connections, and more. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview) |
|
|
363
|
+
| DeviceStore | Audio and video device control: microphone (on/off, volume), camera (on/off, switch, quality), screen sharing, real-time device status monitoring. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/devicestore) |
|
|
364
|
+
| CoGuestStore | Audience co-hosting management: request/invite/accept/reject co-hosting, permission control (microphone/camera), state synchronization. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore) |
|
|
498
365
|
|
|
499
366
|
## FAQs
|
|
500
367
|
|
|
@@ -509,7 +376,6 @@ The viewLayer parameter distinguishes between foreground and background widgets:
|
|
|
509
376
|
|
|
510
377
|
- `.background`: Background layer, displayed only when the user has no video stream (e.g., camera is off); typically used to show the user's avatar or a placeholder image.
|
|
511
378
|
|
|
512
|
-
|
|
513
379
|
### Why is my custom view not showing up?
|
|
514
380
|
- **Check adapter settings**: Ensure you have called `coreView.videoViewDelegate = self` and set the adapter successfully.
|
|
515
381
|
|