@tencentcloud/sdk-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/index.js +0 -1
- package/knowledge/bm25-cache.js +73 -0
- package/knowledge/bm25.js +147 -0
- package/knowledge/build-index.js +65 -0
- package/knowledge/chunker.js +167 -0
- package/knowledge/content-loader.js +44 -0
- package/knowledge/extractors.js +25 -0
- package/knowledge/path-meta.js +175 -0
- package/knowledge/search/exact-lookup.js +330 -0
- package/knowledge/search/filter-pool.js +86 -0
- package/knowledge/search/requires-framework.js +72 -0
- package/knowledge/search/search-knowledge.js +226 -0
- package/package.json +9 -9
- package/resource/_schema/feature-aliases.yaml +10 -0
- package/resource/_schema/goal-tags.yaml +72 -0
- package/resource/_schema/products.yaml +16 -0
- package/resource/_schema/trtc-intents.yaml +27 -0
- package/resource/_schema/types.yaml +44 -0
- package/resource/index/component-slugs.json +1 -0
- package/resource/index/manifest.json +1 -0
- package/resource/{doc → integration}/callkit/preset/android/integration.md +32 -28
- package/resource/{doc → integration}/callkit/preset/flutter/integration.md +109 -54
- package/resource/integration/callkit/preset/ios/integration.md +411 -0
- package/resource/integration/callkit/preset/react/integration.md +499 -0
- package/resource/integration/callkit/preset/vue/integration.md +768 -0
- package/resource/{doc/chatkit → integration/chat/preset}/android/integration.md +11 -11
- package/resource/{doc/chatkit → integration/chat/preset}/flutter/integration.md +59 -37
- package/resource/integration/chat/preset/ios/integration.md +568 -0
- package/resource/{doc/chatkit → integration/chat/preset}/react/integration.md +127 -95
- package/resource/integration/chat/preset/uni-app/integration.md +494 -0
- package/resource/{doc/chatkit → integration/chat/preset}/vue/integration.md +163 -143
- package/resource/{doc → integration}/livekit/preset/live/vue/live-list-integration.md +15 -15
- package/resource/{doc → integration}/livekit/preset/live/vue/live-player-desk-integration.md +25 -13
- package/resource/{doc → integration}/livekit/preset/live/vue/live-player-h5-integration.md +15 -9
- package/resource/{doc → integration}/livekit/preset/live/vue/live-pusher-integration.md +31 -26
- package/resource/integration/roomkit/preset/vue/integration.md +571 -0
- package/resource/knowledge/callkit/core-sdk/android/answer-call.md +852 -0
- package/resource/knowledge/callkit/core-sdk/android/make-call.md +929 -0
- package/resource/knowledge/callkit/core-sdk/android/offline-push.md +364 -0
- package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +1150 -0
- package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +1216 -0
- package/resource/knowledge/callkit/core-sdk/flutter/offline-push.md +412 -0
- package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +1191 -0
- package/resource/knowledge/callkit/core-sdk/ios/make-call.md +1292 -0
- package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +537 -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 +168 -0
- package/resource/knowledge/callkit/faq/common.md +180 -0
- package/resource/knowledge/callkit/faq/flutter.md +52 -0
- package/resource/knowledge/callkit/faq/ios.md +116 -0
- package/resource/knowledge/callkit/faq/uniapp-app.md +89 -0
- package/resource/knowledge/callkit/faq/uniapp-miniprogram.md +217 -0
- package/resource/knowledge/callkit/faq/web.md +363 -0
- package/resource/knowledge/callkit/preset/android/api.md +413 -0
- package/resource/knowledge/callkit/preset/flutter/api.md +22 -0
- package/resource/knowledge/callkit/preset/ios/api.md +256 -0
- package/resource/knowledge/callkit/preset/web/api.md +79 -0
- package/resource/knowledge/chat/preset/android/features/chat-setting.md +72 -0
- package/resource/knowledge/chat/preset/android/features/contact-list.md +41 -0
- package/resource/knowledge/chat/preset/android/features/conversation-list.md +123 -0
- package/resource/knowledge/chat/preset/android/features/language.md +142 -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/{doc/chatkit → knowledge/chat/preset}/android/features/theme.md +21 -18
- package/resource/knowledge/chat/preset/android-view/integration.md +448 -0
- package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +62 -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 +163 -0
- package/resource/knowledge/chat/preset/flutter/features/search.md +59 -0
- package/resource/{doc/chatkit → knowledge/chat/preset}/flutter/features/theme.md +47 -19
- package/resource/knowledge/chat/preset/ios/features/chat-setting.md +92 -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 +105 -0
- package/resource/knowledge/chat/preset/ios/features/message-input.md +69 -0
- package/resource/knowledge/chat/preset/ios/features/message-list.md +164 -0
- package/resource/knowledge/chat/preset/ios/features/search.md +94 -0
- package/resource/{doc/chatkit → knowledge/chat/preset}/ios/features/theme.md +54 -51
- package/resource/{doc/chatkit/ios → knowledge/chat/preset/ios-uikit}/integration.md +157 -94
- package/resource/knowledge/chat/preset/react/features/chat-setting.md +123 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/contact-list.md +256 -104
- package/resource/knowledge/chat/preset/react/features/conversation-actions.md +217 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/conversation-list.md +86 -79
- package/resource/knowledge/chat/preset/react/features/conversation-preview.md +99 -0
- package/resource/knowledge/chat/preset/react/features/conversation-search.md +58 -0
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-input.md +30 -83
- package/resource/{doc/chatkit/react/components → knowledge/chat/preset/react/features}/message-list.md +22 -25
- package/resource/knowledge/chat/preset/react/features/search.md +531 -0
- package/resource/knowledge/chat/preset/react/features/theme.md +16 -0
- package/resource/knowledge/chat/preset/vue/features/chat-header.md +331 -0
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/chat-setting.md +0 -4
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/contact-list.md +59 -53
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-actions.md +49 -43
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-list.md +61 -49
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-preview.md +43 -40
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/conversation-search.md +1 -1
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/message-input.md +128 -105
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/message-list.md +108 -195
- package/resource/{doc/chatkit/vue/components → knowledge/chat/preset/vue/features}/search.md +74 -68
- package/resource/knowledge/chat/preset/vue/features/theme.md +136 -0
- package/resource/knowledge/chat/urls/error-code.md +16 -0
- package/resource/knowledge/chat/urls/product.md +61 -0
- package/resource/knowledge/chat/urls/restapi.md +226 -0
- package/resource/knowledge/chat/urls/sdk/android.md +84 -0
- package/resource/knowledge/chat/urls/sdk/flutter.md +73 -0
- package/resource/knowledge/chat/urls/sdk/ios.md +84 -0
- package/resource/knowledge/chat/urls/sdk/web.md +88 -0
- package/resource/knowledge/chat/urls/webhook.md +73 -0
- package/resource/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/AudioEffectStore.md +79 -76
- 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/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/CameraView.md +7 -6
- 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/{doc/livekit/core-sdk/live/android/api-reference → knowledge/livekit/core-sdk/api-reference/android}/LikeStore.md +12 -10
- 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 +439 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/LoginStore.md +221 -0
- package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/AudioEffectStore.md +79 -76
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BarrageStore.md +212 -0
- package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/BaseBeautyStore.md +43 -45
- 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 +420 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/GiftStore.md +166 -0
- package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/LikeStore.md +12 -11
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveAudienceStore.md +281 -0
- package/resource/{doc/livekit/core-sdk/live/flutter/api-reference → knowledge/livekit/core-sdk/api-reference/flutter}/LiveCoreView.md +49 -42
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LiveSeatStore.md +397 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/LoginStore.md +183 -0
- package/resource/{doc/livekit/core-sdk/live/ios/api-reference → knowledge/livekit/core-sdk/api-reference/ios}/AudioEffectStore.md +79 -75
- 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/{doc/livekit/core-sdk/live/ios/api-reference → knowledge/livekit/core-sdk/api-reference/ios}/LikeStore.md +12 -10
- 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 +434 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +187 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/web/index.md +780 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audience-list.md +59 -51
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-audio-effect.md +37 -34
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-barrage.md +68 -38
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-base-beauty.md +18 -15
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-co-guest-interaction.md +17 -17
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-gift.md +86 -80
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-host-interaction.md +53 -49
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-integration.md +47 -45
- package/resource/{doc → knowledge}/livekit/core-sdk/live/android/live-live-list.md +26 -22
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audience-list.md +16 -13
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-audio-effect.md +28 -24
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-barrage.md +33 -21
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-base-beauty.md +29 -25
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-co-guest-interaction.md +21 -20
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-gift.md +78 -69
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-host-interaction.md +47 -43
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-integration.md +48 -45
- package/resource/{doc → knowledge}/livekit/core-sdk/live/flutter/live-live-list.md +27 -23
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audience-list.md +15 -12
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-audio-effect.md +39 -36
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-barrage.md +42 -29
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-base-beauty.md +19 -16
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-co-guest-interaction.md +20 -19
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-gift.md +55 -49
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-host-interaction.md +50 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-integration.md +48 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/live/ios/live-live-list.md +26 -22
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audience-list.md +59 -51
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-audio-effect.md +41 -38
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-barrage.md +67 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +53 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-gift.md +86 -80
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-host-interaction.md +45 -40
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/android/voice-integration.md +43 -42
- package/resource/knowledge/livekit/core-sdk/voice/android/voice-room-list.md +523 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-audience-list.md +16 -13
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-audio-effect.md +54 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-barrage.md +33 -21
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +34 -28
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-gift.md +73 -64
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-integration.md +46 -43
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/flutter/voice-room-list.md +165 -148
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audience-list.md +19 -16
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-audio-effect.md +40 -37
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-barrage.md +41 -28
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +54 -47
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-gift.md +52 -46
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-host-interaction.md +55 -50
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/ios/voice-integration.md +47 -45
- package/resource/knowledge/livekit/core-sdk/voice/ios/voice-room-list.md +404 -0
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-audience-list.md +40 -57
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-audio-effect.md +38 -49
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-barrage.md +53 -53
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-co-guest-interaction.md +106 -116
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-gift.md +49 -59
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-integration.md +52 -45
- package/resource/{doc → knowledge}/livekit/core-sdk/voice/uni-app/voice-room-list.md +38 -46
- package/resource/knowledge/livekit/preset/live/vue/features/barrage.md +915 -0
- package/resource/knowledge/livekit/preset/live/vue/features/live-audience-list.md +179 -0
- package/resource/knowledge/livekit/preset/live/vue/features/live-view.md +419 -0
- package/resource/knowledge/push/config/android/fcm.md +133 -0
- package/resource/knowledge/push/config/android/honor.md +111 -0
- package/resource/knowledge/push/config/android/huawei.md +106 -0
- package/resource/knowledge/push/config/android/meizu.md +121 -0
- package/resource/knowledge/push/config/android/oppo.md +108 -0
- package/resource/knowledge/push/config/android/vivo.md +101 -0
- package/resource/knowledge/push/config/android/xiaomi.md +99 -0
- package/resource/knowledge/push/integration/android.md +1028 -0
- package/resource/knowledge/push/integration/donut.md +271 -0
- package/resource/knowledge/push/integration/flutter.md +363 -0
- package/resource/knowledge/push/integration/harmonyos.md +72 -0
- package/resource/knowledge/push/integration/ios.md +705 -0
- package/resource/knowledge/push/integration/react-native.md +337 -0
- package/resource/knowledge/push/integration/uni-app.md +461 -0
- package/resource/knowledge/push/integration/unity.md +357 -0
- package/resource/knowledge/push/integration/unreal-engine.md +353 -0
- package/resource/knowledge/push/overview/prepare.md +30 -0
- package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/call-user-to-room.md +22 -20
- package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/room-participant-state.md +22 -193
- package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/room-state.md +33 -32
- package/resource/{doc/roomkit/android/features → knowledge/roomkit/core-sdk/android}/schedule-room.md +30 -29
- package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +230 -0
- package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/room-participant-state.md +22 -21
- package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/room-state.md +29 -28
- package/resource/{doc/roomkit/flutter/features → knowledge/roomkit/core-sdk/flutter}/schedule-room.md +17 -16
- package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/call-user-to-room.md +22 -20
- package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/room-participant-state.md +49 -218
- package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/room-state.md +37 -37
- package/resource/{doc/roomkit/ios/features → knowledge/roomkit/core-sdk/ios}/schedule-room.md +28 -28
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/call-user-to-room.md +122 -7
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/device-detection.md +318 -3
- package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +1504 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/free-beauty-panel.md +4 -3
- package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +709 -0
- package/resource/knowledge/roomkit/core-sdk/vue/room-participant-state.md +1105 -0
- package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +635 -0
- package/resource/knowledge/roomkit/core-sdk/vue/room-view.md +529 -0
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/schedule-room.md +256 -13
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/screen-share.md +218 -25
- package/resource/{doc/roomkit/vue/features → knowledge/roomkit/core-sdk/vue}/virtual-background.md +4 -3
- package/resource/{doc/roomkit → knowledge/roomkit/preset}/android/integration.md +50 -64
- package/resource/{doc/roomkit → knowledge/roomkit/preset}/flutter/integration.md +34 -31
- package/resource/{doc/roomkit → knowledge/roomkit/preset}/ios/integration.md +45 -53
- package/resource/knowledge/roomkit/preset/react/integration.md +571 -0
- package/resource/{doc → knowledge}/rtcengine/web/how_to_run_web_sdk_demo.md +31 -15
- package/resource/{doc → knowledge}/rtcengine/web/plugin/21-advanced-auto-play-policy.md +9 -3
- package/resource/{doc → knowledge}/rtcengine/web/plugin/22-advanced-audio-mixer.md +1 -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 +6 -6
- 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 +4 -4
- package/resource/{doc → knowledge}/rtcengine/web/plugin/27-advanced-small-stream.md +4 -4
- package/resource/{doc → knowledge}/rtcengine/web/plugin/31-advanced-plugins-overview.md +1 -1
- package/resource/{doc → knowledge}/trtc/android/TRTCCloud.md +547 -495
- package/resource/{doc → knowledge}/trtc/android/TRTCCloudDef.md +434 -403
- package/resource/{doc → knowledge}/trtc/android/TRTCCloudListener.md +394 -348
- package/resource/{doc → knowledge}/trtc/android/TRTCStatistics.md +17 -15
- package/resource/{doc → knowledge}/trtc/android/TXAudioEffectManager.md +227 -197
- package/resource/knowledge/trtc/android/TXBeautyManager.md +415 -0
- package/resource/{doc → knowledge}/trtc/android/TXDeviceManager.md +70 -63
- package/resource/{doc → knowledge}/trtc/android/TXLiteAVCode.md +19 -17
- package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/ITRTCCloud.md +599 -544
- package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/ITRTCStatistics.md +17 -15
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +502 -0
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +403 -0
- package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TRTCCloudCallback.md +439 -387
- package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TRTCTypeDef.md +417 -387
- package/resource/{doc/trtc/C++ → knowledge/trtc/c++}/TXLiteAVCode.md +19 -17
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCCloud.md +619 -559
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCCloudDelegate.md +409 -360
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TRTCStatistics.md +17 -15
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXAudioEffectManager.md +187 -164
- package/resource/knowledge/trtc/ios/TXBeautyManager.md +416 -0
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +399 -0
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXLiteAVCode.md +19 -17
- package/resource/{doc/trtc/iOS → knowledge/trtc/ios}/TXLiveSDKTypeDef.md +422 -396
- package/server-config.js +0 -1
- package/server.js +22 -12
- package/streamable-http.js +0 -1
- package/tools/call/get_native_call_uikit_integration.js +2 -4
- package/tools/call/get_native_callkit_core_integration.js +2 -6
- package/tools/call/get_web_call_uikit_integration.js +2 -4
- package/tools/chat/get_native_chat_uikit_integration.js +2 -4
- package/tools/chat/get_web_chat_uikit_integration.js +2 -4
- package/tools/common/get_usersig.js +0 -1
- package/tools/common/present_framework_choice.js +9 -4
- package/tools/common/record_answer.js +19 -26
- package/tools/common/record_feedback.js +17 -31
- package/tools/common/search_trtc_knowledge.js +44 -0
- package/tools/definitions/get_native_call_uikit_integration_def.js +2 -1
- package/tools/definitions/get_native_callkit_core_integration_def.js +2 -1
- package/tools/definitions/get_native_chat_uikit_integration_def.js +3 -2
- package/tools/definitions/get_native_livekit_core_integration_def.js +2 -1
- package/tools/definitions/get_usersig_def.js +0 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +2 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +2 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +4 -3
- package/tools/definitions/get_web_room_core_integration_def.js +46 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +3 -1
- package/tools/definitions/integration-boundary.js +5 -0
- package/tools/definitions/present_framework_choice_def.js +11 -10
- package/tools/definitions/record_answer_def.js +6 -5
- package/tools/definitions/record_feedback_def.js +4 -3
- package/tools/definitions/search_trtc_knowledge_def.js +69 -0
- package/tools/index.js +5 -37
- package/tools/live/get_native_livekit_core_integration.js +1 -4
- package/tools/live/get_web_live_uikit_integration.js +2 -5
- package/tools/room/get_web_room_core_integration.js +47 -0
- package/tools/room/get_web_room_uikit_integration.js +2 -4
- package/utils/generate-structured-result.js +4 -11
- package/utils/generate-usersig.js +0 -1
- package/utils/get-device-identifier.js +0 -1
- package/utils/get-doc-content.js +14 -9
- package/utils/http-get.js +0 -1
- package/utils/http-post.js +0 -1
- package/utils/report-cls-client.js +22 -21
- package/utils/report-es-client.js +1 -2
- package/utils/report-runtime-error-cls-client.js +0 -1
- package/index.js.map +0 -1
- package/resource/doc/callkit/core-sdk/.gitkeep +0 -0
- package/resource/doc/callkit/core-sdk/android/answer-call.md +0 -942
- package/resource/doc/callkit/core-sdk/android/make-call.md +0 -876
- package/resource/doc/callkit/core-sdk/android/offline-push.md +0 -368
- package/resource/doc/callkit/core-sdk/flutter/answer-call.md +0 -1132
- package/resource/doc/callkit/core-sdk/flutter/make-call.md +0 -1206
- package/resource/doc/callkit/core-sdk/flutter/offline-push.md +0 -357
- package/resource/doc/callkit/core-sdk/ios/answer-call.md +0 -1009
- package/resource/doc/callkit/core-sdk/ios/make-call.md +0 -1154
- package/resource/doc/callkit/core-sdk/ios/offline-push.md +0 -470
- package/resource/doc/callkit/core-sdk/uni-app/answer-call.md +0 -1146
- package/resource/doc/callkit/core-sdk/uni-app/make-call.md +0 -1267
- package/resource/doc/callkit/faq/android-faq.md +0 -767
- package/resource/doc/callkit/faq/flutter-faq.md +0 -749
- package/resource/doc/callkit/faq/ios-faq.md +0 -759
- package/resource/doc/callkit/faq/web-faq.md +0 -753
- package/resource/doc/callkit/preset/android/api.md +0 -330
- package/resource/doc/callkit/preset/flutter/api.md +0 -401
- package/resource/doc/callkit/preset/ios/api.md +0 -282
- package/resource/doc/callkit/preset/ios/integration.md +0 -188
- package/resource/doc/callkit/preset/react/api.md +0 -600
- package/resource/doc/callkit/preset/react/integration.md +0 -86
- package/resource/doc/callkit/preset/vue/api.md +0 -600
- package/resource/doc/callkit/preset/vue/integration.md +0 -83
- package/resource/doc/chatkit/android/faq.md +0 -109
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +0 -280
- package/resource/doc/chatkit/faq/common/product.md +0 -82
- package/resource/doc/chatkit/faq/common/server.md +0 -53
- package/resource/doc/chatkit/faq/common/server_error_code.md +0 -74
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +0 -183
- package/resource/doc/chatkit/faq/flutter_sdk/faq.md +0 -54
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +0 -279
- package/resource/doc/chatkit/faq/web_sdk/error_code.md +0 -47
- package/resource/doc/chatkit/faq/web_sdk/faq.md +0 -292
- package/resource/doc/chatkit/flutter/faq.md +0 -22
- package/resource/doc/chatkit/ios/faq.md +0 -109
- 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 -117
- package/resource/doc/chatkit/react/components/chat.md +0 -38
- package/resource/doc/chatkit/react/components/component-list.md +0 -35
- package/resource/doc/chatkit/react/components/conversation-actions.md +0 -174
- package/resource/doc/chatkit/react/components/conversation-preview.md +0 -116
- package/resource/doc/chatkit/react/components/conversation-search.md +0 -57
- package/resource/doc/chatkit/react/components/search.md +0 -282
- package/resource/doc/chatkit/react/components/tuikit.md +0 -43
- package/resource/doc/chatkit/react/faq.md +0 -26
- package/resource/doc/chatkit/vue/components/avatar.md +0 -104
- package/resource/doc/chatkit/vue/components/chat-header.md +0 -149
- package/resource/doc/chatkit/vue/components/chat.md +0 -42
- package/resource/doc/chatkit/vue/components/component-list.md +0 -89
- package/resource/doc/chatkit/vue/components/tuikit.md +0 -45
- package/resource/doc/chatkit/vue/components/userpicker.md +0 -256
- package/resource/doc/chatkit/vue/faq.md +0 -35
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +0 -148
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +0 -316
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +0 -419
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +0 -325
- package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +0 -436
- package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +0 -165
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +0 -239
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +0 -74
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +0 -417
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +0 -207
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +0 -158
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +0 -304
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +0 -394
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +0 -303
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +0 -410
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +0 -160
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +0 -231
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +0 -375
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +0 -170
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +0 -165
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +0 -143
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +0 -298
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +0 -349
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +0 -297
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +0 -471
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +0 -179
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +0 -238
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +0 -74
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +0 -412
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +0 -173
- package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +0 -365
- package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +0 -336
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +0 -780
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +0 -291
- package/resource/doc/livekit/preset/live/vue/components/co-guest-panel.md +0 -88
- package/resource/doc/livekit/preset/live/vue/components/live-audience-list.md +0 -164
- package/resource/doc/livekit/preset/live/vue/components/live-scene-panel.md +0 -130
- package/resource/doc/livekit/preset/live/vue/components/live-view.md +0 -203
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +0 -211
- package/resource/doc/livekit/preset/live/vue/faq.md +0 -1
- package/resource/doc/roomkit/faq/common/error-code.md +0 -67
- package/resource/doc/roomkit/flutter/features/call-user-to-room.md +0 -228
- package/resource/doc/roomkit/vue/faq.md +0 -1
- package/resource/doc/roomkit/vue/features/device-state.md +0 -460
- package/resource/doc/roomkit/vue/features/room-chat.md +0 -369
- package/resource/doc/roomkit/vue/features/room-participant-state.md +0 -385
- package/resource/doc/roomkit/vue/features/room-state.md +0 -280
- package/resource/doc/roomkit/vue/features/room-view.md +0 -241
- package/resource/doc/roomkit/vue/integration.md +0 -315
- package/resource/doc/rtcengine/faq/web_sdk/.gitkeep +0 -0
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +0 -472
- package/resource/doc/trtc/C++/ITXDeviceManager.md +0 -388
- package/resource/doc/trtc/android/TXBeautyManager.md +0 -403
- package/resource/doc/trtc/iOS/TXBeautyManager.md +0 -404
- package/resource/doc/trtc/iOS/TXDeviceManager.md +0 -382
- package/server-config.js.map +0 -1
- package/server.js.map +0 -1
- package/streamable-http.js.map +0 -1
- package/tools/call/get_callkit_api.js +0 -33
- package/tools/call/get_callkit_api.js.map +0 -1
- package/tools/call/get_native_call_uikit_integration.js.map +0 -1
- package/tools/call/get_native_callkit_core_integration.js.map +0 -1
- package/tools/call/get_web_call_uikit_integration.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_native_chat_uikit_integration.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/chat/get_web_chat_uikit_integration.js.map +0 -1
- package/tools/common/get_faq.js +0 -266
- package/tools/common/get_faq.js.map +0 -1
- package/tools/common/get_usersig.js.map +0 -1
- package/tools/common/present_framework_choice.js.map +0 -1
- package/tools/common/record_answer.js.map +0 -1
- package/tools/common/record_feedback.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 -28
- package/tools/definitions/get_callkit_api_def.js.map +0 -1
- package/tools/definitions/get_faq_def.js +0 -40
- package/tools/definitions/get_faq_def.js.map +0 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_callkit_core_integration_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_chat_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +0 -33
- package/tools/definitions/get_native_livekit_core_features_def.js.map +0 -1
- package/tools/definitions/get_native_livekit_core_integration_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_usersig_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_integration_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_chat_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_api_def.js +0 -27
- package/tools/definitions/get_web_livekit_api_def.js.map +0 -1
- package/tools/definitions/get_web_livekit_component_detail_def.js +0 -29
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +0 -30
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_api_def.js +0 -25
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +0 -25
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +0 -1
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +0 -25
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +0 -1
- package/tools/definitions/present_framework_choice_def.js.map +0 -1
- package/tools/definitions/record_answer_def.js.map +0 -1
- package/tools/definitions/record_feedback_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/index.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_native_livekit_core_integration.js.map +0 -1
- package/tools/live/get_web_live_uikit_integration.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_room_uikit_integration.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 -122
- package/utils/build-session-directives.js.map +0 -1
- package/utils/generate-structured-result.js.map +0 -1
- package/utils/generate-usersig.js.map +0 -1
- package/utils/get-device-identifier.js.map +0 -1
- package/utils/get-doc-content.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/http-get.js.map +0 -1
- package/utils/http-post.js.map +0 -1
- package/utils/report-cls-client.js.map +0 -1
- package/utils/report-es-client.js.map +0 -1
- package/utils/report-runtime-error-cls-client.js.map +0 -1
- /package/resource/{doc/callkit/faq/common → knowledge/callkit/faq}/error-code.md +0 -0
- /package/resource/{doc/livekit/faq/common → knowledge/livekit/faq}/error-code.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/29-advanced-water-mark.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/34-advanced-proxy.md +0 -0
- /package/resource/{doc → knowledge}/rtcengine/web/plugin/35-advanced-ai-denoiser.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/38-advanced-basic-beauty.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
- /package/resource/{doc/rtcengine/faq/common → knowledge/share}/userSig.md +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
本篇文档旨在指导您如何使用 `AtomicXCore` 框架中的
|
|
1
|
+
本篇文档旨在指导您如何使用 `AtomicXCore` 框架中的 `AudioEffectStore` 和 `DeviceStore` 模块,为您的直播应用快速集成音效控制功能,包括麦克风音量、耳返监听,并添加多种趣味变声效果和混响效果。
|
|
2
2
|
|
|
3
3
|
## 核心功能
|
|
4
4
|
|
|
@@ -12,24 +12,24 @@
|
|
|
12
12
|
- **混响效果**:模拟不同环境的声场效果,例如 KTV、金属声、低沉、洪亮等。
|
|
13
13
|
|
|
14
14
|
## 概念说明
|
|
15
|
-
|
|
|
15
|
+
| <strong>核心概念</strong> | <strong>类型</strong> | <strong>核心职责与描述</strong> |
|
|
16
16
|
| --- | --- | --- |
|
|
17
|
-
|
|
|
18
|
-
|
|
|
19
|
-
|
|
|
20
|
-
|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
17
|
+
| <code>AudioChangerType</code> | <code>enum</code> | 变声效果枚举,例如,“小孩”,“男人”等。 |
|
|
18
|
+
| <code>AudioReverbType</code> | <code>enum</code> | 混响效果枚举,例如,“ktv”,“礼堂”等。 |
|
|
19
|
+
| <code>AudioEffectState</code> | <code>struct</code> | 代表音效模块的当前状态,通常用于 UI 渲染。包括变声状态、混响状态、耳返开启状态、耳返音量。 |
|
|
20
|
+
| <code>AudioEffectStore</code> | <code>class</code> | 代表音效模块<strong>单例数据管理类</strong>。通过它您可以调用修改音效接口,当您调用接口后,相应的 <code>state</code> 属性会自动更新,可以通过订阅这个 state 响应式数据来接收和监听状态更新。 |
|
|
21
|
+
| <code>DeviceState</code> | <code>struct</code> | 代表设备模块的当前状态,通常用于 UI 渲染。核心属性包括摄像头、麦克风的设备状态。 |
|
|
22
|
+
| <code>DeviceStore</code> | <code>class</code> | 代表设备模块<strong>单例数据管理类</strong>。通过它您可以调用操作摄像头、麦克风接口,当您调用接口后,相应的 <code>state</code> 属性会自动更新,可以通过订阅这个 state 响应式数据来接收和监听状态更新。 |
|
|
23
23
|
|
|
24
24
|
## 实现步骤
|
|
25
25
|
|
|
26
26
|
### 步骤1:组件集成
|
|
27
27
|
|
|
28
|
-
请参考
|
|
28
|
+
请参考 开播与收听 集成 **AtomicXCore。**
|
|
29
29
|
|
|
30
30
|
### 步骤2:获取 Store 实例
|
|
31
31
|
|
|
32
|
-
`AudioEffectStore` 和 `DeviceStore
|
|
32
|
+
`AudioEffectStore` 和 `DeviceStore` 是单例对象,您可以直接通过 shared 属性在项目的任何位置获取实例。您也可以参考 TUILiveKit 开源 UI Demo 项目中的 [AudioEffectView.swift](https://github.com/Tencent-RTC/TUIKit_iOS/blob/main/live/Sources/Component/AudioEffect/AudioEffectView.swift) 文件来了解完整的实现逻辑。
|
|
33
33
|
``` swift
|
|
34
34
|
import UIKit
|
|
35
35
|
import AtomicXCore
|
|
@@ -50,11 +50,11 @@ let deviceStore = DeviceStore.shared
|
|
|
50
50
|
>
|
|
51
51
|
|
|
52
52
|
#### 实现方式:
|
|
53
|
-
1.
|
|
53
|
+
1. **开关耳返**:您可以使用 `UISwitch` 控件实现开关耳返功能。
|
|
54
54
|
|
|
55
|
-
2. **设置耳返音量值**:您可以使用 `UISlider` 控件实现左右拖动滑块来调节音量的功能,并将 `UISlider`
|
|
55
|
+
2. **设置耳返音量值**:您可以使用 `UISlider` 控件实现左右拖动滑块来调节音量的功能,并将 `UISlider` 的值映射成音量值,调用 `setOutputVolume(_ volume:)`。请注意,该接口接收的参数范围是 `[0, 150],`所以您需要将 UI 控件的值(例如 UISlider 的 `0 - 1.0`)映射到 `0 - 150` 的范围。
|
|
56
56
|
|
|
57
|
-
3. **监听状态更新UI**:您可以订阅实时的耳返状态值更新UI。
|
|
57
|
+
3. **监听状态更新 UI**:您可以订阅实时的耳返状态值更新 UI。
|
|
58
58
|
|
|
59
59
|
#### 代码示例:
|
|
60
60
|
``` swift
|
|
@@ -79,21 +79,21 @@ audioEffectStore.state
|
|
|
79
79
|
```
|
|
80
80
|
|
|
81
81
|
#### setVoiceEarMonitorEnable 接口参数
|
|
82
|
-
|
|
|
82
|
+
| <strong>参数名</strong> | <strong>类型</strong> | <strong>描述</strong> |
|
|
83
83
|
| --- | --- | --- |
|
|
84
|
-
|
|
|
84
|
+
| <code>enable</code> | <code>Bool</code> | 是否开启耳返。<br>- true:开启<br>- false:关闭 |
|
|
85
85
|
|
|
86
86
|
#### setVoiceEarMonitorVolume 接口参数
|
|
87
|
-
|
|
|
87
|
+
| <strong>参数名</strong> | <strong>类型</strong> | <strong>描述</strong> |
|
|
88
88
|
| --- | --- | --- |
|
|
89
|
-
|
|
|
89
|
+
| <code>volume</code> | <code>Int</code> | 耳返音量大小。<br>- 取值范围: [0, 150]<br>- 默认值:100 |
|
|
90
90
|
|
|
91
91
|
### 步骤4:实现人声音量调节
|
|
92
92
|
|
|
93
|
-
|
|
93
|
+
当主播希望调节自己的上行采集音量大小时,调用 `DeviceStore` 的 `setCaptureVolume(volume: )` 方法传入音量值即可。
|
|
94
94
|
|
|
95
95
|
#### 实现方式:
|
|
96
|
-
1. **设置采集音量值**:您可以使用 `UISlider` 控件实现左右拖动滑块来调节音量的功能,并将 `UISlider`
|
|
96
|
+
1. **设置采集音量值**:您可以使用 `UISlider` 控件实现左右拖动滑块来调节音量的功能,并将 `UISlider` 的值映射成音量值后调用 `setCaptureVolume(volume: 80)`。请注意,该接口接收的参数范围是 `[0, 150],`所以您需要将 UI 控件的值(例如 UISlider 的 `0 - 1.0`)映射到 `0 - 150` 的范围。
|
|
97
97
|
|
|
98
98
|
2. **监听状态更新 UI**:您可以订阅实时的音量状态值更新 UI。
|
|
99
99
|
|
|
@@ -114,13 +114,13 @@ deviceStore.state
|
|
|
114
114
|
```
|
|
115
115
|
|
|
116
116
|
#### setCaptureVolume 接口参数
|
|
117
|
-
|
|
|
117
|
+
| <strong>参数名</strong> | <strong>类型</strong> | <strong>描述</strong> |
|
|
118
118
|
| --- | --- | --- |
|
|
119
|
-
|
|
|
119
|
+
| <code>volume</code> | <code>Int</code> | 采集音量大小。<br>- 取值范围: [0, 150]<br>- 默认值:100 |
|
|
120
120
|
|
|
121
121
|
### 步骤5:实现变声效果
|
|
122
122
|
|
|
123
|
-
当主播希望改变自己的声音时,您可以调用 `setAudioChangerType(type:)
|
|
123
|
+
当主播希望改变自己的声音时,您可以调用 `setAudioChangerType(type:)` 方法,传入相应的 Type 枚举值即可切换效果。
|
|
124
124
|
|
|
125
125
|
#### 示例代码:
|
|
126
126
|
``` swift
|
|
@@ -131,13 +131,14 @@ audioEffectStore.setAudioChangerType(type: .none)
|
|
|
131
131
|
```
|
|
132
132
|
|
|
133
133
|
#### setAudioChangerType 接口参数
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
134
|
+
|
|
135
|
+
|**参数名**|**类型**|**描述**|
|
|
136
|
+
|---------|---------|---------|
|
|
137
|
+
|`type`|`AudioChangerType`|变声效果枚举。|
|
|
137
138
|
|
|
138
139
|
### 步骤6:实现混响效果
|
|
139
140
|
|
|
140
|
-
|
|
141
|
+
当主播希望给自己的声音添加混响效果时,您可以调用 `setAudioReverbType(type:)` 方法,传入相应的 Type 枚举值即可切换效果。
|
|
141
142
|
``` swift
|
|
142
143
|
// 示例:设置为“KTV”混响效果
|
|
143
144
|
audioEffectStore.setAudioReverbType(type: .ktv)
|
|
@@ -146,22 +147,23 @@ audioEffectStore.setAudioReverbType(type: .none)
|
|
|
146
147
|
```
|
|
147
148
|
|
|
148
149
|
#### setAudioReverbType 接口参数
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
150
|
+
|
|
151
|
+
|**参数名**|**类型**|**描述**|
|
|
152
|
+
|---------|---------|---------|
|
|
153
|
+
|`type`|`AudioReverbType`|混响效果枚举。|
|
|
152
154
|
|
|
153
155
|
### 步骤7:重置音效设置
|
|
154
156
|
|
|
155
157
|
> **重要:**
|
|
156
158
|
>
|
|
157
159
|
|
|
158
|
-
> AudioEffectStore和DeviceStore是单例,这意味着音效和设备设置是全局生效的,如果您在当前直播间的设置不想影响到您创建的其他直播间,就需要在当前直播间结束的时候重置音效和设备设置。
|
|
160
|
+
> `AudioEffectStore` 和 `DeviceStore` 是单例,这意味着音效和设备设置是全局生效的,如果您在当前直播间的设置不想影响到您创建的其他直播间,就需要在当前直播间结束的时候重置音效和设备设置。
|
|
159
161
|
>
|
|
160
162
|
|
|
161
163
|
以下两种情况您可能需要重置音效设置:
|
|
162
164
|
1. 当前直播间结束时,需要重置音效设置。
|
|
163
165
|
|
|
164
|
-
2. 您需要提供“一键恢复”的功能,可以通过调用 store
|
|
166
|
+
2. 您需要提供“一键恢复”的功能,可以通过调用 store 的 `reset()` 方法实现。
|
|
165
167
|
|
|
166
168
|
``` swift
|
|
167
169
|
class YourMainViewController: UIViewController {
|
|
@@ -175,16 +177,17 @@ audioEffectStore.setAudioReverbType(type: .none)
|
|
|
175
177
|
## API 文档
|
|
176
178
|
|
|
177
179
|
关于 [AudioEffectStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/audioeffectstore) 和 [DeviceStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/devicestore) 及其相关类的所有公开接口、属性的详细信息,请参阅随 [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) 框架的官方 API 文档。
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
|
180
|
+
|
|
181
|
+
|**Store/Component**|**功能描述**|**API 文档**|
|
|
182
|
+
|---------|---------|---------|
|
|
183
|
+
|AudioEffectStore|音效管理:进行音效设置,并获取实时音效状态。|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/audioeffectstore/)|
|
|
184
|
+
|DeviceStore |设备管理:进行摄像头、麦克风操作,并获取实时设备状态。|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/devicestore)|
|
|
182
185
|
|
|
183
186
|
## 常见问题
|
|
184
187
|
|
|
185
188
|
### 音效和设备接口的调用时机有没有要求?
|
|
186
189
|
|
|
187
|
-
没有限制。`AudioEffectStore
|
|
190
|
+
没有限制。`AudioEffectStore` 和 `DeviceStore` 的设置是全局生效的,您可以在进入直播间之前或之后随时调用相关接口(例如设置变声、混响或耳返),设置会立即生效并被保留。
|
|
188
191
|
|
|
189
192
|
### **“人声音量” 和“耳返音量” 有什么区别?**
|
|
190
193
|
|
|
@@ -195,7 +198,7 @@ audioEffectStore.setAudioReverbType(type: .none)
|
|
|
195
198
|
|
|
196
199
|
### **新创建的直播间为什么直接就有音效、或者出现音量很大、很小等问题?**
|
|
197
200
|
|
|
198
|
-
`AudioEffectStore
|
|
201
|
+
`AudioEffectStore` 和 `DeviceStore` 是单例,这意味着音效和设备设置是全局生效的,出现这种情况很可能是因为您之前设置过音效但是没有重置,需要在合适的地方调用 `reset()` 方法重置。
|
|
199
202
|
|
|
200
203
|
### **为什么我开启了“耳返”,但是听不到自己的声音?**
|
|
201
204
|
|
|
@@ -14,17 +14,19 @@
|
|
|
14
14
|
## 核心概念解析
|
|
15
15
|
|
|
16
16
|
在开始集成之前,我们先通过下表了解一下 BarrageStore 相关的几个核心概念:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
|
21
|
-
|
|
|
17
|
+
|
|
18
|
+
|**核心概念**|**类型**|**核心职责与描述**|
|
|
19
|
+
|---------|---------|---------|
|
|
20
|
+
|[Barrage](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/barrage)|`struct`|代表一条弹幕消息的数据模型。它包含了发送者信息 (`sender`)、消息内容 (`textContent` 或 `data`)、消息类型 (`messageType`) 等所有关键信息。|
|
|
21
|
+
|[BarrageState](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/barragestate)|`struct`|代表弹幕模块的当前状态。其核心属性 `messageList` 是一个 `[Barrage]` 数组,按时间顺序存储了当前直播间的所有弹幕消息,是 UI 渲染的数据源。|
|
|
22
|
+
|[BarrageStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/barragestore)|`class`|这是与弹幕功能交互的核心管理类。通过它,您可以发送消息 (`sendTextMessage`, `sendCustomMessage`),并通过订阅其 `state` 属性来接收和监听所有弹幕消息的更新。|
|
|
22
23
|
|
|
23
24
|
## 实现步骤
|
|
24
25
|
|
|
25
26
|
### 步骤1:组件集成
|
|
27
|
+
- **视频直播**:请参考 开播与观看 集成 **AtomicXCore**,完成接入。
|
|
26
28
|
|
|
27
|
-
|
|
29
|
+
- **语聊房**:请参考 开播与收听 集成 **AtomicXCore**,完成接入。
|
|
28
30
|
|
|
29
31
|
### 步骤2:初始化并监听弹幕
|
|
30
32
|
|
|
@@ -95,11 +97,12 @@ extension BarrageManager {
|
|
|
95
97
|
```
|
|
96
98
|
|
|
97
99
|
#### **接口参数**
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
100
|
+
|
|
101
|
+
|**参数**|**类型**|**描述**|
|
|
102
|
+
|---------|---------|---------|
|
|
103
|
+
|`text`|`String`|要发送的文本内容。|
|
|
104
|
+
|`extensionInfo`|`[String: String]?`|附加的扩展信息,可用于业务自定义。|
|
|
105
|
+
|`completion`|`CompletionClosure?`|发送完成后的回调,包含成功或失败的结果。|
|
|
103
106
|
|
|
104
107
|
### 步骤4:发送自定义弹幕
|
|
105
108
|
|
|
@@ -134,11 +137,12 @@ extension BarrageManager {
|
|
|
134
137
|
```
|
|
135
138
|
|
|
136
139
|
#### **接口参数**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
140
|
+
|
|
141
|
+
|**参数**|**类型**|**描述**|
|
|
142
|
+
|---------|---------|---------|
|
|
143
|
+
|`businessId`|`String`|业务唯一标识符,例如 "live_gift",用于接收端区分不同的自定义消息。|
|
|
144
|
+
|`data`|`String`|业务数据,通常为 JSON 格式的字符串。|
|
|
145
|
+
|`completion`|`CompletionClosure?`|发送完成后的回调。|
|
|
142
146
|
|
|
143
147
|
### 步骤5:在本地插入提示消息
|
|
144
148
|
|
|
@@ -161,9 +165,10 @@ extension BarrageManager {
|
|
|
161
165
|
```
|
|
162
166
|
|
|
163
167
|
#### **接口参数**
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
168
|
+
|
|
169
|
+
|**参数**|**类型**|**描述**|
|
|
170
|
+
|---------|---------|---------|
|
|
171
|
+
|`message`|`Barrage`|要在本地插入的消息对象。SDK 会将此消息对象追加到 BarrageState 的 messageList 中。|
|
|
167
172
|
|
|
168
173
|
### 步骤6:管理用户发言(禁言与解禁)
|
|
169
174
|
|
|
@@ -230,7 +235,7 @@ liveListStore.updateLiveInfo(currentLiveInfo, modifyFlag: .isMessageDisable) { r
|
|
|
230
235
|
|
|
231
236
|
#### 技术挑战
|
|
232
237
|
|
|
233
|
-
SDK 会以极高频率返回完整的弹幕列表。如果每次都调用 `tableView.reloadData()`,主线程会被密集的UI布局和渲染操作阻塞,导致界面卡顿。
|
|
238
|
+
SDK 会以极高频率返回完整的弹幕列表。如果每次都调用 `tableView.reloadData()`,主线程会被密集的 UI 布局和渲染操作阻塞,导致界面卡顿。
|
|
234
239
|
|
|
235
240
|
#### 优化方案:批处理与流量削峰 (Batch Processing & Debouncing)
|
|
236
241
|
|
|
@@ -331,7 +336,7 @@ class BarrageUIManager {
|
|
|
331
336
|
``` swift
|
|
332
337
|
import UIKit
|
|
333
338
|
|
|
334
|
-
//
|
|
339
|
+
// 在您的自定义弹幕Cell中
|
|
335
340
|
class BarrageCell: UITableViewCell {
|
|
336
341
|
|
|
337
342
|
// ... (UILabel, UIImageView等子视图的声明)
|
|
@@ -349,7 +354,7 @@ class BarrageCell: UITableViewCell {
|
|
|
349
354
|
}
|
|
350
355
|
|
|
351
356
|
func configure(with viewModel: BarrageViewModel) {
|
|
352
|
-
//
|
|
357
|
+
// 在这里设置您的Label文本、Image图片等
|
|
353
358
|
// 由于开启了异步绘制,这些内容的最终渲染会尽量在后台完成
|
|
354
359
|
}
|
|
355
360
|
|
|
@@ -379,7 +384,7 @@ class BarrageCell: UITableViewCell {
|
|
|
379
384
|
```
|
|
380
385
|
2. **发送端:** 在发送时,将这个 JSON 结构转换为字符串,并通过 `sendCustomMessage` 的 `data` 参数发送出去。`businessId` 可以设置为一个能代表您业务的唯一标识,例如 "`barrage_style_v1`"。
|
|
381
386
|
|
|
382
|
-
3. **接收端**: 在接收到弹幕消息后,检查其 `messageType` 是否为 `.custom` 以及 `businessId` 是否匹配。如果匹配,则解析 `data` 字符串(通常是解析JSON),根据解析出的数据(例如 `color、text`)来渲染您的自定义UI样式。
|
|
387
|
+
3. **接收端**: 在接收到弹幕消息后,检查其 `messageType` 是否为 `.custom` 以及 `businessId` 是否匹配。如果匹配,则解析 `data` 字符串(通常是解析 JSON),根据解析出的数据(例如 `color、text`)来渲染您的自定义 UI 样式。
|
|
383
388
|
|
|
384
389
|
### 我在不同的类、不同的文件中都调用了 `BarrageStore.create(liveID: "some_id")`,这会创建出多个实例导致混乱吗?
|
|
385
390
|
|
|
@@ -400,15 +405,23 @@ class BarrageCell: UITableViewCell {
|
|
|
400
405
|
|
|
401
406
|
`AtomicXCore` 支持拉取历史弹幕消息,但这需要您在**服务端控制台**进行一项简单的配置。配置完成后,SDK 会自动处理后续的一切,您无需编写额外的代码。
|
|
402
407
|
|
|
403
|
-
**步骤1
|
|
404
|
-
|
|
408
|
+
**步骤1:在控制台进行配置**
|
|
409
|
+
|
|
410
|
+
根据您的应用创建方式,选择对应的控制台进行配置(实时音视频控制台或即时通信 IM 控制台)。
|
|
411
|
+
|
|
412
|
+
在控制台的配置页面中,找到**查看直播间历史消息**选项,修改其配置(最大支持 **50** 条消息)。
|
|
413
|
+
- 若您的应用在 [实时音视频控制台](https://console.cloud.tencent.com/trtc/app) 创建,配置步骤如下:
|
|
414
|
+
|
|
415
|
+
左侧导航栏选择**应用管理** > **功能配置 **>** LiveKit 功能**,在**应用管理**选择对应的应用后,单击**查看直播间历史消息 > 编辑**。
|
|
416
|
+
|
|
417
|
+
- 若您的应用在 [即时通信 IM 控制台](https://console.cloud.tencent.com/im/rtc-config) 创建,配置步骤如下:
|
|
405
418
|
|
|
406
|
-
|
|
419
|
+
左侧导航栏选择**音视频服务 RTC**,选择对应的应用后,单击**在线直播/语音聊天室(TUILiveKit) > 配置**。
|
|
407
420
|
|
|
408
|
-
|
|
421
|
+
进入 **LiveKit 功能配置**后,单击**查看直播间历史消息** > **编辑**。
|
|
409
422
|
|
|
410
423
|
**步骤2:客户端无感获取 **
|
|
411
424
|
|
|
412
425
|
完成上述配置后,您的客户端代码**无需做任何改动**。
|
|
413
426
|
|
|
414
|
-
当新用户加入直播间时,`AtomicXCore` 的底层 会自动拉取您配置的历史消息数量。这些历史消息会和实时消息一样,通过您已实现的 `BarrageStore.state` 订阅通道推送给您的UI层。您的应用会像接收实时弹幕一样,自然地接收并展示这些历史弹幕。
|
|
427
|
+
当新用户加入直播间时,`AtomicXCore` 的底层 会自动拉取您配置的历史消息数量。这些历史消息会和实时消息一样,通过您已实现的 `BarrageStore.state` 订阅通道推送给您的 UI 层。您的应用会像接收实时弹幕一样,自然地接收并展示这些历史弹幕。
|
|
@@ -1,8 +1,8 @@
|
|
|
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
|
|
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
|
|
|
5
|
-
`CoGuestStore
|
|
5
|
+
`CoGuestStore` 和 `LiveSeatStore` 支持以下几个主流的场景:
|
|
6
6
|
- **观众申请上麦**:观众主动发起连麦请求,主播在收到请求后进行同意或拒绝。
|
|
7
7
|
|
|
8
8
|
- **主播邀请上麦**:主播可以主动向直播间内的任意一位观众发起连麦邀请。
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
### 步骤1:组件集成
|
|
15
15
|
|
|
16
|
-
请参考
|
|
16
|
+
请参考 开播与收听 集成 **AtomicXCore**。
|
|
17
17
|
|
|
18
18
|
### 步骤2:实现观众申请上麦
|
|
19
19
|
|
|
@@ -56,12 +56,12 @@
|
|
|
56
56
|
.sink { [weak self] event in
|
|
57
57
|
if case let .onGuestApplicationResponded(isAccept, hostUser) = event {
|
|
58
58
|
if isAccept {
|
|
59
|
-
print("主播 \(hostUser.userName)
|
|
59
|
+
print("主播 \(hostUser.userName) 同意了您的申请,准备上麦")
|
|
60
60
|
// 1. 打开麦克风
|
|
61
61
|
DeviceStore.shared.openLocalMicrophone(completion: nil)
|
|
62
62
|
// 2. 在此更新 UI,例如关闭申请按钮,显示连麦中的状态
|
|
63
63
|
} else {
|
|
64
|
-
print("主播 \(hostUser.userName)
|
|
64
|
+
print("主播 \(hostUser.userName) 拒绝了您的申请")
|
|
65
65
|
// 弹窗提示用户申请被拒绝
|
|
66
66
|
}
|
|
67
67
|
}
|
|
@@ -195,9 +195,9 @@
|
|
|
195
195
|
// 在 hostEventPublisher 的订阅中添加
|
|
196
196
|
if case let .onHostInvitationResponded(isAccept, guestUser) = event {
|
|
197
197
|
if isAccept {
|
|
198
|
-
print("观众 \(guestUser.userName)
|
|
198
|
+
print("观众 \(guestUser.userName) 接受了您的邀请")
|
|
199
199
|
} else {
|
|
200
|
-
print("观众 \(guestUser.userName)
|
|
200
|
+
print("观众 \(guestUser.userName) 拒绝了您的邀请")
|
|
201
201
|
}
|
|
202
202
|
}
|
|
203
203
|
```
|
|
@@ -263,9 +263,10 @@ seatStore.unmuteMicrophone(completion: nil) //解除静音
|
|
|
263
263
|
```
|
|
264
264
|
|
|
265
265
|
#### unmuteMicrophone 接口参数:
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
266
|
+
|
|
267
|
+
|**参数**|**类型**|**描述**|
|
|
268
|
+
|---------|---------|---------|
|
|
269
|
+
|`completion`|`CompletionClosure?`|操作完成后的回调。|
|
|
269
270
|
|
|
270
271
|
### 主播远程控制麦上用户开麦或关麦
|
|
271
272
|
|
|
@@ -320,16 +321,18 @@ seatStore.liveSeatEventPublisher
|
|
|
320
321
|
```
|
|
321
322
|
|
|
322
323
|
#### closeRemoteMicrophone 接口参数:
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
324
|
+
|
|
325
|
+
|**参数**|**类型**|**描述**|
|
|
326
|
+
|---------|---------|---------|
|
|
327
|
+
|`userID`|`String`|被操作的用户 `userID`。|
|
|
328
|
+
|`completion`|`CompletionClosure?`|请求完成后的回调。|
|
|
327
329
|
|
|
328
330
|
#### openRemoteMicrophone 接口参数:
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
331
|
+
|
|
332
|
+
|**参数**|**类型**|**描述**|
|
|
333
|
+
|---------|---------|---------|
|
|
334
|
+
|`userID`|`String`|被操作的用户 `userID`。|
|
|
335
|
+
|`completion`|`CompletionClosure?`|请求完成后的回调。|
|
|
333
336
|
|
|
334
337
|
### 主播将麦上用户踢下麦位
|
|
335
338
|
|
|
@@ -369,17 +372,18 @@ guestStore
|
|
|
369
372
|
```
|
|
370
373
|
|
|
371
374
|
#### kickUserOutOfSeat 接口参数:
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
375
|
+
|
|
376
|
+
|**参数**|**类型**|**描述**|
|
|
377
|
+
|---------|---------|---------|
|
|
378
|
+
|`userID`|`String`|被踢下麦的用户 `userID`。|
|
|
379
|
+
|`completion`|`CompletionClosure?`|请求完成后的回调。|
|
|
376
380
|
|
|
377
381
|
### 主播锁定和解锁麦位
|
|
378
382
|
|
|
379
383
|
主播可以锁定或解锁某个麦位。
|
|
380
384
|
|
|
381
385
|
#### 实现方式:
|
|
382
|
-
1. **锁定麦位**:主播可调用 `lockSeat` 方法锁定指定索引的麦位,麦位被锁定后,观众无法通过 `applyForSeat`
|
|
386
|
+
1. **锁定麦位**:主播可调用 `lockSeat` 方法锁定指定索引的麦位,麦位被锁定后,观众无法通过 `applyForSeat` 或 `takeSeat` 占用该麦位。
|
|
383
387
|
|
|
384
388
|
2. **解锁麦位**:调用 `unlockSeat` 可以解锁麦位,解锁后该麦位可以再次被占用。
|
|
385
389
|
|
|
@@ -401,25 +405,27 @@ seatStore.unlockSeat(seatIndex: 2) { result in
|
|
|
401
405
|
```
|
|
402
406
|
|
|
403
407
|
#### lockSeat 接口参数:
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
+
|
|
409
|
+
|**参数**|**类型**|**描述**|
|
|
410
|
+
|---------|---------|---------|
|
|
411
|
+
|`seatIndex`|`Int`|需要锁定的麦位索引。|
|
|
412
|
+
|`completion`|`CompletionClosure?`|请求完成后的回调。|
|
|
408
413
|
|
|
409
414
|
#### unlockSeat 接口参数:
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
415
|
+
|
|
416
|
+
|**参数**|**类型**|**描述**|
|
|
417
|
+
|---------|---------|---------|
|
|
418
|
+
|`seatIndex`|`Int`|需要解锁的麦位索引。|
|
|
419
|
+
|`completion`|`CompletionClosure?`|请求完成后的回调。|
|
|
414
420
|
|
|
415
421
|
### 移动麦位
|
|
416
422
|
|
|
417
|
-
|
|
423
|
+
主播和普通上麦用户可以调用 `moveUserToSeat(userID:targetIndex:policy:completion:)`移动麦位。
|
|
418
424
|
|
|
419
425
|
#### 实现方式:
|
|
420
|
-
1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex
|
|
426
|
+
1. **主播移动麦位**:主播可以调用此接口将任意用户移动到指定麦位。此时 `userID` 传入目标用户的 ID,`targetIndex` 是目标麦位索引,`policy` 参数来指定如果目标麦位有人时的移动策略,详细参见 接口参数 说明。
|
|
421
427
|
|
|
422
|
-
2. **普通上麦用户移动自己麦位**:普通上麦用户也可以调用此接口来移动自己。此时 `userID` 必须传入用户自己的 ID,`targetIndex`
|
|
428
|
+
2. **普通上麦用户移动自己麦位**:普通上麦用户也可以调用此接口来移动自己。此时 `userID` 必须传入用户自己的 ID,`targetIndex` 传入想去的新麦位索引,此时 `policy` 参数无效,如果目标麦位有人时会报错并停止移动。
|
|
423
429
|
|
|
424
430
|
#### 示例代码:
|
|
425
431
|
``` swift
|
|
@@ -435,27 +441,28 @@ seatStore.moveUserToSeat(userID: "userC",
|
|
|
435
441
|
```
|
|
436
442
|
|
|
437
443
|
#### moveUserToSeat 接口参数:
|
|
438
|
-
|
|
|
444
|
+
| <strong>参数</strong> | <strong>类型</strong> | <strong>描述</strong> |
|
|
439
445
|
| --- | --- | --- |
|
|
440
|
-
|
|
|
441
|
-
|
|
|
442
|
-
|
|
|
443
|
-
|
|
|
446
|
+
| <code>userID</code> | <code>String</code> | 需要移麦的用户 <code>userID</code>。 |
|
|
447
|
+
| <code>targetIndex</code> | <code>Int</code> | 目标麦位索引。 |
|
|
448
|
+
| <code>policy</code> | <code>MoveSeatPolicy?</code> | 目标麦位有人时的移动策略枚举:<br>- <code>abortWhenOccupied</code>:目标麦位有人时放弃移动(默认策略)<br>- <code>forceReplace</code>:强制替换目标麦位上的用户,被替换的用户将会被踢下麦<br>- <code>swapPosition</code>:与目标麦位用户交换位置。 |
|
|
449
|
+
| <code>completion</code> | <code>CompletionClosure?</code> | 请求完成后的回调。 |
|
|
444
450
|
|
|
445
451
|
## API 文档
|
|
446
452
|
|
|
447
453
|
关于 [CoGuestStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore) 和 [LiveSeatStore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore) 及其相关类的所有公开接口、属性和方法的详细信息,请参阅 [AtomicXCore](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) 框架的官方 API 文档。本指南使用到的相关 Store 如下:
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
|
454
|
+
|
|
455
|
+
|**Store/Component**|**功能描述**|**API 文档**|
|
|
456
|
+
|---------|---------|---------|
|
|
457
|
+
|CoGuestStore|观众连麦管理:连麦申请 / 邀请 / 同意 / 拒绝,连麦成员权限控制(麦克风 / 摄像头),状态同步。|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cogueststore)|
|
|
458
|
+
|LiveSeatStore|麦位管理:静音/解除静音,锁定/解锁麦位,踢人下麦、远程控制麦上用户麦克风,麦列表状态监听|[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore)|
|
|
452
459
|
|
|
453
460
|
## 常见问题
|
|
454
461
|
|
|
455
462
|
### 语音房连麦和视频直播连麦的实现有何不同?
|
|
456
463
|
|
|
457
464
|
两者的主要区别在于业务形态与 UI 展现:
|
|
458
|
-
- 视频直播:核心是视频画面。您会使用 `LiveCoreView` 作为核心组件来渲染主播和连麦观众的视频流。UI 的重点是处理视频画面的布局、大小,以及通过 `VideoViewDelegate`
|
|
465
|
+
- 视频直播:核心是视频画面。您会使用 `LiveCoreView` 作为核心组件来渲染主播和连麦观众的视频流。UI 的重点是处理视频画面的布局、大小,以及通过 `VideoViewDelegate` 在视频流上添加挂件(例如昵称、占位图)。您可以同时打开摄像头,麦克风。
|
|
459
466
|
|
|
460
467
|
- 语音房(语聊房):核心是麦位网格。您不会使用 `LiveCoreView`,而是会基于 `LiveSeatStore` 的 `state`(特别是 `seatList`)来构建一个网格 UI(例如 `UICollectionView`)。UI 的重点是实时显示每个麦位 `SeatInfo` 的状态:是否有人、是否静音、是否被锁定 ,以及是否正在说话。您只需要打开麦克风。
|
|
461
468
|
|
|
@@ -485,8 +492,8 @@ seatStore.moveUserToSeat(userID: "userC",
|
|
|
485
492
|
|
|
486
493
|
推荐的工作流程:您应该遵循“设备只开一次,麦上只用静音切换”的原则
|
|
487
494
|
|
|
488
|
-
1. **上麦时**:当观众成功上麦,调用一次 `openLocalMicrophone
|
|
495
|
+
1. **上麦时**:当观众成功上麦,调用一次 `openLocalMicrophone` 来启动设备。
|
|
489
496
|
|
|
490
|
-
2. **在麦上时**:用户在麦位上所有的“开麦”和“闭麦”操作,都应该调用 `unmuteMicrophone
|
|
497
|
+
2. **在麦上时**:用户在麦位上所有的“开麦”和“闭麦”操作,都应该调用 `unmuteMicrophone` 和 `muteMicrophone` 来控制上行音频流的通断。
|
|
491
498
|
|
|
492
|
-
3. **下麦时**:当用户下麦(例如调用 `disconnect
|
|
499
|
+
3. **下麦时**:当用户下麦(例如调用 `disconnect`),调用 `closeLocalMicrophone` 来释放设备。
|