@tencent-rtc/mcp 1.4.7 → 1.6.0-beta.1
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/cursor-setting.png +0 -0
- package/knowledge/bm25-cache.js +74 -0
- package/knowledge/bm25-cache.js.map +1 -0
- package/knowledge/bm25.js +148 -0
- package/knowledge/bm25.js.map +1 -0
- package/knowledge/build-index.js +70 -0
- package/knowledge/build-index.js.map +1 -0
- package/knowledge/chunker.js +168 -0
- package/knowledge/chunker.js.map +1 -0
- package/knowledge/content-loader.js +40 -0
- package/knowledge/content-loader.js.map +1 -0
- package/knowledge/doc-url-resolver.js +143 -0
- package/knowledge/doc-url-resolver.js.map +1 -0
- package/knowledge/extractors.js +26 -0
- package/knowledge/extractors.js.map +1 -0
- package/knowledge/path-meta.js +185 -0
- package/knowledge/path-meta.js.map +1 -0
- package/knowledge/search/exact-lookup.js +498 -0
- package/knowledge/search/exact-lookup.js.map +1 -0
- package/knowledge/search/filter-pool.js +105 -0
- package/knowledge/search/filter-pool.js.map +1 -0
- package/knowledge/search/product-scope-intent.js +41 -0
- package/knowledge/search/product-scope-intent.js.map +1 -0
- package/knowledge/search/requires-framework.js +82 -0
- package/knowledge/search/requires-framework.js.map +1 -0
- package/knowledge/search/search-knowledge.js +230 -0
- package/knowledge/search/search-knowledge.js.map +1 -0
- package/mcp-server-prompt.png +0 -0
- package/package.json +1 -1
- package/resource/_schema/feature-aliases.yaml +10 -0
- package/resource/_schema/goal-tags.yaml +72 -0
- package/resource/_schema/products.yaml +19 -0
- package/resource/_schema/trtc-intents.yaml +27 -0
- package/resource/_schema/types.yaml +43 -0
- package/resource/index/component-slugs.json +1 -0
- package/resource/index/doc-source-urls.json +1 -0
- package/resource/index/manifest.json +1 -0
- package/resource/{doc → integration}/callkit/preset/android/integration.md +34 -28
- package/resource/integration/callkit/preset/flutter/integration.md +346 -0
- package/resource/integration/callkit/preset/ios/integration.md +408 -0
- package/resource/integration/callkit/preset/react/integration.md +362 -0
- package/resource/integration/callkit/preset/vue/integration.md +356 -0
- package/resource/integration/chat/preset/android/integration.md +500 -0
- package/resource/integration/chat/preset/flutter/integration.md +370 -0
- package/resource/integration/chat/preset/ios/integration.md +566 -0
- package/resource/integration/chat/preset/react/integration.md +490 -0
- package/resource/integration/chat/preset/vue/integration.md +504 -0
- package/resource/{doc → integration}/livekit/preset/live/vue/live-list-integration.md +26 -22
- package/resource/{doc → integration}/livekit/preset/live/vue/live-player-desk-integration.md +22 -18
- package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +309 -0
- package/resource/{doc → integration}/livekit/preset/live/vue/live-pusher-integration.md +47 -39
- package/resource/integration/roomkit/preset/vue/integration.md +562 -0
- package/resource/knowledge/callkit/core-sdk/android/answer-call.md +828 -0
- package/resource/knowledge/callkit/core-sdk/android/make-call.md +897 -0
- package/resource/knowledge/callkit/core-sdk/android/offline-push.md +363 -0
- package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +1111 -0
- package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +1132 -0
- package/resource/{doc → knowledge}/callkit/core-sdk/flutter/offline-push.md +174 -151
- package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1084 -0
- package/resource/knowledge/callkit/core-sdk/ios/make-call.md +1252 -0
- package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +534 -0
- package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +953 -0
- package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +1061 -0
- package/resource/knowledge/callkit/faq/android.md +92 -0
- package/resource/{doc/callkit/faq/android-faq.md → knowledge/callkit/faq/common.md} +11 -12
- package/resource/knowledge/callkit/faq/error-code.md +67 -0
- package/resource/knowledge/callkit/faq/flutter.md +52 -0
- package/resource/knowledge/callkit/faq/ios.md +104 -0
- package/resource/knowledge/callkit/faq/web.md +74 -0
- package/resource/knowledge/callkit/preset/android/api.md +412 -0
- package/resource/knowledge/callkit/preset/flutter/api.md +22 -0
- package/resource/knowledge/callkit/preset/ios/api.md +234 -0
- package/resource/knowledge/callkit/preset/web/api.md +83 -0
- package/resource/knowledge/chat/preset/android/features/chat-setting.md +74 -0
- package/resource/knowledge/chat/preset/android/features/contact-list.md +43 -0
- package/resource/knowledge/chat/preset/android/features/conversation-list.md +117 -0
- package/resource/knowledge/chat/preset/android/features/language.md +136 -0
- package/resource/knowledge/chat/preset/android/features/message-input.md +57 -0
- package/resource/knowledge/chat/preset/android/features/message-list.md +142 -0
- package/resource/knowledge/chat/preset/android/features/search.md +64 -0
- package/resource/knowledge/chat/preset/android/features/theme.md +222 -0
- package/resource/knowledge/chat/preset/android-view/integration.md +300 -0
- package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +64 -0
- package/resource/knowledge/chat/preset/flutter/features/contact-list.md +40 -0
- package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +129 -0
- package/resource/knowledge/chat/preset/flutter/features/language.md +104 -0
- package/resource/knowledge/chat/preset/flutter/features/message-input.md +54 -0
- package/resource/knowledge/chat/preset/flutter/features/message-list.md +158 -0
- package/resource/knowledge/chat/preset/flutter/features/search.md +59 -0
- package/resource/knowledge/chat/preset/flutter/features/theme.md +261 -0
- package/resource/knowledge/chat/preset/ios/features/chat-setting.md +94 -0
- package/resource/knowledge/chat/preset/ios/features/contact-list.md +119 -0
- package/resource/knowledge/chat/preset/ios/features/conversation-list.md +134 -0
- package/resource/knowledge/chat/preset/ios/features/language.md +125 -0
- package/resource/knowledge/chat/preset/ios/features/message-input.md +69 -0
- package/resource/knowledge/chat/preset/ios/features/message-list.md +162 -0
- package/resource/knowledge/chat/preset/ios/features/search.md +93 -0
- package/resource/knowledge/chat/preset/ios/features/theme.md +270 -0
- package/resource/{doc/chatkit/ios → knowledge/chat/preset/ios-uikit}/integration.md +160 -158
- package/resource/knowledge/chat/preset/react/features/chat-setting.md +101 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/contact-list.md +43 -41
- package/resource/knowledge/chat/preset/react/features/conversation-actions.md +215 -0
- package/resource/knowledge/chat/preset/react/features/conversation-list.md +339 -0
- package/resource/knowledge/chat/preset/react/features/conversation-preview.md +101 -0
- package/resource/knowledge/chat/preset/react/features/conversation-search.md +61 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-input.md +117 -156
- package/resource/knowledge/chat/preset/react/features/message-list.md +297 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/search.md +65 -59
- package/resource/knowledge/chat/preset/react/features/theme.md +93 -0
- package/resource/knowledge/chat/preset/vue/features/chat-header.md +331 -0
- package/resource/knowledge/chat/preset/vue/features/chat-setting.md +79 -0
- package/resource/knowledge/chat/preset/vue/features/contact-list.md +277 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-actions.md +234 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-list.md +331 -0
- package/resource/knowledge/chat/preset/vue/features/conversation-preview.md +216 -0
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-search.md +13 -13
- package/resource/knowledge/chat/preset/vue/features/message-input.md +551 -0
- package/resource/knowledge/chat/preset/vue/features/message-list.md +350 -0
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/search.md +79 -73
- package/resource/knowledge/chat/preset/vue/features/theme.md +136 -0
- package/resource/knowledge/chat/urls/error-code.md +17 -0
- package/resource/knowledge/chat/urls/product.md +43 -0
- package/resource/knowledge/chat/urls/restapi.md +204 -0
- package/resource/knowledge/chat/urls/sdk/android.md +80 -0
- package/resource/knowledge/chat/urls/sdk/flutter.md +71 -0
- package/resource/knowledge/chat/urls/sdk/ios.md +80 -0
- package/resource/knowledge/chat/urls/sdk/web.md +80 -0
- package/resource/knowledge/chat/urls/webhook.md +68 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +286 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +174 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +329 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CameraView.md +55 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +434 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +362 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +466 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +173 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LikeStore.md +51 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +291 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +78 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +488 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +219 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/AudioEffectStore.md +282 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +212 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +153 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +312 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +404 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +334 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +426 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +166 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LikeStore.md +52 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +281 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveCoreView.md +150 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +438 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +190 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/AudioEffectStore.md +291 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +192 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +146 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +309 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +370 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +339 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +503 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +188 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LikeStore.md +51 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +289 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +78 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +487 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +183 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/web/index.md +736 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audience-list.md +53 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-base-beauty.md +17 -15
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-co-guest-interaction.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-gift.md +102 -89
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-host-interaction.md +41 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-integration.md +45 -43
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-live-list.md +23 -20
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audience-list.md +41 -41
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audio-effect.md +70 -69
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-barrage.md +68 -71
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-base-beauty.md +43 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-co-guest-interaction.md +59 -56
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-gift.md +103 -105
- package/resource/knowledge/livekit/core-sdk/live/flutter/live-host-interaction.md +869 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-integration.md +84 -87
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-live-list.md +43 -40
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audience-list.md +11 -10
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-base-beauty.md +15 -14
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-co-guest-interaction.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-gift.md +54 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-host-interaction.md +41 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-integration.md +40 -40
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-live-list.md +19 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audience-list.md +53 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +41 -33
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-gift.md +94 -81
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-host-interaction.md +35 -30
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-integration.md +45 -42
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-room-list.md +23 -20
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audience-list.md +260 -0
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audio-effect.md +598 -0
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-barrage.md +490 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +65 -59
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-gift.md +424 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-integration.md +69 -76
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-room-list.md +726 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audience-list.md +11 -10
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-barrage.md +22 -18
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +41 -33
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-gift.md +54 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-host-interaction.md +35 -30
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-integration.md +49 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-room-list.md +19 -18
- package/resource/knowledge/livekit/faq/error-code.md +193 -0
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/barrage.md +56 -53
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-audience-list.md +22 -21
- package/resource/{doc/livekit/preset/live/vue/components → knowledge/livekit/preset/live/vue/features}/live-view.md +34 -32
- package/resource/knowledge/push/config/android.md +92 -0
- package/resource/knowledge/push/config/harmonyos.md +83 -0
- package/resource/knowledge/push/config/ios.md +254 -0
- package/resource/knowledge/push/config/react-native.md +254 -0
- package/resource/knowledge/push/config/unity.md +209 -0
- package/resource/knowledge/push/config/unreal-engine.md +194 -0
- package/resource/knowledge/push/integration/android.md +404 -0
- package/resource/knowledge/push/integration/flutter.md +465 -0
- package/resource/knowledge/push/integration/harmonyos.md +63 -0
- package/resource/knowledge/push/integration/ios.md +246 -0
- package/resource/knowledge/push/integration/react-native.md +366 -0
- package/resource/knowledge/push/integration/uni-app.md +208 -0
- package/resource/knowledge/push/integration/unity.md +389 -0
- package/resource/knowledge/push/integration/unreal-engine.md +390 -0
- package/resource/knowledge/push/overview/prepare.md +60 -0
- package/resource/knowledge/roomkit/core-sdk/android/call-user-to-room.md +241 -0
- package/resource/knowledge/roomkit/core-sdk/android/room-participant-state.md +588 -0
- package/resource/knowledge/roomkit/core-sdk/android/room-state.md +364 -0
- package/resource/knowledge/roomkit/core-sdk/android/schedule-room.md +340 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +230 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +797 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/room-state.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/schedule-room.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/ios/call-user-to-room.md +233 -0
- package/resource/knowledge/roomkit/core-sdk/ios/room-participant-state.md +569 -0
- package/resource/knowledge/roomkit/core-sdk/ios/room-state.md +325 -0
- package/resource/knowledge/roomkit/core-sdk/ios/schedule-room.md +322 -0
- package/resource/knowledge/roomkit/core-sdk/vue/call-user-to-room.md +221 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/device-detection.md +49 -48
- package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +461 -0
- package/resource/knowledge/roomkit/core-sdk/vue/free-beauty-panel.md +216 -0
- package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +370 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-participant-state.md +61 -60
- package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +280 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/room-view.md +57 -56
- package/resource/knowledge/roomkit/core-sdk/vue/schedule-room.md +319 -0
- package/resource/knowledge/roomkit/core-sdk/vue/screen-share.md +267 -0
- package/resource/knowledge/roomkit/core-sdk/vue/virtual-background.md +261 -0
- package/resource/knowledge/roomkit/preset/android/integration.md +396 -0
- package/resource/knowledge/roomkit/preset/flutter/integration.md +404 -0
- package/resource/knowledge/roomkit/preset/ios/integration.md +369 -0
- package/resource/knowledge/roomkit/preset/react/integration.md +576 -0
- package/resource/knowledge/rtcengine/web/how_to_run_web_sdk_demo.md +44 -0
- package/resource/{doc → knowledge}/rtcengine/web/plugin/21-advanced-auto-play-policy.md +8 -2
- package/resource/{doc → knowledge}/rtcengine/web/plugin/22-advanced-audio-mixer.md +19 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/23-advanced-support-detection.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/24-advanced-network-quality.md +8 -8
- package/resource/{doc → knowledge}/rtcengine/web/plugin/25-advanced-device-change.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +6 -6
- package/resource/{doc → knowledge}/rtcengine/web/plugin/27-advanced-small-stream.md +3 -3
- package/resource/{doc → knowledge}/rtcengine/web/plugin/29-advanced-water-mark.md +18 -0
- package/resource/{doc → knowledge}/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
- package/resource/{doc → knowledge}/rtcengine/web/plugin/34-advanced-proxy.md +2 -2
- package/resource/{doc → knowledge}/rtcengine/web/plugin/35-advanced-ai-denoiser.md +1 -1
- package/resource/knowledge/trtc/android/TRTCCloud.md +1915 -0
- package/resource/knowledge/trtc/android/TRTCCloudDef.md +1029 -0
- package/resource/knowledge/trtc/android/TRTCCloudListener.md +1095 -0
- package/resource/knowledge/trtc/android/TRTCStatistics.md +68 -0
- package/resource/knowledge/trtc/android/TXAudioEffectManager.md +502 -0
- package/resource/knowledge/trtc/android/TXBeautyManager.md +415 -0
- package/resource/knowledge/trtc/android/TXDeviceManager.md +169 -0
- package/resource/knowledge/trtc/android/TXLiteAVCode.md +125 -0
- package/resource/knowledge/trtc/c++/ITRTCCloud.md +2069 -0
- package/resource/knowledge/trtc/c++/ITRTCStatistics.md +73 -0
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +502 -0
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +391 -0
- package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +1191 -0
- package/resource/knowledge/trtc/c++/TRTCTypeDef.md +931 -0
- package/resource/knowledge/trtc/c++/TXLiteAVCode.md +127 -0
- package/resource/knowledge/trtc/ios/TRTCCloud.md +2118 -0
- package/resource/knowledge/trtc/ios/TRTCCloudDef.md +975 -0
- package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +1131 -0
- package/resource/knowledge/trtc/ios/TRTCStatistics.md +68 -0
- package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +423 -0
- package/resource/knowledge/trtc/ios/TXBeautyManager.md +416 -0
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +387 -0
- package/resource/knowledge/trtc/ios/TXLiteAVCode.md +127 -0
- package/server.js +35 -11
- package/server.js.map +1 -1
- package/tools/call/get_native_call_uikit_integration.js +2 -3
- package/tools/call/get_native_call_uikit_integration.js.map +1 -1
- package/tools/call/get_native_callkit_core_integration.js +2 -5
- package/tools/call/get_native_callkit_core_integration.js.map +1 -1
- package/tools/call/get_web_call_uikit_integration.js +2 -3
- package/tools/call/get_web_call_uikit_integration.js.map +1 -1
- package/tools/chat/get_native_chat_uikit_integration.js +2 -3
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -1
- package/tools/chat/get_web_chat_uikit_integration.js +2 -3
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -1
- package/tools/common/present_framework_choice.js +19 -13
- package/tools/common/present_framework_choice.js.map +1 -1
- package/tools/common/record_answer.js +19 -25
- package/tools/common/record_answer.js.map +1 -1
- package/tools/common/record_feedback.js +17 -30
- package/tools/common/record_feedback.js.map +1 -1
- package/tools/common/search_trtc_knowledge.js +45 -0
- package/tools/common/search_trtc_knowledge.js.map +1 -0
- package/tools/definitions/get_native_call_uikit_integration_def.js +3 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_callkit_core_integration_def.js +5 -3
- package/tools/definitions/get_native_callkit_core_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_integration_def.js +5 -2
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_integration_def.js +6 -5
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +4 -2
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +2 -0
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +5 -5
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_room_core_integration_def.js +50 -0
- package/tools/definitions/get_web_room_core_integration_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +5 -4
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/integration-boundary.js +6 -0
- package/tools/definitions/integration-boundary.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +12 -10
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/definitions/record_answer_def.js +19 -17
- package/tools/definitions/record_answer_def.js.map +1 -1
- package/tools/definitions/record_feedback_def.js +14 -13
- package/tools/definitions/record_feedback_def.js.map +1 -1
- package/tools/definitions/search_trtc_knowledge_def.js +40 -0
- package/tools/definitions/search_trtc_knowledge_def.js.map +1 -0
- package/tools/index.js +5 -36
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_integration.js +1 -3
- package/tools/live/get_native_livekit_core_integration.js.map +1 -1
- package/tools/live/get_web_live_uikit_integration.js +2 -4
- package/tools/live/get_web_live_uikit_integration.js.map +1 -1
- package/tools/room/get_web_room_core_integration.js +48 -0
- package/tools/room/get_web_room_core_integration.js.map +1 -0
- package/tools/room/get_web_room_uikit_integration.js +2 -3
- package/tools/room/get_web_room_uikit_integration.js.map +1 -1
- package/utils/generate-structured-result.js +24 -30
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/get-doc-content.js +14 -8
- package/utils/get-doc-content.js.map +1 -1
- package/utils/report-cls-client.js +18 -20
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/doc/callkit/core-sdk/.gitkeep +0 -0
- package/resource/doc/callkit/core-sdk/android/answer-call.md +0 -852
- package/resource/doc/callkit/core-sdk/android/make-call.md +0 -954
- package/resource/doc/callkit/core-sdk/android/offline-push.md +0 -361
- package/resource/doc/callkit/core-sdk/flutter/answer-call.md +0 -1160
- package/resource/doc/callkit/core-sdk/flutter/make-call.md +0 -1205
- package/resource/doc/callkit/core-sdk/ios/answer-call.md +0 -1090
- package/resource/doc/callkit/core-sdk/ios/make-call.md +0 -1248
- package/resource/doc/callkit/core-sdk/ios/offline-push.md +0 -485
- package/resource/doc/callkit/core-sdk/uni-app/answer-call.md +0 -950
- package/resource/doc/callkit/core-sdk/uni-app/make-call.md +0 -1052
- package/resource/doc/callkit/faq/common/error-code.md +0 -47
- package/resource/doc/callkit/faq/flutter-faq.md +0 -115
- package/resource/doc/callkit/faq/ios-faq.md +0 -115
- package/resource/doc/callkit/faq/web-faq.md +0 -36
- package/resource/doc/callkit/preset/android/api.md +0 -296
- package/resource/doc/callkit/preset/flutter/api.md +0 -410
- package/resource/doc/callkit/preset/flutter/integration.md +0 -164
- package/resource/doc/callkit/preset/ios/api.md +0 -80
- package/resource/doc/callkit/preset/ios/integration.md +0 -187
- package/resource/doc/callkit/preset/react/api.md +0 -501
- package/resource/doc/callkit/preset/react/integration.md +0 -86
- package/resource/doc/callkit/preset/vue/api.md +0 -501
- package/resource/doc/callkit/preset/vue/integration.md +0 -83
- package/resource/doc/chatkit/android/faq.md +0 -111
- package/resource/doc/chatkit/android/features/theme.md +0 -219
- package/resource/doc/chatkit/android/integration.md +0 -490
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +0 -281
- package/resource/doc/chatkit/faq/common/product.md +0 -7
- package/resource/doc/chatkit/faq/common/server.md +0 -44
- package/resource/doc/chatkit/faq/common/server_error_code.md +0 -74
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +0 -199
- package/resource/doc/chatkit/faq/flutter_sdk/faq.md +0 -53
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +0 -235
- package/resource/doc/chatkit/faq/web_sdk/error_code.md +0 -47
- package/resource/doc/chatkit/faq/web_sdk/faq.md +0 -287
- package/resource/doc/chatkit/flutter/faq.md +0 -23
- package/resource/doc/chatkit/flutter/features/theme.md +0 -235
- package/resource/doc/chatkit/flutter/integration.md +0 -344
- package/resource/doc/chatkit/ios/faq.md +0 -111
- package/resource/doc/chatkit/ios/features/theme.md +0 -267
- package/resource/doc/chatkit/react/components/avatar.md +0 -104
- package/resource/doc/chatkit/react/components/chat-header.md +0 -148
- package/resource/doc/chatkit/react/components/chat-setting.md +0 -57
- package/resource/doc/chatkit/react/components/chat.md +0 -38
- package/resource/doc/chatkit/react/components/component-list.md +0 -37
- package/resource/doc/chatkit/react/components/conversation-actions.md +0 -174
- package/resource/doc/chatkit/react/components/conversation-list.md +0 -333
- package/resource/doc/chatkit/react/components/conversation-preview.md +0 -118
- package/resource/doc/chatkit/react/components/conversation-search.md +0 -60
- package/resource/doc/chatkit/react/components/message-list.md +0 -293
- package/resource/doc/chatkit/react/components/tuikit.md +0 -34
- package/resource/doc/chatkit/react/faq.md +0 -26
- package/resource/doc/chatkit/react/integration.md +0 -416
- package/resource/doc/chatkit/vue/components/avatar.md +0 -104
- package/resource/doc/chatkit/vue/components/chat-header.md +0 -148
- package/resource/doc/chatkit/vue/components/chat-setting.md +0 -62
- package/resource/doc/chatkit/vue/components/chat.md +0 -45
- package/resource/doc/chatkit/vue/components/component-list.md +0 -87
- package/resource/doc/chatkit/vue/components/contact-list.md +0 -271
- package/resource/doc/chatkit/vue/components/conversation-actions.md +0 -228
- package/resource/doc/chatkit/vue/components/conversation-list.md +0 -320
- package/resource/doc/chatkit/vue/components/conversation-preview.md +0 -213
- package/resource/doc/chatkit/vue/components/message-input.md +0 -1054
- package/resource/doc/chatkit/vue/components/message-list.md +0 -433
- package/resource/doc/chatkit/vue/components/tuikit.md +0 -31
- package/resource/doc/chatkit/vue/components/userpicker.md +0 -256
- package/resource/doc/chatkit/vue/faq.md +0 -36
- package/resource/doc/chatkit/vue/integration.md +0 -428
- package/resource/doc/livekit/core-sdk/live/flutter/live-host-interaction.md +0 -866
- package/resource/doc/livekit/faq/common/error-code.md +0 -88
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +0 -780
- package/resource/doc/livekit/preset/live/vue/components/co-guest-panel.md +0 -91
- package/resource/doc/livekit/preset/live/vue/components/live-scene-panel.md +0 -112
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +0 -215
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +0 -300
- package/resource/doc/roomkit/faq/common/error-code.md +0 -67
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +0 -220
- package/resource/doc/roomkit/vue/features/device-state.md +0 -460
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +0 -215
- package/resource/doc/roomkit/vue/features/room-chat.md +0 -369
- package/resource/doc/roomkit/vue/features/room-state.md +0 -282
- package/resource/doc/roomkit/vue/features/schedule-room.md +0 -318
- package/resource/doc/roomkit/vue/features/screen-share.md +0 -265
- package/resource/doc/roomkit/vue/features/virtual-background.md +0 -271
- package/resource/doc/roomkit/vue/integration.md +0 -315
- package/resource/doc/rtcengine/faq/common/error_code.md +0 -1
- package/resource/doc/rtcengine/faq/web_sdk/.gitkeep +0 -0
- package/resource/doc/rtcengine/web/.gitkeep +0 -0
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +0 -59
- package/resource/doc/trtc/C++/ITRTCCloud.md +0 -1970
- package/resource/doc/trtc/C++/ITRTCStatistics.md +0 -70
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +0 -469
- package/resource/doc/trtc/C++/ITXDeviceManager.md +0 -387
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +0 -1082
- package/resource/doc/trtc/C++/TRTCTypeDef.md +0 -925
- package/resource/doc/trtc/C++/TXLiteAVCode.md +0 -129
- package/resource/doc/trtc/android/TRTCCloud.md +0 -1815
- package/resource/doc/trtc/android/TRTCCloudDef.md +0 -992
- package/resource/doc/trtc/android/TRTCCloudListener.md +0 -1004
- package/resource/doc/trtc/android/TRTCStatistics.md +0 -65
- package/resource/doc/trtc/android/TXAudioEffectManager.md +0 -469
- package/resource/doc/trtc/android/TXBeautyManager.md +0 -402
- package/resource/doc/trtc/android/TXDeviceManager.md +0 -173
- package/resource/doc/trtc/android/TXLiteAVCode.md +0 -127
- package/resource/doc/trtc/iOS/TRTCCloud.md +0 -2028
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +0 -958
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +0 -1046
- package/resource/doc/trtc/iOS/TRTCStatistics.md +0 -65
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +0 -397
- package/resource/doc/trtc/iOS/TXBeautyManager.md +0 -403
- package/resource/doc/trtc/iOS/TXDeviceManager.md +0 -381
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +0 -130
- package/tools/call/get_callkit_api.js +0 -33
- package/tools/call/get_callkit_api.js.map +0 -1
- package/tools/chat/get_native_chat_uikit_feature_detail.js +0 -35
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +0 -1
- package/tools/chat/get_web_chat_uikit_component_detail.js +0 -35
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +0 -1
- package/tools/common/get_faq.js +0 -266
- package/tools/common/get_faq.js.map +0 -1
- package/tools/common/record_skill_session.js +0 -69
- package/tools/common/record_skill_session.js.map +0 -1
- package/tools/definitions/get_callkit_api_def.js +0 -29
- package/tools/definitions/get_callkit_api_def.js.map +0 -1
- package/tools/definitions/get_faq_def.js +0 -47
- package/tools/definitions/get_faq_def.js.map +0 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +0 -31
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +0 -34
- package/tools/definitions/get_native_livekit_core_features_def.js.map +0 -1
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +0 -32
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +0 -31
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_api_def.js +0 -30
- package/tools/definitions/get_web_livekit_api_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_component_detail_def.js +0 -32
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +0 -31
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_api_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +0 -27
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +0 -1
- package/tools/definitions/record_skill_session_def.js +0 -31
- package/tools/definitions/record_skill_session_def.js.map +0 -1
- package/tools/live/get_native_livekit_core_features.js +0 -68
- package/tools/live/get_native_livekit_core_features.js.map +0 -1
- package/tools/live/get_web_livekit_api.js +0 -33
- package/tools/live/get_web_livekit_api.js.map +0 -1
- package/tools/live/get_web_livekit_component_detail.js +0 -35
- package/tools/live/get_web_livekit_component_detail.js.map +0 -1
- package/tools/room/get_web_roomkit_feature_detail.js +0 -69
- package/tools/room/get_web_roomkit_feature_detail.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_api.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +0 -1
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +0 -32
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +0 -1
- package/tools/trtc/get_native_trtc_sdk_docs.js +0 -74
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +0 -1
- package/utils/build-session-directives.js +0 -120
- package/utils/build-session-directives.js.map +0 -1
- package/utils/handle-framework.js +0 -9
- package/utils/handle-framework.js.map +0 -1
- package/utils/handle-state-name.js +0 -29
- package/utils/handle-state-name.js.map +0 -1
- package/utils/report-runtime-error-cls-client.js +0 -91
- package/utils/report-runtime-error-cls-client.js.map +0 -1
- /package/resource/{doc/livekit/preset/live/vue/faq.md → knowledge/push/config/donut.md} +0 -0
- /package/resource/{doc/roomkit/vue/faq.md → knowledge/push/integration/donut.md} +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/api.md +0 -0
- /package/resource/{doc/rtcengine/faq/web/web.md → knowledge/rtcengine/web/faq.md} +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/how_to_integrated_web_sdk.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/28-advanced-beauty.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/30-advanced-cross-room-link.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/36-advanced-virtual-background.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/37-advanced-voice-changer.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/40-advanced-video-mixer.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/43-advanced-face-detection.md +0 -0
|
@@ -2,31 +2,31 @@ This documentation guides you through using the core component of the AtomicXCor
|
|
|
2
2
|
|
|
3
3
|
## Core Features
|
|
4
4
|
|
|
5
|
-
**LiveCoreWidget** is a lightweight widget
|
|
5
|
+
**LiveCoreWidget** is a lightweight widget built for live streaming scenarios. As the foundation of your live streaming implementation, it abstracts away the complexities of streaming, co-hosting, and audio and video rendering. Use LiveCoreWidget as the video canvas for your live stream, so you can focus on building your UI and interactive features.
|
|
6
6
|
|
|
7
|
-
The
|
|
7
|
+
The image below shows how LiveCoreWidget fits into the live streaming interface:
|
|
8
8
|
|
|
9
9
|
## Preparations
|
|
10
10
|
|
|
11
11
|
### Step 1: Activate the Service
|
|
12
12
|
|
|
13
|
-
See Activate Service to obtain either the trial or paid version of the SDK.Then, go to [the Console](https://console.trtc.io/app) for application management, and get the following:
|
|
14
|
-
- `SDKAppID`: Application identifier (required).
|
|
13
|
+
See Activate the Service to obtain either the trial or paid version of the SDK. Then, go to [the Console](https://console.trtc.io/app) for application management, and get the following:
|
|
14
|
+
- `SDKAppID`: Application identifier (required). TRTC uses `SDKAppID` for billing and details.
|
|
15
15
|
|
|
16
|
-
- `SDKSecretKey`: Application secret key
|
|
16
|
+
- `SDKSecretKey`: Application secret key.
|
|
17
17
|
|
|
18
18
|
### Step 2: Import AtomicXCore into Your Project
|
|
19
|
-
1. **
|
|
19
|
+
1. **Install the SDK**: Add the `atomic_x_core` dependency in your `pubspec.yaml` file and execute `flutter pub get`.
|
|
20
20
|
|
|
21
21
|
``` yaml
|
|
22
22
|
dependencies:
|
|
23
|
-
atomic_x_core: ^
|
|
23
|
+
atomic_x_core: ^4.0.1
|
|
24
24
|
```
|
|
25
25
|
2. **Configure project permissions:** Both Android and iOS projects require configuration.
|
|
26
26
|
|
|
27
27
|
【Android】
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
Add camera and microphone permissions to your `android/app/src/main/AndroidManifest.xml` file.
|
|
30
30
|
``` xml
|
|
31
31
|
<uses-permission android:name="android.permission.CAMERA" />
|
|
32
32
|
<uses-permission android:name="android.permission.RECORD_AUDIO" />
|
|
@@ -34,9 +34,9 @@ Please add permission to use camera and microphone in the `android/app/src/main/
|
|
|
34
34
|
|
|
35
35
|
【iOS】
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
Add camera and microphone usage descriptions to your app’s **Podfile** in the `iOS` directory and to the `Info.plist` file in the `ios/Runner` directory.
|
|
38
38
|
|
|
39
|
-
**Podfile
|
|
39
|
+
**Podfile:**
|
|
40
40
|
``` ruby
|
|
41
41
|
post_install do |installer|
|
|
42
42
|
installer.pods_project.targets.each do |target|
|
|
@@ -52,7 +52,7 @@ post_install do |installer|
|
|
|
52
52
|
end
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
-
**Info.plist
|
|
55
|
+
**Info.plist:**
|
|
56
56
|
``` xml
|
|
57
57
|
<key>NSCameraUsageDescription</key>
|
|
58
58
|
<string>TUILiveKit needs to access your camera permission. Video recording with picture only after enabling.</string>
|
|
@@ -62,12 +62,12 @@ end
|
|
|
62
62
|
|
|
63
63
|
### Step 3: Implement Login Logic
|
|
64
64
|
|
|
65
|
-
Call `LoginStore.shared.login` in your project to
|
|
65
|
+
Call `LoginStore.shared.login` in your project to log in. **This is the key premise for using all functions of AtomicXCore.**
|
|
66
66
|
|
|
67
67
|
> **Important:**
|
|
68
68
|
>
|
|
69
69
|
|
|
70
|
-
> It is recommended to call LoginStore.shared.login after successful log-in to your App's user account to ensure clear and consistent business logic.
|
|
70
|
+
> It is recommended to call `LoginStore.shared.login` after successful log-in to your App's user account to ensure clear and consistent business logic.
|
|
71
71
|
>
|
|
72
72
|
|
|
73
73
|
``` java
|
|
@@ -93,28 +93,28 @@ void main() async {
|
|
|
93
93
|
}
|
|
94
94
|
```
|
|
95
95
|
|
|
96
|
-
**
|
|
97
|
-
|
|
|
96
|
+
**Login API parameters:**
|
|
97
|
+
| <strong>Parameter</strong> | <strong>Type</strong> | <strong>Note</strong> |
|
|
98
98
|
| --- | --- | --- |
|
|
99
|
-
|
|
|
100
|
-
|
|
|
101
|
-
|
|
|
99
|
+
| <code>sdkAppID</code> | <code>int</code> | Your application identifier, which can be obtained from <a href="https://console.trtc.io/app">TRTC console</a>. |
|
|
100
|
+
| <code>userID</code> | <code>String</code> | - The unique ID for the current user.<br>- Only letters, numbers, hyphens, and underscores are allowed.<br>- To avoid login conflicts across devices, do not use simple IDs like 1, 123, etc. |
|
|
101
|
+
| <code>userSig</code> | <code>String</code> | Credential for TRTC authentication. Please note:<br>- In development environment: You can use the local <code>GenerateTestUserSig.genTestSig</code> function to generate a <code>UserSig</code> or generate a temporary UserSig via the <a href="https://console.trtc.io/usersig">UserSig Generation Tool</a>.<br>- In production environment: To prevent SecretKey leakage, always generate <code>UserSig</code> on your server. For details, see Generating UserSig on the Server. |
|
|
102
102
|
|
|
103
103
|
## Building a Basic Live Room
|
|
104
104
|
|
|
105
|
-
### Step 1:
|
|
105
|
+
### Step 1: Host Video Streaming Setup
|
|
106
106
|
|
|
107
|
-
|
|
107
|
+
Follow these steps to quickly set up host video streaming:
|
|
108
108
|
|
|
109
109
|
> **Note:**
|
|
110
110
|
>
|
|
111
111
|
|
|
112
|
-
> For
|
|
112
|
+
> For a complete host streaming implementation, see [live_room_anchor_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/live_stream/features/live_room_anchor_widget.dart) in the TUILiveKit open-source project.
|
|
113
113
|
>
|
|
114
114
|
|
|
115
|
-
1. **Initialize
|
|
115
|
+
1. **Initialize Host Streaming View**
|
|
116
116
|
|
|
117
|
-
On your
|
|
117
|
+
On your host page, create a `LiveCoreWidget` instance and control the live stream behavior through `LiveCoreController`.
|
|
118
118
|
|
|
119
119
|
``` java
|
|
120
120
|
import 'package:flutter/material.dart';
|
|
@@ -138,7 +138,7 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
138
138
|
void initState() {
|
|
139
139
|
super.initState();
|
|
140
140
|
// 2. Initialize the controller
|
|
141
|
-
_controller = LiveCoreController.create();
|
|
141
|
+
_controller = LiveCoreController.create(CoreViewType.pushView);
|
|
142
142
|
// 3. Set up live streaming ID
|
|
143
143
|
_controller.setLiveID(widget.liveId);
|
|
144
144
|
}
|
|
@@ -159,7 +159,7 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
159
159
|
```
|
|
160
160
|
2. **Turn on the camera and microphone**
|
|
161
161
|
|
|
162
|
-
|
|
162
|
+
Call `DeviceStore.shared.openLocalCamera` and `DeviceStore.shared.openLocalMicrophone` to enable the camera and microphone. LiveCoreWidget will automatically preview the camera video stream:
|
|
163
163
|
|
|
164
164
|
``` java
|
|
165
165
|
import 'package:flutter/material.dart';
|
|
@@ -181,7 +181,7 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
181
181
|
@override
|
|
182
182
|
void initState() {
|
|
183
183
|
super.initState();
|
|
184
|
-
_controller = LiveCoreController.create();
|
|
184
|
+
_controller = LiveCoreController.create(CoreViewType.pushView);
|
|
185
185
|
_controller.setLiveID(widget.liveId);
|
|
186
186
|
// Turn on the device
|
|
187
187
|
_openDevices();
|
|
@@ -208,7 +208,7 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
208
208
|
```
|
|
209
209
|
3. **Start live streaming**
|
|
210
210
|
|
|
211
|
-
By calling the **LiveListStore**`createLive` API to start video live streaming
|
|
211
|
+
By calling the **LiveListStore**`createLive` API to start video live streaming:
|
|
212
212
|
|
|
213
213
|
``` java
|
|
214
214
|
import 'package:flutter/material.dart';
|
|
@@ -230,7 +230,7 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
230
230
|
@override
|
|
231
231
|
void initState() {
|
|
232
232
|
super.initState();
|
|
233
|
-
_controller = LiveCoreController.create();
|
|
233
|
+
_controller = LiveCoreController.create(CoreViewType.pushView);
|
|
234
234
|
_controller.setLiveID(widget.liveId);
|
|
235
235
|
_openDevices();
|
|
236
236
|
}
|
|
@@ -247,11 +247,9 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
247
247
|
// Set up live streaming room id
|
|
248
248
|
liveID: widget.liveId,
|
|
249
249
|
// Set up live streaming room name
|
|
250
|
-
liveName: "
|
|
251
|
-
//
|
|
252
|
-
|
|
253
|
-
// Configure the anchor to always stay on the seat
|
|
254
|
-
keepOwnerOnSeat: true,
|
|
250
|
+
liveName: "Atomic Live Demo",
|
|
251
|
+
// Layout mode: VideoDynamicGrid9Seats represents a dynamic 9-grid layout.
|
|
252
|
+
seatTemplate: VideoDynamicGrid9Seats(),
|
|
255
253
|
);
|
|
256
254
|
|
|
257
255
|
// 2. Call LiveListStore.shared.createLive to start live streaming
|
|
@@ -289,29 +287,26 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
289
287
|
}
|
|
290
288
|
```
|
|
291
289
|
|
|
292
|
-
**LiveInfo
|
|
290
|
+
**LiveInfo parameters:**
|
|
293
291
|
|
|
294
|
-
|
|
|
292
|
+
| <strong>Parameter Name</strong> | <strong>Type</strong> | <strong>Attribute</strong> | <strong>Description</strong> |
|
|
295
293
|
| --- | --- | --- | --- |
|
|
296
|
-
|
|
|
297
|
-
|
|
|
298
|
-
|
|
|
299
|
-
|
|
|
300
|
-
|
|
|
301
|
-
|
|
|
302
|
-
|
|
|
303
|
-
|
|
|
304
|
-
|
|
|
305
|
-
|
|
|
306
|
-
|
|
|
307
|
-
|
|
|
308
|
-
| `categoryList` | `List<int>` | Optional. | Tag list of categories in the live streaming room. |
|
|
309
|
-
| `activityStatus` | `int` | Optional. | Live stream status. |
|
|
310
|
-
| `isGiftEnabled` | `bool` | Optional. | Whether to enable the gift function (`true`: yes, `false`: no). |
|
|
294
|
+
| <code>liveID</code> | <code>String</code> | Required | Unique identifier for the live streaming room. |
|
|
295
|
+
| <code>liveName</code> | <code>String</code> | Optional. | Name of the live streaming room. |
|
|
296
|
+
| <code>notice</code> | <code>String</code> | Optional. | Announcement information of the live streaming room. |
|
|
297
|
+
| <code>isMessageDisable</code> | <code>bool</code> | Optional. | Whether to mute (<code>true</code>: yes, <code>false</code>: no). |
|
|
298
|
+
| <code>isPublicVisible</code> | <code>bool</code> | Optional. | Whether the live room is publicly visible (<code>true</code>: yes, <code>false</code>: no). |
|
|
299
|
+
| <code>seatMode</code> | <code>TakeSeatMode</code> | Optional. | Seat mode:<br>- <code>TakeSeatMode.free</code>: free seat.<br>- <code>TakeSeatMode.apply</code>: apply for seat. |
|
|
300
|
+
| <code>seatTemplate</code> | <code>SeatLayoutTemplate</code> | Required | Seat layout template. |
|
|
301
|
+
| <code>coverURL</code> | <code>String</code> | Optional. | Cover image URL of the live streaming room. |
|
|
302
|
+
| <code>backgroundURL</code> | <code>String</code> | Optional. | Background image URL of the live streaming room. |
|
|
303
|
+
| <code>categoryList</code> | <code>List<int></code> | Optional. | Category tags for the live room. |
|
|
304
|
+
| <code>activityStatus</code> | <code>int</code> | Optional. | Live stream status. |
|
|
305
|
+
| <code>isGiftEnabled</code> | <code>bool</code> | Optional. | Whether to enable the gift function (<code>true</code>: yes, <code>false</code>: no). |
|
|
311
306
|
|
|
312
307
|
4. **End live streaming**
|
|
313
308
|
|
|
314
|
-
|
|
309
|
+
When the live stream ends, call `LiveListStore.shared.endLive` to stop streaming and close the room. The SDK will handle cleanup automatically.
|
|
315
310
|
|
|
316
311
|
``` java
|
|
317
312
|
import 'package:flutter/material.dart';
|
|
@@ -345,17 +340,17 @@ The anchor starts live streaming process is as follows. You just need to perform
|
|
|
345
340
|
}
|
|
346
341
|
```
|
|
347
342
|
|
|
348
|
-
### Step 2:
|
|
343
|
+
### Step 2: Audience Room Entry and Viewing
|
|
349
344
|
|
|
350
|
-
|
|
345
|
+
Enable audience live viewing with these steps:
|
|
351
346
|
|
|
352
347
|
> **Note:**
|
|
353
348
|
>
|
|
354
349
|
|
|
355
|
-
> For
|
|
350
|
+
> For a complete audience implementation, see [audience_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/live_stream/features/audience/audience_widget.dart) in the TUILiveKit open-source project.
|
|
356
351
|
>
|
|
357
352
|
|
|
358
|
-
1. **
|
|
353
|
+
1. **Audience Streaming Page**
|
|
359
354
|
|
|
360
355
|
On your audience page, create a `LiveCoreWidget` instance and control the live stream behavior through `LiveCoreController`.
|
|
361
356
|
|
|
@@ -381,7 +376,7 @@ The audience viewing process is as follows. In just a few simple steps, you can
|
|
|
381
376
|
void initState() {
|
|
382
377
|
super.initState();
|
|
383
378
|
// 2. Initialize the controller
|
|
384
|
-
_controller = LiveCoreController.create();
|
|
379
|
+
_controller = LiveCoreController.create(CoreViewType.playView);
|
|
385
380
|
// 3. Bind live streaming id
|
|
386
381
|
_controller.setLiveID(widget.liveId);
|
|
387
382
|
}
|
|
@@ -399,9 +394,9 @@ The audience viewing process is as follows. In just a few simple steps, you can
|
|
|
399
394
|
}
|
|
400
395
|
}
|
|
401
396
|
```
|
|
402
|
-
2. **
|
|
397
|
+
2. **Join Live Room**
|
|
403
398
|
|
|
404
|
-
|
|
399
|
+
Call `LiveListStore.shared.joinLive` to join the live stream. LiveCoreWidget will automatically play the video stream:
|
|
405
400
|
|
|
406
401
|
``` java
|
|
407
402
|
import 'package:flutter/material.dart';
|
|
@@ -423,7 +418,7 @@ The audience viewing process is as follows. In just a few simple steps, you can
|
|
|
423
418
|
@override
|
|
424
419
|
void initState() {
|
|
425
420
|
super.initState();
|
|
426
|
-
_controller = LiveCoreController.create();
|
|
421
|
+
_controller = LiveCoreController.create(CoreViewType.playView);
|
|
427
422
|
_controller.setLiveID(widget.liveId);
|
|
428
423
|
// Enter live room
|
|
429
424
|
_joinLive();
|
|
@@ -455,9 +450,9 @@ The audience viewing process is as follows. In just a few simple steps, you can
|
|
|
455
450
|
}
|
|
456
451
|
}
|
|
457
452
|
```
|
|
458
|
-
3. **
|
|
453
|
+
3. **Leave Live Room**
|
|
459
454
|
|
|
460
|
-
When the audience
|
|
455
|
+
When the audience leaves, call `LiveListStore.shared.leaveLive` to exit. The SDK will stop streaming and leave the room automatically.
|
|
461
456
|
|
|
462
457
|
``` java
|
|
463
458
|
import 'package:flutter/material.dart';
|
|
@@ -493,9 +488,9 @@ The audience viewing process is as follows. In just a few simple steps, you can
|
|
|
493
488
|
|
|
494
489
|
### Step 3: Listen for Live Events
|
|
495
490
|
|
|
496
|
-
After the audience
|
|
491
|
+
After the audience enters the live room, you should handle passive events such as the host ending the stream or the audience being kicked out. Without event handling, the audience UI may remain on a black screen, impacting user experience.
|
|
497
492
|
|
|
498
|
-
|
|
493
|
+
Use `LiveListListener` to listen for live events:
|
|
499
494
|
``` java
|
|
500
495
|
import 'package:flutter/material.dart';
|
|
501
496
|
import 'package:atomic_x_core/atomicxcore.dart';
|
|
@@ -518,7 +513,7 @@ class _YourAudiencePageState extends State<YourAudiencePage> {
|
|
|
518
513
|
@override
|
|
519
514
|
void initState() {
|
|
520
515
|
super.initState();
|
|
521
|
-
_controller = LiveCoreController.create();
|
|
516
|
+
_controller = LiveCoreController.create(CoreViewType.playView);
|
|
522
517
|
_controller.setLiveID(widget.liveId);
|
|
523
518
|
// 2. Listen to Live Event
|
|
524
519
|
_setupLiveEventListener();
|
|
@@ -585,8 +580,8 @@ class _YourAudiencePageState extends State<YourAudiencePage> {
|
|
|
585
580
|
|
|
586
581
|
### Run and Test
|
|
587
582
|
|
|
588
|
-
After integrating
|
|
589
|
-
|
|
|
583
|
+
After integrating LiveCoreWidget, you’ll have a clean video rendering view with full live streaming capabilities, but no interactive UI. See the next section, Enrich Live-Streaming Scenarios, to add more features to your live stream.
|
|
584
|
+
| Layout | <strong>Dynamic Grid Layout</strong> | <strong>Floating Window Layout</strong> | <strong>Fixed Grid Layout</strong> |
|
|
590
585
|
| --- | --- | --- | --- |
|
|
591
586
|
| Template ID | 600 | 601 | 800 |
|
|
592
587
|
| Description | Default layout; grid size adjusts dynamically based on number of co-hosts. | Co-hosts are displayed as floating windows. | Fixed number of co-hosts; each occupies a fixed grid. |
|
|
@@ -595,29 +590,31 @@ After integrating `LiveCoreWidget`, you will obtain a pure video rendering view
|
|
|
595
590
|
## Enrich Live Streaming Scenarios
|
|
596
591
|
|
|
597
592
|
Once the basic live streaming functionality is in place, refer to the following guides to add interactive features to your live stream:
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
593
|
+
|
|
594
|
+
|**Feature**|**Description**|**Store**|**Implementation Guide**|
|
|
595
|
+
|---------|---------|---------|---------|
|
|
596
|
+
|**Audience Audio/Video Co-hosting**|Audience can apply to join the host and interact via real-time video.|[CoGuestStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html)|Implementation Guide|
|
|
597
|
+
|**Host Cross-room PK**|Hosts from different rooms can connect for interaction or PK.|[CoHostStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_host_store/CoHostStore-class.html) / [BattleStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_battle_store/BattleStore-class.html)|Implementation Guide|
|
|
598
|
+
|**Live Comments Chat**|Audience can send and receive real-time text messages in the live room.|[BarrageStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_barrage_barrage_store/BarrageStore-class.html)|Implementation Guide|
|
|
599
|
+
|**Gift System**|Audience can send virtual gifts to the host, increasing engagement and fun.|[GiftStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_gift_gift_store/GiftStore-class.html)|Implementation Guide|
|
|
604
600
|
|
|
605
601
|
## API documentation
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
602
|
+
|
|
603
|
+
|**Store/Component**|Feature Description|API Documentation|
|
|
604
|
+
|---------|---------|---------|
|
|
605
|
+
|**LiveCoreWidget**|Core view for live video display and interaction: handles video rendering and widget management; supports host streaming, audience co-hosting, host cross-room connections, and more.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_view_live_live_core_widget/LiveCoreWidget-class.html)|
|
|
606
|
+
|**LiveCoreController**|Controller for LiveCoreWidget: set live stream ID, control preview, and other operations.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_view_live_live_core_widget/LiveCoreController-class.html)|
|
|
607
|
+
|**LiveListStore**|Live room lifecycle management: create, join, leave, destroy room; query room list; update live info (name, announcement, etc.); listen for live status (kicked out, ended).|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListStore-class.html)|
|
|
608
|
+
|**DeviceStore**|Audio/video device control: microphone (toggle/volume), camera (toggle/switch camera/video quality), screen sharing, real-time device status monitoring.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_device_device_store/DeviceStore-class.html)|
|
|
609
|
+
|**CoGuestStore**|Audience co-host management: co-host application/invitation/accept/reject, member permissions (microphone/camera), status sync.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_guest_store/CoGuestStore-class.html)|
|
|
610
|
+
|**CoHostStore**|Host cross-room connection: supports multiple layouts (dynamic grid, etc.), initiate/accept/reject connection, co-host interaction management.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_co_host_store/CoHostStore-class.html)|
|
|
611
|
+
|**BattleStore**|Host PK battles: initiate PK (set duration/opponent), manage PK status (start/end), sync scores, listen for results.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_battle_store/BattleStore-class.html)|
|
|
612
|
+
|**GiftStore**|Gift interaction: get gift list, send/receive gifts, listen for gift events (including sender and gift details).|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_gift_gift_store/GiftStore-class.html)|
|
|
613
|
+
|**BarrageStore**|Live comments: send text/custom comments, manage comment list, monitor comment status in real time.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_barrage_barrage_store/BarrageStore-class.html)|
|
|
614
|
+
|**LikeStore**|Like interaction: send likes, listen for like events, sync total like count.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_like_store/LikeStore-class.html)|
|
|
615
|
+
|**LiveAudienceStore**|Audience management: get real-time audience list (ID/name/avatar), count audience, listen for audience enter/leave events.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_audience_store/LiveAudienceStore-class.html)|
|
|
616
|
+
|**AudioEffectStore**|Audio effects: voice changer (child/male), reverb (KTV, etc.), ear monitoring, real-time effect switching.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_device_audio_effect_store/AudioEffectStore-class.html)|
|
|
617
|
+
|**BaseBeautyStore**|Basic beauty filters: adjust smoothing/whitening/rosy (0-100), reset beauty status, sync effect parameters.|[API Documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_device_base_beauty_store/BaseBeautyStore-class.html)|
|
|
621
618
|
|
|
622
619
|
## FAQs
|
|
623
620
|
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
`LiveListStore` is the `AtomicXCore`
|
|
1
|
+
`LiveListStore` is the central module in `AtomicXCore` for managing live room lists and handling all aspects of live room lifecycle, including creation, entry, and state maintenance. Use `LiveListStore` to implement robust live streaming lifecycle management in your application.
|
|
2
2
|
|
|
3
3
|
## Core Features
|
|
4
4
|
- **Get live room list**: Obtain the current list of all public live rooms, supporting load by page.
|
|
5
5
|
|
|
6
6
|
- **Live stream lifecycle management**: Provides a complete process API for creation, going live, joining, leaving, and ending live stream.
|
|
7
7
|
|
|
8
|
-
- **Live stream information update**:
|
|
8
|
+
- **Live stream information update**: Hosts can update publicly available information in the live streaming room at any time, such as cover and notice.
|
|
9
9
|
|
|
10
10
|
- **Real-time event monitoring**: Listen to key events such as live streaming end and users being kicked out.
|
|
11
11
|
|
|
@@ -14,21 +14,22 @@
|
|
|
14
14
|
## Core Concepts
|
|
15
15
|
|
|
16
16
|
Before starting integration, let's learn about several core concepts related to `LiveListStore` in the following table:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
17
|
+
|
|
18
|
+
|**Core Concepts**|**Type**|**Core Responsibilities and Description**|
|
|
19
|
+
|---------|---------|---------|
|
|
20
|
+
|[LiveInfo](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveInfo-class.html)|`class`|Represents the information model of a live room. It contains live ID (`liveID`), name (`liveName`), room owner information (`liveOwner`) and custom metadata (`metaData`).|
|
|
21
|
+
|[LiveListState](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListState-class.html)|`class`|Represents the current status of the live list module. Its core attribute `liveList` is a `ValueListenable<List<LiveInfo>>` data type, storing the fetched live stream list. `currentLive` represents the live room information where the user currently resides.|
|
|
22
|
+
|[LiveListListener](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListListener-class.html)|`class`|Represents the global event listener for a live streaming room. It includes two callbacks, `onLiveEnded` (live streaming end) and `onKickedOutOfLive` (kicked out of live), used to process key room status updates.|
|
|
23
|
+
|[LiveListStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListStore-class.html)|`class`|This is the core management class for interaction with the live list and room lifecycle. It is a Global Singleton (`shared`), responsible for all live streaming room operations such as create, join, and information update.|
|
|
23
24
|
|
|
24
25
|
## Implementation Steps
|
|
25
26
|
|
|
26
|
-
### Step 1:
|
|
27
|
-
- **Live streaming**: Refer to
|
|
27
|
+
### Step 1: Integrate the Component
|
|
28
|
+
- **Live streaming**: Refer to Quick Integration with **AtomicXCore**, and complete the feature implementation for Go Live (Host) and audience viewing.
|
|
28
29
|
|
|
29
|
-
- **Voice chat room**: Refer to
|
|
30
|
+
- **Voice chat room**: Refer to Quick Integration with **AtomicXCore**, and complete the feature implementation for Go Live (Host) and audience listening.
|
|
30
31
|
|
|
31
|
-
### Step 2: Audience
|
|
32
|
+
### Step 2: Implement Audience Entry to Live Room
|
|
32
33
|
|
|
33
34
|
Create a page to display a live broadcast list. This page uses `GridView` to layout live streaming room cards. When a user clicks a certain card, get the `liveID` of the room and navigate to the audience viewing page.
|
|
34
35
|
``` java
|
|
@@ -285,27 +286,28 @@ class YourAudiencePage extends StatelessWidget {
|
|
|
285
286
|
}
|
|
286
287
|
```
|
|
287
288
|
|
|
288
|
-
**LiveInfo
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
289
|
+
**LiveInfo Parameters**
|
|
290
|
+
|
|
291
|
+
|**Parameter Name**|**Type**|**Description**|
|
|
292
|
+
|---------|---------|---------|
|
|
293
|
+
|`liveID`|`String`|Unique identifier of the live streaming room.|
|
|
294
|
+
|`liveName`|`String`|Title of the live streaming room.|
|
|
295
|
+
|`coverURL`|`String`|Thumbnail URL of the live streaming room.|
|
|
296
|
+
|`liveOwner`|`LiveUserInfo`|Room owner's personal info.|
|
|
297
|
+
|`totalViewerCount`|`int`|Total viewers in the live streaming room.|
|
|
298
|
+
|`categoryList`|`List<int>`|Category tag list of the live streaming room.|
|
|
299
|
+
|`notice`|`String`|Announcement information in the live streaming room.|
|
|
300
|
+
|`metaData`|`Map<String, String>`|Custom metadata for complex business scenarios.|
|
|
299
301
|
|
|
300
|
-
## Advanced
|
|
302
|
+
## Advanced Usage
|
|
301
303
|
|
|
302
|
-
### Scenario
|
|
304
|
+
### Scenario 1: Categorized Live Room List
|
|
303
305
|
|
|
304
306
|
On the live square page of the App, the top section features category tags such as "Popular," "Music," and "Gaming." When users click different tags, the live stream list below dynamically filters to show only live streaming rooms of the corresponding category, thereby helping users quickly identify content of interest.
|
|
305
307
|
|
|
306
|
-
####
|
|
308
|
+
#### How It Works
|
|
307
309
|
|
|
308
|
-
The core is to use the `categoryList` property in the `LiveInfo` model. When the
|
|
310
|
+
The core is to use the `categoryList` property in the `LiveInfo` model. When the host starts live streaming and sets the category, the `LiveInfo` object returned by `fetchLiveList` will contain this classification information. After your App obtains the complete live list, just perform a simple filter on the client according to the user's selected category, then refresh the UI.
|
|
309
311
|
|
|
310
312
|
#### Sample Code
|
|
311
313
|
|
|
@@ -492,13 +494,13 @@ class _CategoryLiveListPageState extends State<CategoryLiveListPage> {
|
|
|
492
494
|
}
|
|
493
495
|
```
|
|
494
496
|
|
|
495
|
-
### Scenario
|
|
497
|
+
### Scenario 2: Show Product Information in Live Shopping
|
|
496
498
|
|
|
497
|
-
|
|
499
|
+
During e-commerce live streaming, when the host introduces a product, a product card appears below the live video for all viewers, showing the product image, name, and price in real time. When the host switches products, the product card is instantly synchronized across all audience clients.
|
|
498
500
|
|
|
499
|
-
####
|
|
501
|
+
#### How It Works
|
|
500
502
|
|
|
501
|
-
|
|
503
|
+
On the host side, set the current product's structured information (preferably in JSON format) to a custom key (for example, "product_info") using the `updateLiveMetaData` API. AtomicXCore will instantly sync this data to all viewers. On the audience side, subscribe to `LiveListState.currentLive` and listen for changes in metaData. When product_info updates, parse the JSON and refresh the product card UI.
|
|
502
504
|
|
|
503
505
|
#### Sample Code
|
|
504
506
|
``` java
|
|
@@ -539,7 +541,7 @@ class Product {
|
|
|
539
541
|
}
|
|
540
542
|
}
|
|
541
543
|
|
|
542
|
-
///
|
|
544
|
+
/// Host: Push product information
|
|
543
545
|
class HostProductController {
|
|
544
546
|
final _liveListStore = LiveListStore.shared;
|
|
545
547
|
|
|
@@ -698,16 +700,17 @@ class _ProductCardWidgetState extends State<ProductCardWidget> {
|
|
|
698
700
|
|
|
699
701
|
## API documentation
|
|
700
702
|
|
|
701
|
-
For detailed information about
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
703
|
+
For detailed information about all public interfaces, properties and methods of [LiveListStore](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListStore-class.html) and its related classes, please refer to the official API documentation of the [AtomicXCore](https://tencent-rtc.github.io/TUIKit_Flutter/index.html) framework. The related Store used in this document is as follows:
|
|
704
|
+
|
|
705
|
+
|**Store/Component**|**Feature Description**|**API Reference**|
|
|
706
|
+
|---------|---------|---------|
|
|
707
|
+
|**LiveCoreWidget**|The core view component for live video stream display and interaction: responsible for video stream rendering and view widget processing, supporting live streaming, audience mic connection, Host Connection (TUILiveKit), and other scenarios.|[API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_view_live_live_core_widget/LiveCoreWidget-class.html)|
|
|
708
|
+
|**LiveCoreController**|Controller for LiveCoreWidget: used to set up live streaming ID, control preview, and perform other operations.|[API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_view_live_live_core_widget/LiveCoreController-class.html)|
|
|
709
|
+
|**LiveListStore**|Full lifecycle management of live streaming room: create/join/leave/terminate room, query room list, modify live information (name, notice), listen to live streaming status (for example being kicked out, ended).|[API documentation](https://tencent-rtc.github.io/TUIKit_Flutter/api_live_live_list_store/LiveListStore-class.html)|
|
|
707
710
|
|
|
708
711
|
## FAQs
|
|
709
712
|
|
|
710
|
-
### What
|
|
713
|
+
### What restrictions and rules apply to updateLiveMetaData?
|
|
711
714
|
|
|
712
715
|
To ensure system stability and efficiency, the usage of `metaData` follows the following rules:
|
|
713
716
|
- **Permission**: Only the room owner and admin can call the API `updateLiveMetaData`. General audience has no permission.
|
|
@@ -720,4 +723,4 @@ To ensure system stability and efficiency, the usage of `metaData` follows the f
|
|
|
720
723
|
|
|
721
724
|
- The total size of ALL values in a single room is no more than **16KB**.
|
|
722
725
|
|
|
723
|
-
- **Conflict
|
|
726
|
+
- **Conflict Handling**: The update mechanism for metaData is "last write wins." If multiple administrators modify the same key in quick succession, the latest change is applied. To avoid conflicts, design your business logic so that only one person modifies a given key at a time.
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
- **Room Management**: The host or administrator can remove specific viewers from the live room.
|
|
13
13
|
|
|
14
14
|
## Core Concepts
|
|
15
|
-
|
|
|
15
|
+
| <strong>Core Concept</strong> | <strong>Type</strong> | <strong>Core Responsibilities & Description</strong> |
|
|
16
16
|
| --- | --- | --- |
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
17
|
+
| <code>LiveUserInfo</code> | <code>class</code> | - Data model representing a viewer.<br>- Contains basic profile information such as userID, userName, and avatarURL. |
|
|
18
|
+
| <code>LiveAudienceState</code> | <code>struct</code> | - State container for the audience module.<br>- Exposes <code>audienceList</code> (StateFlow) for the real-time user list and <code>audienceCount</code> for the total viewer count. |
|
|
19
|
+
| <code>LiveAudienceEvent</code> | <code>enum</code> | - Event listener for audience changes.<br>- Provides callbacks like <code>.onAudienceJoined</code> and<code> .onAudienceLeft</code> to handle incremental list updates. |
|
|
20
|
+
| <code>LiveAudienceStore</code> | <code>class</code> | - Primary interface for audience management.<br>- Used to fetch list snapshots, perform admin operations (e.g., kicking users), and subscribe to real-time events. |
|
|
21
21
|
|
|
22
22
|
## Implementation
|
|
23
23
|
|
|
@@ -235,11 +235,12 @@ When a new audience member enters the live room, a welcome message is automatica
|
|
|
235
235
|
## API Documentation
|
|
236
236
|
|
|
237
237
|
For detailed information on all public interfaces, properties, and methods of [LiveAudienceStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveaudiencestore) and its related classes, refer to the official API documentation included with the [AtomicX Core](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) framework. The relevant Stores used in this document are as follows:
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
|
242
|
-
|
|
|
238
|
+
|
|
239
|
+
|**Store/Component**|**Feature Description**|**API Documentation**|
|
|
240
|
+
|---------|---------|---------|
|
|
241
|
+
|LiveCoreView|Core view component for live video stream display and interaction: responsible for video stream rendering and view widget handling, supporting scenarios such as host streaming, audience co-hosting, and host-to-host connection.|[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/livecoreview)|
|
|
242
|
+
|LiveAudienceStore|Audience management: obtain real-time audience list (ID / name / avatar), count audience numbers, and listen for audience join/leave events.|[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveaudiencestore)|
|
|
243
|
+
|BarrageStore|Barrage feature: send text/custom barrage, maintain barrage list, and listen to barrage status in real time.|[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/barragestore)|
|
|
243
244
|
|
|
244
245
|
## FAQs
|
|
245
246
|
|