@tencentcloud/sdk-mcp 1.6.4 → 1.6.6
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/knowledge/build-index.js +1 -1
- package/knowledge/chunker.js +81 -52
- package/knowledge/path-meta.js +181 -21
- package/knowledge/search/exact-lookup.js +245 -43
- package/knowledge/search/filter-pool.js +73 -19
- package/knowledge/search/product-scope-intent.js +2 -2
- package/knowledge/search/requires-framework.js +1 -1
- package/knowledge/search/search-knowledge.js +246 -60
- package/package.json +1 -1
- package/resource/_schema/feature-aliases.yaml +1 -0
- package/resource/integration/callkit/preset/android/integration.md +3 -5
- package/resource/integration/callkit/preset/flutter/integration.md +2 -3
- package/resource/integration/callkit/preset/ios/integration.md +2 -5
- package/resource/integration/callkit/preset/react/integration.md +12 -26
- package/resource/integration/callkit/preset/vue/integration.md +17 -33
- package/resource/integration/chat/preset/android/integration.md +44 -14
- package/resource/integration/chat/preset/flutter/integration.md +54 -13
- package/resource/integration/chat/preset/ios/integration.md +42 -6
- package/resource/integration/chat/preset/react/integration.md +30 -28
- package/resource/integration/chat/preset/uni-app/integration.md +101 -40
- package/resource/integration/chat/preset/vue/integration.md +62 -28
- package/resource/integration/livekit/preset/live/android/live-audience-integration.md +133 -0
- package/resource/integration/livekit/preset/live/android/live-host-integration.md +225 -0
- package/resource/integration/livekit/preset/live/android/live-list-integration.md +278 -0
- package/resource/integration/livekit/preset/live/android/prepare-integration.md +271 -0
- package/resource/integration/livekit/preset/live/ios/live-audience-integration.md +207 -0
- package/resource/integration/livekit/preset/live/ios/live-host-integration.md +358 -0
- package/resource/integration/livekit/preset/live/ios/live-list-integration.md +246 -0
- package/resource/integration/livekit/preset/live/ios/prepare-integration.md +218 -0
- package/resource/integration/livekit/preset/live/vue/live-list-integration.md +4 -7
- package/resource/integration/livekit/preset/live/vue/live-player-desk-integration.md +5 -12
- package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +4 -11
- package/resource/integration/livekit/preset/live/vue/live-pusher-integration.md +250 -482
- package/resource/integration/roomkit/preset/vue/integration.md +399 -106
- package/resource/knowledge/callkit/best-practice/web/callengine-invitation.md +80 -0
- package/resource/knowledge/callkit/best-practice/web/callengine-log-control.md +20 -0
- package/resource/knowledge/callkit/best-practice/web/callkit-call-vs-calls.md +116 -0
- package/resource/knowledge/callkit/core-sdk/android/answer-call.md +11 -15
- package/resource/knowledge/callkit/core-sdk/android/make-call.md +10 -13
- package/resource/knowledge/callkit/core-sdk/android/offline-push.md +2 -4
- package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +10 -17
- package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +11 -17
- package/resource/knowledge/callkit/core-sdk/flutter/offline-push.md +11 -20
- package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +10 -15
- package/resource/knowledge/callkit/core-sdk/ios/make-call.md +9 -14
- package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +12 -18
- package/resource/knowledge/callkit/core-sdk/miniprogram/call-engine.md +390 -0
- package/resource/knowledge/callkit/core-sdk/miniprogram/call-event.md +317 -0
- package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +16 -22
- package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +17 -23
- package/resource/knowledge/callkit/core-sdk/web/call-engine.md +39 -0
- package/resource/knowledge/callkit/core-sdk/web/call-event.md +341 -0
- package/resource/knowledge/callkit/core-sdk/web/callengine-api-overview.md +39 -0
- package/resource/knowledge/callkit/faq/android.md +1 -5
- package/resource/knowledge/callkit/faq/common.md +10 -12
- package/resource/knowledge/callkit/faq/ios.md +5 -7
- package/resource/knowledge/callkit/faq/uniapp-app.md +7 -7
- package/resource/knowledge/callkit/faq/uniapp-miniprogram.md +9 -12
- package/resource/knowledge/callkit/faq/web.md +2 -12
- package/resource/knowledge/callkit/preset/android/api.md +5 -8
- package/resource/knowledge/callkit/preset/ios/api.md +4 -6
- package/resource/knowledge/callkit/preset/miniprogram/api.md +295 -0
- package/resource/knowledge/callkit/preset/react/api.md +622 -0
- package/resource/knowledge/callkit/preset/react/uikit-api-reference.md +475 -0
- package/resource/knowledge/callkit/preset/vue/api.md +622 -0
- package/resource/knowledge/callkit/preset/vue/uikit-api-reference.md +587 -0
- package/resource/knowledge/callkit/preset/web/api.md +1 -1
- package/resource/knowledge/chat/best-practice/web/image-message-url-handling.md +16 -0
- package/resource/knowledge/chat/preset/android/features/chat-setting.md +1 -1
- package/resource/knowledge/chat/preset/android/features/conversation-list.md +0 -1
- package/resource/knowledge/chat/preset/android/features/language.md +2 -4
- package/resource/knowledge/chat/preset/android/features/message-input.md +1 -1
- package/resource/knowledge/chat/preset/android/features/message-list.md +1 -2
- package/resource/knowledge/chat/preset/android/features/search.md +0 -1
- package/resource/knowledge/chat/preset/android/features/theme.md +1 -1
- package/resource/knowledge/chat/preset/android-view/integration.md +35 -10
- package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +0 -1
- package/resource/knowledge/chat/preset/flutter/features/language.md +1 -1
- package/resource/knowledge/chat/preset/flutter/features/message-list.md +0 -1
- package/resource/knowledge/chat/preset/flutter/features/search.md +4 -5
- package/resource/knowledge/chat/preset/flutter/features/theme.md +1 -1
- package/resource/knowledge/chat/preset/ios/features/chat-setting.md +1 -1
- package/resource/knowledge/chat/preset/ios/features/conversation-list.md +0 -1
- package/resource/knowledge/chat/preset/ios/features/language.md +2 -5
- package/resource/knowledge/chat/preset/ios/features/message-list.md +0 -1
- package/resource/knowledge/chat/preset/ios/features/search.md +0 -1
- package/resource/knowledge/chat/preset/ios/features/theme.md +1 -1
- package/resource/knowledge/chat/preset/ios-uikit/integration.md +57 -166
- package/resource/knowledge/chat/preset/react/features/chat-setting.md +0 -1
- package/resource/knowledge/chat/preset/react/features/conversation-actions.md +3 -3
- package/resource/knowledge/chat/preset/react/features/conversation-list.md +3 -3
- package/resource/knowledge/chat/preset/react/features/conversation-preview.md +1 -1
- package/resource/knowledge/chat/preset/react/features/message-input.md +2 -3
- package/resource/knowledge/chat/preset/react/features/search.md +0 -1
- package/resource/knowledge/chat/preset/vue/features/chat-header.md +1 -1
- package/resource/knowledge/chat/preset/vue/features/chat-setting.md +3 -4
- package/resource/knowledge/chat/preset/vue/features/conversation-list.md +4 -4
- package/resource/knowledge/chat/preset/vue/features/conversation-preview.md +1 -1
- package/resource/knowledge/chat/preset/vue/features/message-input.md +2 -2
- package/resource/knowledge/chat/preset/vue/features/message-list.md +2 -2
- package/resource/knowledge/chat/preset/vue/features/search.md +0 -1
- package/resource/knowledge/chat/preset/vue/features/theme.md +4 -4
- package/resource/knowledge/chat/urls/sdk/android.md +3 -3
- package/resource/knowledge/chat/urls/sdk/flutter.md +3 -3
- package/resource/knowledge/chat/urls/sdk/ios.md +3 -3
- package/resource/knowledge/chat/urls/sdk/web.md +3 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +0 -7
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +2 -5
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +12 -15
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CameraView.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoGuestStore.md +0 -5
- package/resource/knowledge/livekit/core-sdk/api-reference/android/CoHostStore.md +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/android/DeviceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/android/GiftStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LikeStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveAudienceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveCoreView.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LiveSeatStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +1 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/AudioEffectStore.md +0 -7
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +3 -6
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +12 -15
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoGuestStore.md +0 -5
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/CoHostStore.md +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/DeviceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LikeStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveCoreView.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +1 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/AudioEffectStore.md +0 -7
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BarrageStore.md +2 -5
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +3 -6
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoGuestStore.md +0 -5
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/CoHostStore.md +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/DeviceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/GiftStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LikeStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveAudienceStore.md +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveCoreView.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LiveSeatStore.md +2 -4
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +1 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/vue/capability-matrix.md +82 -0
- package/resource/knowledge/livekit/core-sdk/{voice/android/voice-audio-effect.md → features/android/audio-effect.md} +2 -4
- package/resource/knowledge/livekit/core-sdk/{live/android/live-barrage.md → features/android/barrage.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{live/android/live-base-beauty.md → features/android/base-beauty.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{voice/android/voice-gift.md → features/android/gift.md} +2 -3
- package/resource/knowledge/livekit/core-sdk/{live/android/live-live-list.md → features/android/live-list.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{live/flutter/live-audio-effect.md → features/flutter/audio-effect.md} +0 -2
- package/resource/knowledge/livekit/core-sdk/{voice/flutter/voice-barrage.md → features/flutter/barrage.md} +3 -3
- package/resource/knowledge/livekit/core-sdk/{voice/flutter/voice-gift.md → features/flutter/gift.md} +2 -2
- package/resource/knowledge/livekit/core-sdk/{voice/flutter/voice-room-list.md → features/flutter/live-list.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-audience-list.md → features/ios/audience-list.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-audio-effect.md → features/ios/audio-effect.md} +1 -3
- package/resource/knowledge/livekit/core-sdk/{voice/ios/voice-barrage.md → features/ios/barrage.md} +2 -2
- package/resource/knowledge/livekit/core-sdk/{live/ios/live-base-beauty.md → features/ios/base-beauty.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/{live/ios/live-gift.md → features/ios/gift.md} +8 -9
- package/resource/knowledge/livekit/core-sdk/{live/ios/live-live-list.md → features/ios/live-list.md} +2 -2
- package/resource/knowledge/livekit/core-sdk/{voice/uni-app/voice-audio-effect.md → features/uni-app/audio-effect.md} +2 -3
- package/resource/knowledge/livekit/core-sdk/{voice/uni-app/voice-barrage.md → features/uni-app/barrage.md} +2 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/base-beauty.md +145 -0
- package/resource/knowledge/livekit/core-sdk/{voice/uni-app/voice-gift.md → features/uni-app/gift.md} +6 -7
- package/resource/knowledge/livekit/core-sdk/{voice/uni-app/voice-room-list.md → features/uni-app/live-list.md} +1 -1
- package/resource/knowledge/livekit/core-sdk/live/android/{live-co-guest-interaction.md → co-guest-interaction.md} +2 -3
- package/resource/knowledge/livekit/core-sdk/live/android/{live-host-interaction.md → host-interaction.md} +2 -4
- package/resource/knowledge/livekit/core-sdk/live/android/{live-integration.md → integration.md} +6 -9
- package/resource/knowledge/livekit/core-sdk/live/flutter/{live-host-interaction.md → host-interaction.md} +1 -3
- package/resource/knowledge/livekit/core-sdk/live/flutter/{live-integration.md → integration.md} +1 -6
- package/resource/knowledge/livekit/core-sdk/live/ios/{live-co-guest-interaction.md → co-guest-interaction.md} +2 -3
- package/resource/knowledge/livekit/core-sdk/live/ios/{live-host-interaction.md → host-interaction.md} +3 -5
- package/resource/knowledge/livekit/core-sdk/live/ios/{live-integration.md → integration.md} +7 -10
- package/resource/knowledge/livekit/core-sdk/live/uni-app/co-guest-interaction.md +561 -0
- package/resource/knowledge/livekit/core-sdk/live/uni-app/host-interaction.md +323 -0
- package/resource/knowledge/livekit/core-sdk/live/uni-app/integration.md +312 -0
- package/resource/knowledge/livekit/core-sdk/voice/android/{voice-co-guest-interaction.md → co-guest-interaction.md} +3 -3
- package/resource/knowledge/livekit/core-sdk/voice/android/{voice-host-interaction.md → host-interaction.md} +2 -4
- package/resource/knowledge/livekit/core-sdk/voice/android/{voice-integration.md → integration.md} +11 -14
- package/resource/knowledge/livekit/core-sdk/voice/flutter/{voice-co-guest-interaction.md → co-guest-interaction.md} +0 -1
- package/resource/knowledge/livekit/core-sdk/voice/flutter/{voice-integration.md → integration.md} +1 -4
- package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-co-guest-interaction.md → co-guest-interaction.md} +3 -3
- package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-host-interaction.md → host-interaction.md} +2 -4
- package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-integration.md → integration.md} +7 -10
- package/resource/knowledge/livekit/core-sdk/voice/uni-app/{voice-co-guest-interaction.md → co-guest-interaction.md} +6 -6
- package/resource/knowledge/livekit/core-sdk/voice/uni-app/{voice-integration.md → integration.md} +6 -7
- package/resource/knowledge/livekit/preset/live/vue/features/barrage.md +2 -3
- package/resource/knowledge/livekit/preset/live/vue/features/live-audience-list.md +1 -1
- package/resource/knowledge/livekit/preset/live/vue/features/live-view.md +1 -1
- package/resource/knowledge/push/api-reference/android.md +337 -0
- package/resource/knowledge/push/api-reference/donut.md +190 -0
- package/resource/knowledge/push/api-reference/flutter.md +176 -0
- package/resource/knowledge/push/api-reference/harmonyos.md +140 -0
- package/resource/knowledge/push/api-reference/ios.md +537 -0
- package/resource/knowledge/push/api-reference/react-native.md +154 -0
- package/resource/knowledge/push/api-reference/uni-app.md +148 -0
- package/resource/knowledge/push/api-reference/unity.md +119 -0
- package/resource/knowledge/push/api-reference/unreal-engine.md +123 -0
- package/resource/knowledge/push/config/android/fcm.md +1 -8
- package/resource/knowledge/push/config/android/honor.md +3 -7
- package/resource/knowledge/push/config/android/huawei.md +0 -5
- package/resource/knowledge/push/config/android/meizu.md +0 -5
- package/resource/knowledge/push/config/android/oppo.md +0 -4
- package/resource/knowledge/push/config/android/vivo.md +0 -4
- package/resource/knowledge/push/config/android/xiaomi.md +0 -2
- package/resource/knowledge/push/config/donut.md +33 -46
- package/resource/knowledge/push/config/harmonyos.md +6 -9
- package/resource/knowledge/push/config/ios.md +2 -9
- package/resource/knowledge/push/config/react-native.md +17 -25
- package/resource/knowledge/push/config/unity.md +16 -24
- package/resource/knowledge/push/config/unreal-engine.md +16 -24
- package/resource/knowledge/push/integration/android.md +21 -21
- package/resource/knowledge/push/integration/donut.md +24 -34
- package/resource/knowledge/push/integration/flutter.md +12 -1
- package/resource/knowledge/push/integration/harmonyos.md +2 -1
- package/resource/knowledge/push/integration/ios.md +16 -10
- package/resource/knowledge/push/integration/react-native.md +10 -14
- package/resource/knowledge/push/integration/uni-app.md +10 -6
- package/resource/knowledge/push/integration/unity.md +19 -22
- package/resource/knowledge/push/integration/unreal-engine.md +7 -9
- package/resource/knowledge/push/overview/prepare.md +2 -2
- package/resource/knowledge/roomkit/core-sdk/android/capability-matrix.md +46 -0
- package/resource/knowledge/roomkit/core-sdk/android/unsupported-features.md +82 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/capability-matrix.md +46 -0
- package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +1 -1
- package/resource/knowledge/roomkit/core-sdk/flutter/unsupported-features.md +82 -0
- package/resource/knowledge/roomkit/core-sdk/ios/capability-matrix.md +46 -0
- package/resource/knowledge/roomkit/core-sdk/ios/room-state.md +1 -1
- package/resource/knowledge/roomkit/core-sdk/ios/unsupported-features.md +82 -0
- package/resource/knowledge/roomkit/core-sdk/vue/call-user-to-room.md +1 -1
- package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +0 -4
- package/resource/knowledge/roomkit/core-sdk/vue/free-beauty-panel.md +2 -5
- package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +0 -3
- package/resource/knowledge/roomkit/core-sdk/vue/room-participant-state.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +2 -6
- package/resource/knowledge/roomkit/core-sdk/vue/room-view.md +0 -1
- package/resource/knowledge/roomkit/core-sdk/vue/schedule-room.md +1 -1
- package/resource/knowledge/roomkit/core-sdk/vue/screen-share.md +2 -4
- package/resource/knowledge/roomkit/core-sdk/vue/virtual-background.md +2 -3
- package/resource/knowledge/roomkit/preset/android/integration.md +14 -16
- package/resource/knowledge/roomkit/preset/flutter/integration.md +9 -17
- package/resource/knowledge/roomkit/preset/ios/integration.md +9 -17
- package/resource/knowledge/roomkit/preset/react/integration.md +0 -4
- package/resource/knowledge/trtc/android/TRTCCloud.md +97 -180
- package/resource/knowledge/trtc/android/TRTCCloudDef.md +20 -20
- package/resource/knowledge/trtc/android/TRTCCloudListener.md +43 -77
- package/resource/knowledge/trtc/android/TRTCStatistics.md +1 -1
- package/resource/knowledge/trtc/android/TXAudioEffectManager.md +4 -24
- package/resource/knowledge/trtc/android/TXDeviceManager.md +2 -2
- package/resource/knowledge/trtc/android/TXLiteAVCode.md +1 -1
- package/resource/knowledge/trtc/c++/ITRTCCloud.md +96 -189
- package/resource/knowledge/trtc/c++/ITRTCStatistics.md +1 -1
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +1 -21
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +4 -6
- package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +42 -76
- package/resource/knowledge/trtc/c++/TRTCTypeDef.md +18 -19
- package/resource/knowledge/trtc/c++/TXLiteAVCode.md +1 -1
- package/resource/knowledge/trtc/ios/TRTCCloud.md +95 -181
- package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +43 -78
- package/resource/knowledge/trtc/ios/TRTCStatistics.md +1 -1
- package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +1 -20
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +4 -6
- package/resource/knowledge/trtc/ios/TXLiteAVCode.md +1 -1
- package/resource/knowledge/trtc/ios/TXLiveSDKTypeDef.md +20 -20
- package/server.js +2 -2
- package/tools/common/finalize_answer.js +1 -1
- package/tools/common/present_framework_choice.js +2 -2
- package/tools/common/search_trtc_knowledge.js +3 -3
- package/tools/common/submit_feedback.js +1 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +60 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +1 -1
- package/tools/definitions/present_framework_choice_def.js +2 -2
- package/tools/definitions/search_trtc_knowledge_def.js +5 -5
- package/tools/index.js +2 -0
- package/tools/live/get_native_live_uikit_integration.js +69 -0
- package/tools/live/get_native_livekit_core_integration.js +6 -6
- package/utils/report-cls-client.js +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/index/component-slugs.json +0 -1
- package/resource/index/doc-source-urls.json +0 -1
- package/resource/index/manifest.json +0 -1
- package/resource/knowledge/livekit/core-sdk/live/android/live-audio-effect.md +0 -229
- package/resource/knowledge/livekit/core-sdk/live/android/live-gift.md +0 -459
- package/resource/knowledge/livekit/core-sdk/live/flutter/live-barrage.md +0 -506
- package/resource/knowledge/livekit/core-sdk/live/flutter/live-gift.md +0 -427
- package/resource/knowledge/livekit/core-sdk/live/flutter/live-live-list.md +0 -726
- package/resource/knowledge/livekit/core-sdk/live/ios/live-audience-list.md +0 -265
- package/resource/knowledge/livekit/core-sdk/live/ios/live-audio-effect.md +0 -214
- package/resource/knowledge/livekit/core-sdk/live/ios/live-barrage.md +0 -427
- package/resource/knowledge/livekit/core-sdk/voice/android/voice-audience-list.md +0 -272
- package/resource/knowledge/livekit/core-sdk/voice/android/voice-barrage.md +0 -486
- package/resource/knowledge/livekit/core-sdk/voice/android/voice-room-list.md +0 -523
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audience-list.md +0 -262
- package/resource/knowledge/livekit/core-sdk/voice/flutter/voice-audio-effect.md +0 -600
- package/resource/knowledge/livekit/core-sdk/voice/ios/voice-gift.md +0 -411
- package/resource/knowledge/livekit/core-sdk/voice/ios/voice-room-list.md +0 -404
- /package/resource/knowledge/livekit/core-sdk/api-reference/{web → vue}/index.md +0 -0
- /package/resource/knowledge/livekit/core-sdk/{live/android/live-audience-list.md → features/android/audience-list.md} +0 -0
- /package/resource/knowledge/livekit/core-sdk/{live/flutter/live-audience-list.md → features/flutter/audience-list.md} +0 -0
- /package/resource/knowledge/livekit/core-sdk/{live/flutter/live-base-beauty.md → features/flutter/base-beauty.md} +0 -0
- /package/resource/knowledge/livekit/core-sdk/{voice/uni-app/voice-audience-list.md → features/uni-app/audience-list.md} +0 -0
- /package/resource/knowledge/livekit/core-sdk/live/flutter/{live-co-guest-interaction.md → co-guest-interaction.md} +0 -0
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
|
|
24
24
|
主播需要拉取当前的直播间列表,从中选择一个目标房间的主播发起连线或 PK。
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
**实现方式:** 调用 `LiveListStore.shared().fetchLiveList`。
|
|
27
27
|
|
|
28
28
|
> **注意:**
|
|
29
29
|
>
|
|
@@ -58,7 +58,7 @@ fun fetchLiveListForCoHost() {
|
|
|
58
58
|
|
|
59
59
|
> **说明:**
|
|
60
60
|
>
|
|
61
|
-
> 1. AtomicXCore最大支持 **9** 个房间互相连线,每个房间支持 **50
|
|
61
|
+
> 1. AtomicXCore 最大支持 **9** 个房间互相连线,每个房间支持 **50** 路用户。
|
|
62
62
|
> 2. 该接口支持批量发起邀请,您可以按需使用;单个直播间是否邀请成功,您需要监听 `onSuccess` 回调并解析 `code` 枚举值是否为 `0`;
|
|
63
63
|
> 3. 该接口支持扩展字段,邀请发送成功后,该字段会随着 `CoHostListener` 的 `onCoHostRequestReceived` 回调通知给对端主播,您可以在这个字段中携带 “**是否立即开始 PK 对战**” 等信息,来实现自己的特殊业务。
|
|
64
64
|
|
|
@@ -323,7 +323,6 @@ AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历
|
|
|
323
323
|
|
|
324
324
|
> **说明:**
|
|
325
325
|
>
|
|
326
|
-
|
|
327
326
|
> 该功能需要同时使用 CoHostStore 和 BattleStore,并且借助 BattleConfig 的 needResponse 为 false 完成。
|
|
328
327
|
>
|
|
329
328
|
|
|
@@ -430,7 +429,6 @@ override fun onCoHostRequestReceived(inviter: SeatUserInfo, extensionInfo: Strin
|
|
|
430
429
|
|
|
431
430
|
> **重要说明:**
|
|
432
431
|
>
|
|
433
|
-
|
|
434
432
|
> LiveKit 后台的 PK 分数系统采用纯数值计算和累加机制,所以您需要根据自身的运营策略和业务需求,调用更新接口前完成 PK 分数的计算,您可以参考以下的 PK 分数计算示例:
|
|
435
433
|
>
|
|
436
434
|
|
package/resource/knowledge/livekit/core-sdk/voice/android/{voice-integration.md → integration.md}
RENAMED
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
| <strong>核心概念</strong> | <strong>类型</strong> | <strong>核心职责与描述</strong> |
|
|
7
7
|
| --- | --- | --- |
|
|
8
8
|
| <code>LiveSeatStore</code> | <code>abstract class</code> | 麦位管理核心,负责管理房间内的所有麦位信息和麦位相关操作。<br>通过 <code>liveSeatState.seatList</code> 暴露实时的麦位列表数据流。 |
|
|
9
|
-
| <code>LiveSeatState</code> | <code>data class</code> | 代表麦位的当前状态。<br>-
|
|
10
|
-
| <code>SeatInfo</code> | <code>data class</code> |
|
|
9
|
+
| <code>LiveSeatState</code> | <code>data class</code> | 代表麦位的当前状态。<br>- <code>seatList</code> :是一个 <code>StateFlow</code>,存储了麦位列表的实时状态。<br>- <code>speakingUsers</code> :则代表当前正在说话的人和对应的音量。 |
|
|
10
|
+
| <code>SeatInfo</code> | <code>data class</code> | 单个麦位的数据模型。 <code>LiveSeatStore</code> 所推送的麦位列表(<code>seatList</code>)就是由多个 <code>SeatInfo</code> 对象组成的。<br>关键字段:<br>- <code>index</code>:麦位的索引(位置)。<br>- <code>isLocked</code> :麦位是否被锁定。<br>- <code>userInfo</code>: 麦位上的用户信息。如果麦位为空,此字段也为空对象。 |
|
|
11
11
|
| <code>SeatUserInfo</code> | <code>data class</code> | 麦上用户的详细数据模型。 当一个用户成功上麦后,<code>SeatInfo</code> 中的 <code>userInfo</code> 字段就会被填充为此用户。<br>关键字段:<br>- <code>userID</code>: 用户的唯一 ID。<br>- <code>userName</code>: 用户的昵称。<br>- <code>avatarURL</code>: 用户的头像 URL。<br>- <code>microphoneStatus</code>: 麦克风状态(开/关)。<br>- <code>cameraStatus</code>: 摄像头状态(开/关)。 |
|
|
12
12
|
|
|
13
13
|
## 准备工作
|
|
@@ -31,11 +31,10 @@ dependencies {
|
|
|
31
31
|
|
|
32
32
|
### 步骤3:实现登录逻辑
|
|
33
33
|
|
|
34
|
-
在项目中调用 `LoginStore.shared.login`
|
|
34
|
+
在项目中调用 `LoginStore.shared.login` 完成登录,**这是使用** `AtomicXCore` **所有功能的关键前提**。
|
|
35
35
|
|
|
36
36
|
> **重要:**
|
|
37
37
|
>
|
|
38
|
-
|
|
39
38
|
> 推荐在您 `App` 自身的用户账户登录成功后,再调用 `LoginStore.shared.login`,以确保登录业务逻辑的清晰和一致。
|
|
40
39
|
>
|
|
41
40
|
|
|
@@ -75,7 +74,7 @@ class MainActivity : AppCompatActivity() {
|
|
|
75
74
|
| <strong>参数</strong> | <strong>类型</strong> | <strong>说明</strong> |
|
|
76
75
|
| --- | --- | --- |
|
|
77
76
|
| <code>sdkAppId</code> | <code>Int</code> | 从 <a href="https://console.cloud.tencent.com/trtc">控制台</a> 获取,通常是以 <code>140</code> 或 <code>160</code> 开头的10位整数。 |
|
|
78
|
-
| <code>userID</code> | <code>String</code> | 当前用户的唯一 <code>ID</code>,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong
|
|
77
|
+
| <code>userID</code> | <code>String</code> | 当前用户的唯一 <code>ID</code>,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong> <code>1</code>、<code>123</code> <strong>等简单 ID</strong>。 |
|
|
79
78
|
| <code>userSig</code> | <code>String</code> | 用于腾讯云鉴权的票据。请注意:<br>- 开发环境:您可以采用本地 <code>GenerateTestUserSig.genTestSig</code> 函数生成 <code>userSig</code> 或者 通过 <a href="https://console.cloud.tencent.com/im/tool-usersig">UserSig 辅助工具</a> 生成临时的 <code>UserSig</code>。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 <code>UserSig</code> 的方式。详细信息请参考 <a href="https://cloud.tencent.com/document/product/647/17275">服务端生成 UserSig</a>。<br>更多信息请参见 <a href="https://cloud.tencent.com/document/product/647/17275">如何计算及使用 UserSig</a>。 |
|
|
80
79
|
|
|
81
80
|
## 搭建基础语聊房
|
|
@@ -84,7 +83,7 @@ class MainActivity : AppCompatActivity() {
|
|
|
84
83
|
|
|
85
84
|
房主开播流程如下,您只需执行以下几步操作,即可快速搭建一个语聊房。
|
|
86
85
|
|
|
87
|
-
#### **1.
|
|
86
|
+
#### **1. 初始化麦位** `Store`
|
|
88
87
|
|
|
89
88
|
在您的房主 `Activity` 中,创建一个 `LiveSeatStore` 实例。您需要监听 `liveSeatState.seatList` 的变化,以实时获取麦位数据来渲染您的 `UI`。
|
|
90
89
|
``` java
|
|
@@ -200,7 +199,7 @@ class YourAnchorActivity : AppCompatActivity() {
|
|
|
200
199
|
}
|
|
201
200
|
```
|
|
202
201
|
|
|
203
|
-
`LiveInfo
|
|
202
|
+
`LiveInfo` **参数说明**
|
|
204
203
|
| <strong>参数名</strong> | <strong>类型</strong> | <strong>属性</strong> | <strong>描述</strong> |
|
|
205
204
|
| --- | --- | --- | --- |
|
|
206
205
|
| <code>liveID</code> | <code>String</code> | 必填 | 直播间的唯一标识符。 |
|
|
@@ -218,11 +217,10 @@ class YourAnchorActivity : AppCompatActivity() {
|
|
|
218
217
|
|
|
219
218
|
#### **4. 构建麦位 UI 界面**
|
|
220
219
|
|
|
221
|
-
> **提示:**
|
|
222
|
-
>
|
|
223
|
-
|
|
224
|
-
>
|
|
225
|
-
>
|
|
220
|
+
> **提示:**
|
|
221
|
+
>
|
|
222
|
+
> 麦位 `UI` 效果的业务代码,您也可以参考 `TUILiveKit` 开源项目中的 [SeatGridView.kt](https://github.com/Tencent-RTC/TUILiveKit/blob/main/Android/tuilivekit/src/main/java/com/trtc/uikit/livekit/voiceroomcore/SeatGridView.kt) 文件来了解完整的实现逻辑。
|
|
223
|
+
>
|
|
226
224
|
|
|
227
225
|
通过 LiveSeatStore 实例,监听 liveSeatState.seatList 的变化,以实时获取麦位数据来渲染您的 UI。您可以在 Activity 中(例如 YourAnchorActivity 或 YourAudienceActivity)通过以下方式监听数据:
|
|
228
226
|
``` java
|
|
@@ -294,7 +292,7 @@ class YourAnchorActivity : AppCompatActivity() {
|
|
|
294
292
|
|
|
295
293
|
观众进房流程如下,通过简单几步操作,即可实现观众进入语聊房。
|
|
296
294
|
|
|
297
|
-
#### **1.
|
|
295
|
+
#### **1. 初始化麦位** `Store`
|
|
298
296
|
|
|
299
297
|
在您的观众 `Activity` 中,创建 `LiveSeatStore` 实例,并监听 `liveSeatState.seatList` 的变化,以渲染麦位 `UI`。
|
|
300
298
|
``` java
|
|
@@ -429,7 +427,6 @@ class YourAudienceActivity : AppCompatActivity() {
|
|
|
429
427
|
|
|
430
428
|
> **提示:**
|
|
431
429
|
>
|
|
432
|
-
|
|
433
430
|
> 麦上用户说话时展示波浪动画效果,您也可以参考 `TUILiveKit` 开源项目中的 [SeatGridView.kt](https://github.com/Tencent-RTC/TUILiveKit/blob/main/Android/tuilivekit/src/main/java/com/trtc/uikit/livekit/voiceroomcore/SeatGridView.kt) 文件来了解完整的实现逻辑。
|
|
434
431
|
>
|
|
435
432
|
|
package/resource/knowledge/livekit/core-sdk/voice/flutter/{voice-integration.md → integration.md}
RENAMED
|
@@ -59,11 +59,10 @@ end
|
|
|
59
59
|
|
|
60
60
|
### 步骤3:实现登录逻辑
|
|
61
61
|
|
|
62
|
-
在项目中调用 `LoginStore.shared.login`
|
|
62
|
+
在项目中调用 `LoginStore.shared.login` 完成登录,**这是使用** `AtomicXCore` **所有功能的关键前提**。
|
|
63
63
|
|
|
64
64
|
> **重要:**
|
|
65
65
|
>
|
|
66
|
-
|
|
67
66
|
> 推荐在您 App 自身的用户账户登录成功后,再调用 LoginStore.shared.login,以确保登录业务逻辑的清晰和一致。
|
|
68
67
|
>
|
|
69
68
|
|
|
@@ -243,7 +242,6 @@ class _YourAnchorPageState extends State<YourAnchorPage> {
|
|
|
243
242
|
|
|
244
243
|
> **提示:**
|
|
245
244
|
>
|
|
246
|
-
|
|
247
245
|
> 麦位 `UI` 效果的业务代码,可参考 `TUILiveKit` 开源项目中的 [seat_grid_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/seat_grid_widget/seat_grid_widget.dart) 文件来了解完整的实现逻辑。
|
|
248
246
|
>
|
|
249
247
|
|
|
@@ -457,7 +455,6 @@ class _YourAudiencePageState extends State<YourAudiencePage> {
|
|
|
457
455
|
|
|
458
456
|
> **提示:**
|
|
459
457
|
>
|
|
460
|
-
|
|
461
458
|
> 麦上用户说话时展示波浪动画效果,可参考 `TUILiveKit` 开源项目中的 [seat_grid_widget.dart](https://github.com/Tencent-RTC/TUIKit_Flutter/blob/main/live/livekit/lib/seat_grid_widget/seat_grid_widget.dart) 文件来了解完整的实现逻辑。
|
|
462
459
|
>
|
|
463
460
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
**AtomicXCore** 提供了 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore) 和 [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore) 模块,用于管理观众连麦的完整业务流程。您无需关心复杂的状态同步和信令交互,只需调用几个简单的方法,即可为您的直播添加强大的观众与主播音视频互动功能。本文档将指导您如何使用 `CoGuestStore
|
|
1
|
+
**AtomicXCore** 提供了 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore) 和 [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore) 模块,用于管理观众连麦的完整业务流程。您无需关心复杂的状态同步和信令交互,只需调用几个简单的方法,即可为您的直播添加强大的观众与主播音视频互动功能。本文档将指导您如何使用 `CoGuestStore` 和 `LiveSeatStore` 在 iOS 应用中快速实现语音连麦功能。
|
|
2
2
|
|
|
3
3
|
## 核心场景
|
|
4
4
|
|
|
@@ -339,7 +339,7 @@ seatStore.liveSeatEventPublisher
|
|
|
339
339
|
#### 实现方式:
|
|
340
340
|
1. **踢人下麦**:主播可以调用 `kickUserOutOfSeat` 方法,强制将指定用户踢下麦位。
|
|
341
341
|
|
|
342
|
-
2. **监听事件通知**:被踢下麦的用户会收到 `CoGuestStore.guestEventPublisher
|
|
342
|
+
2. **监听事件通知**:被踢下麦的用户会收到 `CoGuestStore.guestEventPublisher` 中的 `onKickedOffSeat` 事件通知。
|
|
343
343
|
|
|
344
344
|
#### 示例代码:
|
|
345
345
|
``` swift
|
|
@@ -471,7 +471,7 @@ seatStore.moveUserToSeat(userID: "userC",
|
|
|
471
471
|
您应该订阅 `LiveSeatState` 中的 `seatList` 属性,它是一个`[SeatInfo]` 数组类型的响应式数据,每当数组变化时都会通知您重新渲染麦位列表。遍历此数组,您可以:
|
|
472
472
|
- 通过 `seatInfo.userInfo` 来获取麦位上的用户信息。
|
|
473
473
|
|
|
474
|
-
- 通过 `seatInfo.isLocked
|
|
474
|
+
- 通过 `seatInfo.isLocked` 判断麦位是否被锁定。
|
|
475
475
|
|
|
476
476
|
- 通过 `seatInfo.userInfo.microphoneStatus` 判断麦上用户的麦克风状态。
|
|
477
477
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
|
|
22
22
|
主播需要拉取当前的直播间列表,从中选择一个目标房间的主播发起连线或 PK。
|
|
23
23
|
|
|
24
|
-
|
|
24
|
+
**实现方式:** 调用 `LiveListStore.shared.fetchLiveList`。
|
|
25
25
|
|
|
26
26
|
> **注意:**
|
|
27
27
|
>
|
|
@@ -57,7 +57,7 @@ func fetchLiveListForCoHost() {
|
|
|
57
57
|
|
|
58
58
|
> **说明:**
|
|
59
59
|
>
|
|
60
|
-
> - AtomicXCore最大支持 **9** 个房间互相连线,每个房间支持 **50
|
|
60
|
+
> - AtomicXCore 最大支持 **9** 个房间互相连线,每个房间支持 **50** 路用户。
|
|
61
61
|
> - 该接口支持批量发起邀请,您可以按需使用;单个直播间是否邀请成功,您需要在 `completion` 回调中检查 `Result` 是否为`.success`。
|
|
62
62
|
> - 该接口支持扩展字段,邀请发送成功后,该字段会随着 `CoHostEventPublisher` 的 `onCoHostRequestReceived` 回调通知给对端主播,您可以在这个字段中携带 “**是否立即开始 PK 对战**” 等信息,来实现自己的特殊业务。
|
|
63
63
|
|
|
@@ -380,7 +380,6 @@ AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历
|
|
|
380
380
|
|
|
381
381
|
> **说明:**
|
|
382
382
|
>
|
|
383
|
-
|
|
384
383
|
> 该功能需要同时使用 CoHostStore 和 BattleStore,并且借助 BattleConfig 的 needResponse 为 false 完成。
|
|
385
384
|
>
|
|
386
385
|
|
|
@@ -526,7 +525,6 @@ coHostStore.coHostEventPublisher
|
|
|
526
525
|
|
|
527
526
|
> **重要说明:**
|
|
528
527
|
>
|
|
529
|
-
|
|
530
528
|
> LiveKit 后台的 PK 分数系统采用纯数值计算和累加机制,所以您需要根据自身的运营策略和业务需求,调用更新接口前完成 PK 分数的计算,您可以参考以下的 PK 分数计算示例:
|
|
531
529
|
>
|
|
532
530
|
|
package/resource/knowledge/livekit/core-sdk/voice/ios/{voice-integration.md → integration.md}
RENAMED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
| --- | --- | --- |
|
|
8
8
|
| <code>LiveSeatStore</code> | <code>class</code> | 麦位管理核心,负责管理房间内的所有麦位信息和麦位相关操作。<br>通过 <code>liveSeatState.seatList</code> 暴露实时的麦位列表数据流。 |
|
|
9
9
|
| <code>LiveSeatState</code> | <code>struct</code> | 代表麦位的当前状态。<br>- <code>seatList</code> :是一个<code>[seatInfo]</code>类型数组,存储了麦位列表的实时状态。<br>- <code>speakingUsers</code> :则代表当前正在说话的人和对应的音量。 |
|
|
10
|
-
| <code>SeatInfo</code> | <code>struct</code> |
|
|
10
|
+
| <code>SeatInfo</code> | <code>struct</code> | 单个麦位的数据模型。 <code>LiveSeatStore</code> 所推送的麦位列表(<code>seatList</code>)就是由多个 <code>SeatInfo</code> 对象组成的。<br>关键字段:<br>- <code>index</code>:麦位的索引(位置)。<br>- <code>isLocked</code> :麦位是否被锁定。<br>- <code>userInfo</code>: 麦位上的用户信息。如果麦位为空,此字段也为空对象。 |
|
|
11
11
|
| <code>SeatUserInfo</code> | <code>struct</code> | 麦上用户的详细数据模型。 当一个用户成功上麦后,<code>SeatInfo</code> 中的 <code>userInfo</code> 字段就会被填充为此用户。<br>关键字段:<br>- <code>userID</code>: 用户的唯一 ID。<br>- <code>userName</code>: 用户的昵称。<br>- <code>avatarURL</code>: 用户的头像 URL。<br>- <code>microphoneStatus</code>: 麦克风状态(开/关)。<br>- <code>cameraStatus</code>: 摄像头状态(开/关)。 |
|
|
12
12
|
|
|
13
13
|
## 准备工作
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
pod 'AtomicXCore'
|
|
26
26
|
end
|
|
27
27
|
```
|
|
28
|
-
2.
|
|
28
|
+
2. **配置工程权限:** 请在应用的 `Info.plist` 文件中添加相机和麦克风的使用权限说明。
|
|
29
29
|
|
|
30
30
|
``` ruby
|
|
31
31
|
<key>NSMicrophoneUsageDescription</key>
|
|
@@ -34,11 +34,10 @@
|
|
|
34
34
|
|
|
35
35
|
### 步骤3:实现登录逻辑
|
|
36
36
|
|
|
37
|
-
在项目中调用 `LoginStore.shared.login`
|
|
37
|
+
在项目中调用 `LoginStore.shared.login` 完成登录,**这是使用** `AtomicXCore` **所有功能的关键前提**。
|
|
38
38
|
|
|
39
39
|
> **重要:**
|
|
40
40
|
>
|
|
41
|
-
|
|
42
41
|
> 推荐在您 App 自身的用户账户登录成功后,再调用 LoginStore.shared.login,以确保登录业务逻辑的清晰和一致。
|
|
43
42
|
>
|
|
44
43
|
|
|
@@ -65,7 +64,7 @@ func application(_ application: UIApplication, didFinishLaunchingWithOptions lau
|
|
|
65
64
|
| <strong>参数</strong> | <strong>类型</strong> | <strong>说明</strong> |
|
|
66
65
|
| --- | --- | --- |
|
|
67
66
|
| sdkAppId | Int32 | 从 <a href="https://console.cloud.tencent.com/trtc">控制台</a> 获取,通常是以 <code>140</code> 或 <code>160</code> 开头的 10 位整数。 |
|
|
68
|
-
| userID | String | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong
|
|
67
|
+
| userID | String | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong> <code>1</code>、<code>123</code> <strong>等简单 ID</strong>。 |
|
|
69
68
|
| userSig | String | 用于腾讯云鉴权的票据。请注意:<br>- 开发环境:您可以采用本地 <code>GenerateTestUserSig.genTestSig</code> 函数生成 userSig 或者通过 <a href="https://console.cloud.tencent.com/im/tool-usersig">UserSig 辅助工具</a> 生成临时的 UserSig。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 UserSig 的方式。详细信息请参考 <a href="https://cloud.tencent.com/document/product/647/17275">服务端生成 UserSig</a>。<br>更多信息请参见 <a href="https://cloud.tencent.com/document/product/647/17275">如何计算及使用 UserSig</a>。 |
|
|
70
69
|
|
|
71
70
|
## 搭建基础语聊房
|
|
@@ -74,7 +73,7 @@ func application(_ application: UIApplication, didFinishLaunchingWithOptions lau
|
|
|
74
73
|
|
|
75
74
|
房主开播流程如下,您只需执行以下几步操作,即可快速搭建一个语聊房。
|
|
76
75
|
|
|
77
|
-
#### **1.
|
|
76
|
+
#### **1. 初始化麦位** `Store`
|
|
78
77
|
|
|
79
78
|
在您的房主 `ViewController` 中,创建一个 `LiveSeatStore` 实例。您需要使用 `Combine` 框架监听 `liveSeatStore.state` 的变化,以实时获取麦位数据来渲染您的 `UI`。
|
|
80
79
|
``` swift
|
|
@@ -185,7 +184,7 @@ class YourAnchorViewController: UIViewController {
|
|
|
185
184
|
}
|
|
186
185
|
```
|
|
187
186
|
|
|
188
|
-
`LiveInfo
|
|
187
|
+
`LiveInfo` **参数说明**
|
|
189
188
|
| <strong>参数名</strong> | <strong>类型</strong> | <strong>属性</strong> | <strong>描述</strong> |
|
|
190
189
|
| --- | --- | --- | --- |
|
|
191
190
|
| <code>liveID</code> | <code>String</code> | 必填 | 直播间的唯一标识符。 |
|
|
@@ -205,7 +204,6 @@ class YourAnchorViewController: UIViewController {
|
|
|
205
204
|
|
|
206
205
|
> **提示:**
|
|
207
206
|
>
|
|
208
|
-
|
|
209
207
|
> 麦位 `UI` 效果的业务代码,您也可以参考 `TUILiveKit` 开源项目中的 [SeatGridView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Component/SeatGridview/SeatGridView.swift) 文件来了解完整的实现逻辑。
|
|
210
208
|
>
|
|
211
209
|
|
|
@@ -273,7 +271,7 @@ class YourAnchorViewController: UIViewController {
|
|
|
273
271
|
|
|
274
272
|
观众进房流程如下,通过简单几步操作,即可实现观众进入语聊房。
|
|
275
273
|
|
|
276
|
-
#### **1.
|
|
274
|
+
#### **1. 初始化麦位** `Store`
|
|
277
275
|
|
|
278
276
|
在您的观众 `ViewController` 中,创建 `LiveSeatStore` 实例,并监听 `state.seatList` 的变化,以渲染麦位 `UI`。
|
|
279
277
|
``` swift
|
|
@@ -397,7 +395,6 @@ class YourAudienceViewController: UIViewController {
|
|
|
397
395
|
|
|
398
396
|
> **提示:**
|
|
399
397
|
>
|
|
400
|
-
|
|
401
398
|
> 麦上用户说话时展示波浪动画效果,您也可以参考 `TUILiveKit` 开源项目中的 [SeatGridView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Component/SeatGridview/SeatGridView.swift) 文件来了解完整的实现逻辑。
|
|
402
399
|
>
|
|
403
400
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
**AtomicXCore** 提供了 [CoGuestState](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-CoGuestState) 和 [LiveSeatState](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-LiveSeatState) 模块,用于管理观众连麦的完整业务流程。您无需关心复杂的状态同步和信令交互,只需调用几个简单的方法,即可为您的直播添加强大的观众与主播音视频互动功能。本文档将指导您如何使用 `CoGuestState` 和 `LiveSeatState
|
|
1
|
+
**AtomicXCore** 提供了 [CoGuestState](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-CoGuestState) 和 [LiveSeatState](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/index.html#module-LiveSeatState) 模块,用于管理观众连麦的完整业务流程。您无需关心复杂的状态同步和信令交互,只需调用几个简单的方法,即可为您的直播添加强大的观众与主播音视频互动功能。本文档将指导您如何使用 `CoGuestState` 和 `LiveSeatState` 在您的应用中快速实现语音连麦功能。
|
|
2
2
|
|
|
3
3
|
## 核心场景
|
|
4
4
|
|
|
5
|
-
`CoGuestState
|
|
5
|
+
`CoGuestState` 和 `LiveSeatState` 支持以下几个主流的场景:
|
|
6
6
|
- **观众申请上麦**:观众主动发起连麦请求,主播在收到请求后同意或拒绝。
|
|
7
7
|
|
|
8
8
|
- **主播邀请上麦**:主播可以主动向语聊房内的任意一位观众发起连麦邀请。
|
|
@@ -310,7 +310,7 @@
|
|
|
310
310
|
#### 实现方式:
|
|
311
311
|
1. **静音:**调用 `muteMicrophone()` 方法。这是一个无回调的单向请求。
|
|
312
312
|
|
|
313
|
-
2. **解除静音**:调用 `unmuteMicrophone(success: fail:)
|
|
313
|
+
2. **解除静音**:调用 `unmuteMicrophone(success: fail:)` 方法。
|
|
314
314
|
|
|
315
315
|
#### 示例代码:
|
|
316
316
|
``` typescript
|
|
@@ -420,7 +420,7 @@ onMounted(() => {
|
|
|
420
420
|
|
|
421
421
|
|**参数**|**类型**|**描述**|
|
|
422
422
|
|---------|---------|---------|
|
|
423
|
-
|`liveID`|`string
|
|
423
|
+
|`liveID`|`string`|当前语聊房的 `liveID`。|
|
|
424
424
|
|`userID`|`string`|被操作的用户 `userID`。|
|
|
425
425
|
|`success`|`Function`|静音成功的回调。|
|
|
426
426
|
|`fail`|`Function`|静音失败的回调。|
|
|
@@ -551,7 +551,7 @@ const unlock = () => {
|
|
|
551
551
|
主播和普通上麦用户可以调用 `moveUserToSeat(userID:targetIndex:policy:success:fail:)` 移动麦位。
|
|
552
552
|
|
|
553
553
|
#### 实现方式:
|
|
554
|
-
1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex
|
|
554
|
+
1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex` 是目标麦位索引,`policy` 参数来指定如果目标麦位有人时的移动策略,详细参见 [接口参数](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/uni-app/zh/v1.0/api/interface.html#MoveUserToSeatOptions) 说明。
|
|
555
555
|
|
|
556
556
|
2. **普通上麦用户移动自己麦位**:普通上麦用户也可以调用此接口来移动自己。此时 `userID` 必须传入用户自己的 ID,`targetIndex` 传入想去的新麦位索引,此时 `policy` 参数无效,如果目标麦位有人时会报错并停止移动。
|
|
557
557
|
|
|
@@ -610,7 +610,7 @@ const moveSeat = () => {
|
|
|
610
610
|
您应该订阅 `LiveSeatState` 中的 `seatList` 属性,它是一个`[SeatInfo]` 数组类型的响应式数据,每当数组变化时都会通知您重新渲染麦位列表。遍历此数组,您可以:
|
|
611
611
|
- 通过 `seatInfo.userInfo` 来获取麦位上用户信息。
|
|
612
612
|
|
|
613
|
-
- 通过 `seatInfo.isLocked
|
|
613
|
+
- 通过 `seatInfo.isLocked` 判断麦位是否被锁定。
|
|
614
614
|
|
|
615
615
|
- 通过 `seatInfo.userInfo.microphoneStatus` 判断麦上用户的麦克风状态。
|
|
616
616
|
|
package/resource/knowledge/livekit/core-sdk/voice/uni-app/{voice-integration.md → integration.md}
RENAMED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
### 步骤2:导入 tuikit-atomic-x
|
|
10
10
|
1. **安装组件**:打开 [AtomicXCore SDK](https://ext.dcloud.net.cn/plugin) ,单击**下载插件并导入 HBuilderX**,选择需要集成的项目并单击**确定**。
|
|
11
11
|
|
|
12
|
-
2.
|
|
12
|
+
2. **配置工程权限:** 请在应用的 manifest.json 文件的 app-plus > distribute 节点下,确保添加了以下必要的权限:
|
|
13
13
|
|
|
14
14
|
- Android 平台(`android` 节点):在 `permissions` 数组中,请确保包含以下权限:
|
|
15
15
|
|
|
@@ -30,11 +30,10 @@
|
|
|
30
30
|
|
|
31
31
|
### 步骤3:完成登录
|
|
32
32
|
|
|
33
|
-
在您的项目中调用 LoginState 中的 login
|
|
33
|
+
在您的项目中调用 LoginState 中的 login 方法完成登录,**这是使用** `AtomicXCore` **所有功能的关键前提**。
|
|
34
34
|
|
|
35
35
|
> **重要:**
|
|
36
36
|
>
|
|
37
|
-
|
|
38
37
|
> 推荐在您 App 自身的用户账户登录成功后,再调用 LoginState 中的 login 方法,以确保登录业务逻辑的清晰和一致。
|
|
39
38
|
>
|
|
40
39
|
|
|
@@ -56,7 +55,7 @@ const handleLogin = () => {
|
|
|
56
55
|
| 参数 | 类型 | 说明 |
|
|
57
56
|
| --- | --- | --- |
|
|
58
57
|
| sdkAppID | number | 从 <a href="https://console.cloud.tencent.com/trtc">控制台</a>获取,通常是以 <code>140</code> 或 <code>160</code> 开头的 10 位整数。 |
|
|
59
|
-
| userID | string | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong
|
|
58
|
+
| userID | string | 当前用户的唯一 ID,仅包含英文字母、数字、连字符和下划线。为避免多端登录冲突,<strong>请勿使用</strong> <code>1</code>、<code>123</code> <strong>等简单 ID</strong>。 |
|
|
60
59
|
| userSig | string | 用于腾讯云鉴权的票据。请注意:<br>- 开发环境:您可以采用本地 <code>GenerateTestUserSig.genTestSig</code> 函数生成 userSig 或者 通过 <a href="https://console.cloud.tencent.com/im/tool-usersig">UserSig 辅助工具</a> 生成临时的 UserSig。<br>- 生产环境:为了防止密钥泄露,请务必采用服务端生成 UserSig 的方式。详细信息请参考 <a href="https://cloud.tencent.com/document/product/647/17275">服务端生成 UserSig</a>。<br>更多信息请参见 <a href="https://cloud.tencent.com/document/product/647/17275">如何计算及使用 UserSig</a>。 |
|
|
61
60
|
|
|
62
61
|
## 搭建语音聊天室
|
|
@@ -65,7 +64,7 @@ const handleLogin = () => {
|
|
|
65
64
|
|
|
66
65
|
房主开播流程如下,您只需执行以下几步操作,即可快速搭建一个语聊房。
|
|
67
66
|
|
|
68
|
-
#### **1.
|
|
67
|
+
#### **1. 初始化麦位** `State`
|
|
69
68
|
|
|
70
69
|
在您的房主页面中,创建一个 `LiveSeatState` 实例。您需要监听响应式数据的变化,以实时获取麦位数据来渲染您的 `UI`。
|
|
71
70
|
``` typescript
|
|
@@ -124,7 +123,7 @@ const startLive = () => {
|
|
|
124
123
|
};
|
|
125
124
|
```
|
|
126
125
|
|
|
127
|
-
`LiveInfo
|
|
126
|
+
`LiveInfo` **参数说明:**
|
|
128
127
|
|
|
129
128
|
|**参数名**|**类型**|**属性**|**描述**|
|
|
130
129
|
|---------|---------|---------|---------|
|
|
@@ -186,7 +185,7 @@ const handleEndLive = () => {
|
|
|
186
185
|
|
|
187
186
|
观众进房流程如下,通过简单几步操作,即可实现观众进入语聊房
|
|
188
187
|
|
|
189
|
-
#### **1.
|
|
188
|
+
#### **1. 初始化麦位** `State`
|
|
190
189
|
|
|
191
190
|
在您的观众页面 中,创建 `LiveSeatState` 实例,并监听 `seatList` 的变化,以渲染麦位 `UI` 。
|
|
192
191
|
``` typescript
|
|
@@ -105,11 +105,10 @@ onMounted(async () => {
|
|
|
105
105
|
|
|
106
106
|
> **注意:**
|
|
107
107
|
>
|
|
108
|
-
|
|
109
108
|
> 使用 BarrageList 的默认消息组件时,表情消息会自动渲染为图片。但当您通过 `Message Props` 或 `message-item` Slot 接管自定义消息渲染时,message.textContent 中的表情编码(例如 [TUIEmoji_Flower])不会自动解析,需要您参考 如何处理自定义弹幕消息时的表情渲染 处理。
|
|
110
109
|
>
|
|
111
110
|
|
|
112
|
-
#### **containerStyle + itemStyle
|
|
111
|
+
#### **containerStyle + itemStyle** 调整样式
|
|
113
112
|
|
|
114
113
|
通过 `containerStyle`、`itemStyle`、`style`、`height` 等 Props,您可以快速调整弹幕消息组件的外观,无需编写额外组件。
|
|
115
114
|
``` typescript
|
|
@@ -415,7 +414,7 @@ function getGiftCount(message: { data?: string }): number {
|
|
|
415
414
|
|
|
416
415
|
### 进阶场景:如何快速实现“弹幕抽奖”
|
|
417
416
|
|
|
418
|
-
弹幕抽奖是直播互动的核心玩法。通过 `tuikit-atomicx-vue3
|
|
417
|
+
弹幕抽奖是直播互动的核心玩法。通过 `tuikit-atomicx-vue3` 提供的自定义消息能力,您可以轻松实现从“参与抽奖”到“中奖公示”的全流程。
|
|
419
418
|
| <strong>主播端</strong> | <strong>观众端</strong> | | | | |
|
|
420
419
|
| --- | --- | --- | --- | --- | --- |
|
|
421
420
|
| <strong>发起抽奖</strong> | <strong>准备开奖</strong> | <strong>开奖结算页面</strong> | <strong>参与抽奖页面</strong> | <code>参与抽奖成功</code> | <strong>开奖结算页面</strong> |
|
|
@@ -82,7 +82,7 @@ onMounted(async () => {
|
|
|
82
82
|
|---------|---------|---------|
|
|
83
83
|
|仅调整组件容器的高度、样式等|Props: `height` / `style`|最简单,几行属性配置即可实现。|
|
|
84
84
|
|在观众头像和昵称之间添加自定义标识(如 VIP 徽章、禁言标识)|Slot: `audience-mark`|通过插槽注入自定义标识元素,保留默认的列表项布局。|
|
|
85
|
-
|完全替换整个观众列表项的渲染,实现排名、自定义布局等|Slot: `audience-item
|
|
85
|
+
|完全替换整个观众列表项的渲染,实现排名、自定义布局等|Slot: `audience-item`|最灵活,完全接管每个列表项的渲染逻辑。**优先级高于** `audience-mark`。|
|
|
86
86
|
|
|
87
87
|
| <strong>修改前</strong> | <strong>修改后</strong> | |
|
|
88
88
|
| --- | --- | --- |
|
|
@@ -192,7 +192,7 @@ const isCameraOn = (userInfo: SeatUserInfo) => {
|
|
|
192
192
|
| visible | boolean | 是否显示按钮。 |
|
|
193
193
|
| disabled | boolean | 是否禁用按钮。 |
|
|
194
194
|
| icon | Component \\| (() => VNode) | 自定义按钮<strong>默认态</strong>图标。<br>- <strong>Play</strong> 按钮:播放时显示(即“暂停”图标,点击可暂停)。<br>- <strong>Volume</strong> 按钮:未静音时显示(即“喇叭”图标)。<br>- <strong>PictureInPicture</strong> 按钮:非画中画时显示。<br>- <strong>Fullscreen</strong> 按钮:非全屏时显示。 |
|
|
195
|
-
| activeIcon | Component \\| (() => VNode) | 自定义按钮<strong>激活态</strong>图标。<br>- <strong>Play</strong> 按钮:暂停时显示(即“播放”图标,点击可恢复播放)。<br>- <strong>Volume</strong> 按钮:静音时显示(即“静音”图标)。<br>- <strong>PictureInPicture</strong> 按钮:画中画模式下显示。<br>- <strong>Fullscreen
|
|
195
|
+
| activeIcon | Component \\| (() => VNode) | 自定义按钮<strong>激活态</strong>图标。<br>- <strong>Play</strong> 按钮:暂停时显示(即“播放”图标,点击可恢复播放)。<br>- <strong>Volume</strong> 按钮:静音时显示(即“静音”图标)。<br>- <strong>PictureInPicture</strong> 按钮:画中画模式下显示。<br>- <strong>Fullscreen</strong> 按钮:全屏模式下显示。 |
|
|
196
196
|
| tooltip | string | 鼠标悬浮时的提示文案。 |
|
|
197
197
|
|
|
198
198
|
``` typescript
|