@tencentcloud/sdk-mcp 1.6.7 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/README.md +54 -35
- package/knowledge/build-index.js +32 -5
- package/knowledge/chunker.js +82 -14
- package/knowledge/chunking-policy.js +100 -0
- package/knowledge/content-loader.js +3 -1
- package/knowledge/frontmatter-meta.js +167 -0
- package/knowledge/path-meta.js +28 -6
- package/knowledge/search/exact-lookup.js +26 -123
- package/knowledge/search/filter-pool.js +17 -26
- package/knowledge/search/framework-fallback.js +22 -0
- package/knowledge/search/intent-router.js +13 -0
- package/knowledge/search/query-normalizer.js +129 -0
- package/knowledge/search/search-core.js +391 -0
- package/knowledge/search/search-knowledge.js +351 -323
- package/knowledge/search/search-message.js +87 -0
- package/knowledge/search/search-pass.js +428 -0
- package/knowledge/search/search-types.js +1 -0
- package/knowledge/search/url-row-scorer.js +258 -0
- package/package.json +1 -1
- package/resource/_schema/feature-aliases.yaml +1 -0
- package/resource/_schema/query-normalization.yaml +9 -0
- package/resource/index/manifest.json +1 -1
- package/resource/integration/callkit/preset/android/integration.md +0 -14
- package/resource/integration/callkit/preset/flutter/integration.md +0 -9
- package/resource/integration/callkit/preset/ios/integration.md +2 -14
- package/resource/integration/callkit/preset/react/integration.md +0 -21
- package/resource/integration/callkit/preset/vue/integration.md +0 -27
- package/resource/integration/chat/preset/android/integration.md +3 -10
- package/resource/integration/chat/preset/flutter/integration.md +12 -13
- package/resource/integration/chat/preset/ios/integration.md +9 -16
- package/resource/integration/chat/preset/react/integration.md +1 -9
- package/resource/integration/chat/preset/uni-app/integration.md +0 -9
- package/resource/integration/chat/preset/vue/integration.md +3 -13
- package/resource/integration/livekit/preset/live/android/live-host-integration.md +0 -4
- package/resource/integration/livekit/preset/live/android/prepare-integration.md +8 -21
- package/resource/integration/livekit/preset/live/ios/live-audience-integration.md +0 -1
- package/resource/integration/livekit/preset/live/ios/live-host-integration.md +0 -5
- package/resource/integration/livekit/preset/live/ios/live-list-integration.md +0 -4
- package/resource/integration/livekit/preset/live/ios/prepare-integration.md +0 -9
- package/resource/integration/livekit/preset/live/vue/live-list-integration.md +1 -5
- package/resource/integration/livekit/preset/live/vue/live-player-desk-integration.md +38 -147
- package/resource/integration/livekit/preset/live/vue/live-player-h5-integration.md +1 -6
- package/resource/integration/livekit/preset/live/vue/live-pusher-integration.md +432 -286
- package/resource/integration/roomkit/preset/vue/integration.md +11 -24
- package/resource/knowledge/callkit/best-practice/callkit-miniprogram/uniapp-shrink.md +64 -0
- package/resource/knowledge/callkit/best-practice/common/call-autoplay-blocked.md +81 -0
- package/resource/knowledge/callkit/best-practice/common/call-message-in-chat.md +84 -0
- package/resource/knowledge/callkit/best-practice/common/call-vs-calls.md +114 -0
- package/resource/knowledge/callkit/best-practice/common/callengine-call-flow.md +128 -0
- package/resource/knowledge/callkit/best-practice/common/callengine-log-level.md +72 -0
- package/resource/knowledge/callkit/best-practice/common/callkit-get-engine-instance.md +87 -0
- package/resource/knowledge/callkit/best-practice/common/callkit-get-roomid.md +83 -0
- package/resource/knowledge/callkit/best-practice/common/callkit-limitations.md +37 -0
- package/resource/knowledge/callkit/best-practice/common/callkit-user-register-and-kicked.md +103 -0
- package/resource/knowledge/callkit/core-sdk/android/answer-call.md +1 -20
- package/resource/knowledge/callkit/core-sdk/android/make-call.md +0 -12
- package/resource/knowledge/callkit/core-sdk/android/offline-push.md +1 -12
- package/resource/knowledge/callkit/core-sdk/flutter/answer-call.md +0 -19
- package/resource/knowledge/callkit/core-sdk/flutter/make-call.md +0 -13
- package/resource/knowledge/callkit/core-sdk/flutter/offline-push.md +1 -17
- package/resource/knowledge/callkit/core-sdk/ios/answer-call.md +0 -13
- package/resource/knowledge/callkit/core-sdk/ios/make-call.md +0 -13
- package/resource/knowledge/callkit/core-sdk/ios/offline-push.md +0 -12
- package/resource/knowledge/callkit/core-sdk/miniprogram/call-engine.md +0 -1
- package/resource/knowledge/callkit/core-sdk/miniprogram/call-event.md +0 -2
- package/resource/knowledge/callkit/core-sdk/uni-app/answer-call.md +0 -15
- package/resource/knowledge/callkit/core-sdk/uni-app/make-call.md +0 -15
- package/resource/knowledge/callkit/core-sdk/web/call-engine.md +0 -1
- package/resource/knowledge/callkit/core-sdk/web/call-event.md +0 -1
- package/resource/knowledge/callkit/core-sdk/web/callengine-api-overview.md +0 -1
- package/resource/knowledge/callkit/faq/android.md +5 -15
- package/resource/knowledge/callkit/faq/common.md +0 -1
- package/resource/knowledge/callkit/faq/ios.md +1 -4
- package/resource/knowledge/callkit/faq/uniapp-app.md +0 -2
- package/resource/knowledge/callkit/faq/uniapp-miniprogram.md +0 -5
- package/resource/knowledge/callkit/faq/web.md +1 -5
- package/resource/knowledge/callkit/preset/android/api.md +0 -6
- package/resource/knowledge/callkit/preset/ios/api.md +0 -4
- package/resource/knowledge/callkit/preset/miniprogram/api.md +0 -2
- package/resource/knowledge/callkit/preset/react/api.md +3 -154
- package/resource/knowledge/callkit/preset/vue/api.md +3 -42
- package/resource/knowledge/chat/best-practice/common/avchatroom-message-loss-diagnosis.md +71 -0
- package/resource/knowledge/chat/best-practice/common/group-conversation-cleanup-on-system-notice.md +67 -0
- package/resource/knowledge/chat/best-practice/common/image-message-url-lifecycle.md +63 -0
- package/resource/knowledge/chat/best-practice/common/login-repeat-2025-diagnosis.md +65 -0
- package/resource/knowledge/chat/best-practice/common/message-read-report-and-receipt.md +72 -0
- package/resource/knowledge/chat/best-practice/common/message-receive-event.md +70 -0
- package/resource/knowledge/chat/best-practice/common/message-risk-error-and-render.md +69 -0
- package/resource/knowledge/chat/best-practice/common/message-unread-count.md +71 -0
- package/resource/knowledge/chat/best-practice/miniprogram/audio-message-send.md +118 -0
- package/resource/knowledge/chat/best-practice/miniprogram/login-timeout-2801-diagnosis.md +67 -0
- package/resource/knowledge/chat/best-practice/miniprogram/media-upload-fail-diagnosis.md +68 -0
- package/resource/knowledge/chat/best-practice/web/audio-message-send.md +123 -0
- package/resource/knowledge/chat/preset/android/features/chat-setting.md +1 -4
- package/resource/knowledge/chat/preset/android/features/contact-list.md +0 -5
- package/resource/knowledge/chat/preset/android/features/conversation-list.md +1 -9
- package/resource/knowledge/chat/preset/android/features/language.md +1 -11
- package/resource/knowledge/chat/preset/android/features/message-input.md +1 -8
- package/resource/knowledge/chat/preset/android/features/message-list.md +1 -10
- package/resource/knowledge/chat/preset/android/features/search.md +0 -7
- package/resource/knowledge/chat/preset/android/features/theme.md +0 -6
- package/resource/knowledge/chat/preset/android-view/integration.md +3 -5
- package/resource/knowledge/chat/preset/flutter/features/chat-setting.md +1 -4
- package/resource/knowledge/chat/preset/flutter/features/contact-list.md +1 -6
- package/resource/knowledge/chat/preset/flutter/features/conversation-list.md +1 -9
- package/resource/knowledge/chat/preset/flutter/features/language.md +0 -3
- package/resource/knowledge/chat/preset/flutter/features/message-input.md +1 -8
- package/resource/knowledge/chat/preset/flutter/features/message-list.md +1 -10
- package/resource/knowledge/chat/preset/flutter/features/search.md +0 -7
- package/resource/knowledge/chat/preset/flutter/features/theme.md +0 -6
- package/resource/knowledge/chat/preset/ios/features/chat-setting.md +1 -4
- package/resource/knowledge/chat/preset/ios/features/contact-list.md +1 -8
- package/resource/knowledge/chat/preset/ios/features/conversation-list.md +1 -9
- package/resource/knowledge/chat/preset/ios/features/language.md +0 -11
- package/resource/knowledge/chat/preset/ios/features/message-input.md +1 -8
- package/resource/knowledge/chat/preset/ios/features/message-list.md +1 -10
- package/resource/knowledge/chat/preset/ios/features/search.md +0 -5
- package/resource/knowledge/chat/preset/ios/features/theme.md +0 -6
- package/resource/knowledge/chat/preset/ios-uikit/integration.md +5 -17
- package/resource/knowledge/chat/preset/react/features/chat-setting.md +0 -2
- package/resource/knowledge/chat/preset/react/features/contact-list.md +0 -23
- package/resource/knowledge/chat/preset/react/features/conversation-actions.md +2 -11
- package/resource/knowledge/chat/preset/react/features/conversation-list.md +2 -23
- package/resource/knowledge/chat/preset/react/features/conversation-preview.md +0 -5
- package/resource/knowledge/chat/preset/react/features/search.md +0 -1
- package/resource/knowledge/chat/preset/vue/features/chat-header.md +1 -3
- package/resource/knowledge/chat/preset/vue/features/chat-setting.md +3 -5
- package/resource/knowledge/chat/preset/vue/features/contact-list.md +3 -9
- package/resource/knowledge/chat/preset/vue/features/conversation-actions.md +0 -3
- package/resource/knowledge/chat/preset/vue/features/conversation-list.md +2 -13
- package/resource/knowledge/chat/preset/vue/features/conversation-preview.md +2 -5
- package/resource/knowledge/chat/preset/vue/features/conversation-search.md +1 -0
- package/resource/knowledge/chat/preset/vue/features/message-input.md +2 -4
- package/resource/knowledge/chat/preset/vue/features/message-list.md +2 -4
- package/resource/knowledge/chat/preset/vue/features/search.md +4 -1
- package/resource/knowledge/chat/preset/vue/features/theme.md +4 -6
- package/resource/knowledge/chat/urls/sdk/web.md +1 -1
- package/resource/knowledge/livekit/best-practice/android/voice-room-anchor-start.md +124 -0
- package/resource/knowledge/livekit/best-practice/common/admin-take-seat.md +73 -0
- package/resource/knowledge/livekit/best-practice/common/audience-leave-live.md +81 -0
- package/resource/knowledge/livekit/best-practice/common/voice-room-no-audio-troubleshoot.md +100 -0
- package/resource/knowledge/livekit/best-practice/common/voice-room-seat-list-change.md +65 -0
- package/resource/knowledge/livekit/best-practice/flutter/voice-room-anchor-start.md +126 -0
- package/resource/knowledge/livekit/best-practice/ios/voice-room-anchor-start.md +130 -0
- package/resource/knowledge/livekit/core-sdk/api-reference/android/AudioEffectStore.md +0 -7
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BarrageStore.md +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/android/BattleStore.md +0 -3
- 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 +0 -2
- 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 +0 -2
- 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 +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BaseBeautyStore.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/flutter/BattleStore.md +0 -3
- 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 +0 -2
- 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 +0 -2
- 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 +0 -3
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BaseBeautyStore.md +0 -1
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/BattleStore.md +0 -3
- 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 +0 -2
- 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 +0 -2
- package/resource/knowledge/livekit/core-sdk/api-reference/ios/LoginStore.md +1 -3
- package/resource/knowledge/livekit/core-sdk/features/android/audience-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/android/audio-effect.md +1 -3
- package/resource/knowledge/livekit/core-sdk/features/android/barrage.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/android/base-beauty.md +0 -2
- package/resource/knowledge/livekit/core-sdk/features/android/gift.md +2 -7
- package/resource/knowledge/livekit/core-sdk/features/android/live-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/flutter/audience-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/flutter/audio-effect.md +0 -4
- package/resource/knowledge/livekit/core-sdk/features/flutter/barrage.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/flutter/base-beauty.md +0 -2
- package/resource/knowledge/livekit/core-sdk/features/flutter/gift.md +3 -7
- package/resource/knowledge/livekit/core-sdk/features/flutter/live-list.md +3 -2
- package/resource/knowledge/livekit/core-sdk/features/ios/audience-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/ios/audio-effect.md +1 -3
- package/resource/knowledge/livekit/core-sdk/features/ios/barrage.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/ios/base-beauty.md +0 -2
- package/resource/knowledge/livekit/core-sdk/features/ios/gift.md +2 -7
- package/resource/knowledge/livekit/core-sdk/features/ios/live-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/audience-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/audio-effect.md +1 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/barrage.md +2 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/base-beauty.md +0 -2
- package/resource/knowledge/livekit/core-sdk/features/uni-app/gift.md +4 -8
- package/resource/knowledge/livekit/core-sdk/features/uni-app/live-list.md +2 -2
- package/resource/knowledge/livekit/core-sdk/live/android/co-guest-interaction.md +0 -3
- package/resource/knowledge/livekit/core-sdk/live/android/host-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/android/integration.md +0 -7
- package/resource/knowledge/livekit/core-sdk/live/flutter/co-guest-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/flutter/host-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/flutter/integration.md +1 -7
- package/resource/knowledge/livekit/core-sdk/live/ios/co-guest-interaction.md +0 -3
- package/resource/knowledge/livekit/core-sdk/live/ios/host-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/ios/integration.md +0 -7
- package/resource/knowledge/livekit/core-sdk/live/uni-app/co-guest-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/uni-app/host-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/live/uni-app/integration.md +0 -5
- package/resource/knowledge/livekit/core-sdk/voice/android/co-guest-interaction.md +1 -3
- package/resource/knowledge/livekit/core-sdk/voice/android/host-interaction.md +4 -13
- package/resource/knowledge/livekit/core-sdk/voice/android/integration.md +5 -5
- package/resource/knowledge/livekit/core-sdk/voice/flutter/co-guest-interaction.md +0 -3
- package/resource/knowledge/livekit/core-sdk/voice/flutter/integration.md +18 -21
- package/resource/knowledge/livekit/core-sdk/voice/ios/co-guest-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/voice/ios/host-interaction.md +2 -11
- package/resource/knowledge/livekit/core-sdk/voice/ios/integration.md +8 -8
- package/resource/knowledge/livekit/core-sdk/voice/uni-app/co-guest-interaction.md +0 -2
- package/resource/knowledge/livekit/core-sdk/voice/uni-app/integration.md +1 -4
- package/resource/knowledge/livekit/faq/error-code.md +1 -1
- package/resource/knowledge/livekit/preset/live/vue/features/barrage.md +0 -5
- 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 +0 -3
- package/resource/knowledge/push/api-reference/donut.md +1 -6
- package/resource/knowledge/push/api-reference/harmonyos.md +0 -2
- package/resource/knowledge/push/api-reference/react-native.md +0 -3
- package/resource/knowledge/push/api-reference/uni-app.md +3 -5
- package/resource/knowledge/push/api-reference/unity.md +0 -1
- package/resource/knowledge/push/api-reference/unreal-engine.md +0 -1
- package/resource/knowledge/push/config/android/fcm.md +0 -6
- package/resource/knowledge/push/config/android/honor.md +1 -7
- package/resource/knowledge/push/config/android/huawei.md +1 -9
- package/resource/knowledge/push/config/android/meizu.md +1 -7
- package/resource/knowledge/push/config/android/oppo.md +1 -3
- package/resource/knowledge/push/config/android/vivo.md +1 -12
- package/resource/knowledge/push/config/android/xiaomi.md +0 -5
- package/resource/knowledge/push/config/donut.md +0 -12
- package/resource/knowledge/push/config/harmonyos.md +18 -7
- package/resource/knowledge/push/config/ios.md +26 -33
- package/resource/knowledge/push/config/react-native.md +0 -30
- package/resource/knowledge/push/config/unity.md +0 -30
- package/resource/knowledge/push/config/unreal-engine.md +0 -30
- package/resource/knowledge/push/integration/android.md +148 -57
- package/resource/knowledge/push/integration/donut.md +5 -21
- package/resource/knowledge/push/integration/flutter.md +4 -6
- package/resource/knowledge/push/integration/harmonyos.md +17 -16
- package/resource/knowledge/push/integration/ios.md +30 -18
- package/resource/knowledge/push/integration/react-native.md +10 -60
- package/resource/knowledge/push/integration/uni-app.md +3 -25
- package/resource/knowledge/push/integration/unity.md +8 -77
- package/resource/knowledge/push/integration/unreal-engine.md +37 -96
- package/resource/knowledge/roomkit/best-practice/common/room-ghost-member.md +75 -0
- package/resource/knowledge/roomkit/best-practice/common/room-limit-and-multi.md +88 -0
- package/resource/knowledge/roomkit/best-practice/common/room-screen-share-preview.md +87 -0
- package/resource/knowledge/roomkit/best-practice/common/room-status-after-all-leave.md +73 -0
- package/resource/knowledge/roomkit/best-practice/vue/room-uikit-vs-atomicx.md +115 -0
- package/resource/knowledge/roomkit/core-sdk/android/call-user-to-room.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/android/room-participant-state.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/android/room-state.md +3 -5
- package/resource/knowledge/roomkit/core-sdk/android/schedule-room.md +4 -6
- package/resource/knowledge/roomkit/core-sdk/flutter/call-user-to-room.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/flutter/room-participant-state.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/flutter/room-state.md +2 -4
- package/resource/knowledge/roomkit/core-sdk/flutter/schedule-room.md +4 -6
- package/resource/knowledge/roomkit/core-sdk/ios/call-user-to-room.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/ios/room-participant-state.md +0 -2
- package/resource/knowledge/roomkit/core-sdk/ios/room-state.md +3 -5
- package/resource/knowledge/roomkit/core-sdk/ios/schedule-room.md +4 -6
- package/resource/knowledge/roomkit/core-sdk/vue/device-state.md +0 -5
- package/resource/knowledge/roomkit/core-sdk/vue/free-beauty-panel.md +0 -3
- package/resource/knowledge/roomkit/core-sdk/vue/room-chat.md +0 -5
- package/resource/knowledge/roomkit/core-sdk/vue/room-participant-state.md +0 -3
- package/resource/knowledge/roomkit/core-sdk/vue/room-state.md +1 -7
- package/resource/knowledge/roomkit/core-sdk/vue/room-view.md +1 -2
- package/resource/knowledge/roomkit/core-sdk/vue/screen-share.md +0 -1
- package/resource/knowledge/roomkit/core-sdk/vue/virtual-background.md +0 -3
- package/resource/knowledge/roomkit/preset/android/integration.md +202 -6
- package/resource/knowledge/roomkit/preset/flutter/integration.md +1 -16
- package/resource/knowledge/roomkit/preset/ios/integration.md +201 -7
- package/resource/knowledge/roomkit/preset/react/integration.md +205 -4
- package/resource/knowledge/rtcengine/web/api.md +0 -2
- package/resource/knowledge/rtcengine/web/plugin/22-advanced-audio-mixer.md +2 -2
- package/resource/knowledge/rtcengine/web/plugin/23-advanced-support-detection.md +3 -3
- package/resource/knowledge/rtcengine/web/plugin/28-advanced-beauty.md +1 -1
- package/resource/knowledge/rtcengine/web/plugin/30-advanced-cross-room-link.md +2 -0
- package/resource/knowledge/rtcengine/web/plugin/36-advanced-virtual-background.md +0 -4
- package/resource/knowledge/rtcengine/web/plugin/39-advanced-video-decoder.md +2 -0
- package/resource/knowledge/share/userSig.md +2 -2
- package/resource/knowledge/trtc/android/TRTCCloud.md +16 -16
- package/resource/knowledge/trtc/android/TRTCCloudDef.md +5 -5
- package/resource/knowledge/trtc/android/TRTCCloudListener.md +3 -3
- package/resource/knowledge/trtc/android/TXAudioEffectManager.md +2 -2
- package/resource/knowledge/trtc/android/TXDeviceManager.md +1 -1
- package/resource/knowledge/trtc/c++/ITRTCCloud.md +14 -14
- package/resource/knowledge/trtc/c++/ITXAudioEffectManager.md +2 -2
- package/resource/knowledge/trtc/c++/ITXDeviceManager.md +4 -4
- package/resource/knowledge/trtc/c++/TRTCCloudCallback.md +3 -3
- package/resource/knowledge/trtc/c++/TRTCTypeDef.md +5 -5
- package/resource/knowledge/trtc/ios/TRTCCloud.md +14 -14
- package/resource/knowledge/trtc/ios/TRTCCloudDelegate.md +3 -3
- package/resource/knowledge/trtc/ios/TXAudioEffectManager.md +2 -2
- package/resource/knowledge/trtc/ios/TXDeviceManager.md +4 -4
- package/resource/knowledge/trtc/ios/TXLiveSDKTypeDef.md +5 -5
- package/server.js +8 -3
- package/tools/common/finalize_answer.js +9 -1
- package/tools/common/search_trtc_knowledge.js +3 -1
- package/tools/definitions/finalize_answer_def.js +2 -2
- package/tools/definitions/integration-boundary.js +2 -1
- package/tools/definitions/search_trtc_knowledge_def.js +2 -1
- package/utils/report-cls-client.js +3 -3
- package/utils/report-es-client.js +1 -1
- package/cursor-setting.png +0 -0
- package/mcp-server-prompt.png +0 -0
- package/resource/knowledge/callkit/best-practice/web/callengine-invitation.md +0 -80
- package/resource/knowledge/callkit/best-practice/web/callengine-log-control.md +0 -20
- package/resource/knowledge/callkit/best-practice/web/callkit-call-vs-calls.md +0 -116
- package/resource/knowledge/callkit/preset/react/uikit-api-reference.md +0 -475
- package/resource/knowledge/callkit/preset/vue/uikit-api-reference.md +0 -587
- package/resource/knowledge/callkit/preset/web/api.md +0 -79
- package/resource/knowledge/chat/best-practice/web/image-message-url-handling.md +0 -16
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Web TUICallKit 如何获取 TUICallEngine 实例
|
|
3
|
+
product: call
|
|
4
|
+
frameworks: [react, vue, miniprogram, web]
|
|
5
|
+
scope: platform_common
|
|
6
|
+
tags: [TUICallKit, getTUICallEngineInstance, 引擎实例, 底层引擎, 微信原生小程序, uniapp 小程序]
|
|
7
|
+
version_range: ">=4.0.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Web TUICallKit 如何获取 TUICallEngine 实例
|
|
11
|
+
|
|
12
|
+
## 1. 核心结论
|
|
13
|
+
|
|
14
|
+
- 通过 `TUICallKitAPI.getTUICallEngineInstance()` 获取 TUICallEngine 底层引擎实例。
|
|
15
|
+
- 获取引擎实例后,可通过 `.on()` 监听通话事件(如 `ON_CALL_BEGIN`、`ON_CALL_RECEIVED` 等)。
|
|
16
|
+
|
|
17
|
+
## 2. 字段语义对照
|
|
18
|
+
|
|
19
|
+
| 字段/能力 | 作用 | 说明 |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
| `TUICallKitAPI` | TUICallKit API 入口 | 从对应平台的包引入,提供 `getTUICallEngineInstance()` |
|
|
22
|
+
| `getTUICallEngineInstance()` | 获取 TUICallEngine 实例 | 返回引擎实例,用于监听事件和调用底层 API |
|
|
23
|
+
| `TUICallEngine` | 引擎实例 | 通过该方法获取,用于注册事件回调 |
|
|
24
|
+
|
|
25
|
+
## 3. 机制/时序
|
|
26
|
+
|
|
27
|
+
TUICallKit 初始化完成后 -> 调用 `TUICallKitAPI.getTUICallEngineInstance()` 获取引擎实例 -> 使用引擎实例注册事件监听或调用底层 API。
|
|
28
|
+
|
|
29
|
+
需确保 TUICallKit 初始化完成后调用,否则可能返回 `undefined`。
|
|
30
|
+
|
|
31
|
+
## 4. 标准用法
|
|
32
|
+
|
|
33
|
+
1. 从对应平台的包引入 `TUICallKitAPI`。
|
|
34
|
+
2. 调用 `TUICallKitAPI.getTUICallEngineInstance()` 获取引擎实例。
|
|
35
|
+
3. 使用引擎实例注册事件监听或调用其他底层方法。
|
|
36
|
+
|
|
37
|
+
```javascript
|
|
38
|
+
// React: @trtc/calls-uikit-react
|
|
39
|
+
// Vue 3: @trtc/calls-uikit-vue
|
|
40
|
+
// Vue 2.7: @trtc/calls-uikit-vue2
|
|
41
|
+
// Vue 2.6: @trtc/calls-uikit-vue2.6
|
|
42
|
+
// uniapp 小程序: @trtc/calls-uikit-wx-uniapp
|
|
43
|
+
// 微信原生小程序: @trtc/calls-uikit-wx (API 一致,仅包名不同)
|
|
44
|
+
import { TUICallKitAPI } from "@trtc/calls-uikit-react";
|
|
45
|
+
|
|
46
|
+
const tuiCallEngine = TUICallKitAPI.getTUICallEngineInstance();
|
|
47
|
+
|
|
48
|
+
if (tuiCallEngine) {
|
|
49
|
+
// 获取成功,可监听事件或调用底层 API
|
|
50
|
+
tuiCallEngine.on(TUICallEvent.ON_CALL_BEGIN, (event) => {
|
|
51
|
+
console.log('通话建立', event);
|
|
52
|
+
});
|
|
53
|
+
} else {
|
|
54
|
+
console.warn('TUICallEngine 实例未就绪,请确认 TUICallKit 已完成初始化');
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 5. 结果判定
|
|
59
|
+
|
|
60
|
+
- `getTUICallEngineInstance()` 返回非 `undefined` 的引擎实例,可正常使用。
|
|
61
|
+
- 通过引擎实例注册的事件回调能正常触发。
|
|
62
|
+
- 多次调用返回同一个引擎实例(单例)。
|
|
63
|
+
|
|
64
|
+
## 6. 常见误区
|
|
65
|
+
|
|
66
|
+
- 误区 1:在 TUICallKit 初始化完成前调用 `getTUICallEngineInstance()`(返回 `undefined`)。
|
|
67
|
+
- 误区 2:认为每次调用 `getTUICallEngineInstance()` 都会创建新的引擎实例(实际为单例,多次调用返回同一实例)。
|
|
68
|
+
- 误区 3:从小程序的引擎包直接创建实例(应通过 `TUICallKitAPI.getTUICallEngineInstance()` 获取,而非自行创建)。
|
|
69
|
+
|
|
70
|
+
## 7. 问题定义(检索辅助,极简)
|
|
71
|
+
|
|
72
|
+
TUICallKit 用户需要获取底层 TUICallEngine 实例,用于监听通话事件或调用底层 API。
|
|
73
|
+
|
|
74
|
+
## 8. 同义问法覆盖(检索召回,极简)
|
|
75
|
+
|
|
76
|
+
- TUICallKit 怎么获取 TUICallEngine 实例?
|
|
77
|
+
- `getTUICallEngineInstance` 怎么用?
|
|
78
|
+
- TUICallKit Vue 如何获取 TUICallEngine 实例?
|
|
79
|
+
- TUICallKit React 怎么监听底层 TUICallEngine 事件?
|
|
80
|
+
- 小程序 TUICallKit 能获取 TUICallEngine 吗?
|
|
81
|
+
- TUICallKit 获取引擎实例后能做什么?
|
|
82
|
+
|
|
83
|
+
## 9. 参考来源(可选)
|
|
84
|
+
|
|
85
|
+
- React `getTUICallEngineInstance`:`https://cloud.tencent.com/document/product/647/81015#getTUICallEngineInstance`
|
|
86
|
+
- Vue `getTUICallEngineInstance`:`https://cloud.tencent.com/document/product/647/81015#getTUICallEngineInstance`
|
|
87
|
+
- 小程序 `getTUICallEngineInstance`:`https://cloud.tencent.com/document/product/647/78760#getTUICallEngineInstance`
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: 如何获取通话的房间号
|
|
3
|
+
product: call
|
|
4
|
+
frameworks: [react, vue, miniprogram, web]
|
|
5
|
+
scope: platform_common
|
|
6
|
+
tags: [TUICallKit, roomID, 房间号, ON_CALL_BEGIN, ON_CALL_END, callengine, 获取房间号, 通话房间号, Roomid, onCallBegin]
|
|
7
|
+
version_range: ">=4.0.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# TUICallKit 如何获取通话的房间号
|
|
11
|
+
|
|
12
|
+
## 1. 核心结论
|
|
13
|
+
|
|
14
|
+
- 获取通话房间号的方式:通过监听 TUICallEngine 的事件(`ON_CALL_BEGIN`、`ON_CALL_END` 等)即可获取,`event.roomID` 即为当前通话的房间号。
|
|
15
|
+
- 需要先通过 `TUICallKitAPI.getTUICallEngineInstance()` 获取 TUICallEngine 实例,再调用 `on()` 监听事件。
|
|
16
|
+
- React、Vue、小程序接口一致,仅包名不同。
|
|
17
|
+
|
|
18
|
+
## 2. 字段语义对照
|
|
19
|
+
|
|
20
|
+
| 字段/能力 | 作用 | 说明 |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| `TUICallEvent.ON_CALL_BEGIN` | 通话建立事件 | 通话接通时触发,事件中携带 `roomID` |
|
|
23
|
+
| `TUICallEvent.ON_CALL_END` | 通话结束事件 | 通话结束时触发,事件中携带 `roomID` |
|
|
24
|
+
| `TUICallKitAPI.getTUICallEngineInstance()` | 获取 TUICallEngine 实例 | 从 TUICallKit 获取底层引擎实例 |
|
|
25
|
+
| `engine.on(event, handler)` | 监听引擎事件 | 通过引擎实例注册事件回调 |
|
|
26
|
+
| `event.roomID` | 通话房间号 | 事件参数中的房间号字段 |
|
|
27
|
+
|
|
28
|
+
## 3. 机制/时序
|
|
29
|
+
|
|
30
|
+
TUICallKit 初始化 -> 通话接通(`ON_CALL_BEGIN`)-> 通话进行中 -> 通话结束(`ON_CALL_END`)。`ON_CALL_BEGIN` 和 `ON_CALL_END` 等通话相关事件均携带 `roomID`,在回调中读取即可。
|
|
31
|
+
|
|
32
|
+
## 4. 标准用法
|
|
33
|
+
|
|
34
|
+
1. 通过 `TUICallKitAPI.getTUICallEngineInstance()` 获取 TUICallEngine 实例。
|
|
35
|
+
2. 调用 `engine.on()` 监听 `TUICallEvent.ON_CALL_BEGIN` 或 `ON_CALL_END` 事件。
|
|
36
|
+
3. 在回调中读取 `event.roomID` 获取房间号。
|
|
37
|
+
|
|
38
|
+
```javascript
|
|
39
|
+
// Web: @trtc/call-engine-lite-js
|
|
40
|
+
// 小程序: @trtc/call-engine-lite-wx (API 一致,仅包名不同)
|
|
41
|
+
import { TUICallEvent } from "@trtc/call-engine-lite-js";
|
|
42
|
+
|
|
43
|
+
const handleOnCallBegin = function(event) {
|
|
44
|
+
// event.roomID 即为当前通话的房间号
|
|
45
|
+
console.log('通话建立,房间号:', event.roomID);
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
TUICallKitAPI.getTUICallEngineInstance().on(
|
|
49
|
+
TUICallEvent.ON_CALL_BEGIN,
|
|
50
|
+
handleOnCallBegin
|
|
51
|
+
);
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## 5. 结果判定
|
|
55
|
+
|
|
56
|
+
- 通话建立后,`ON_CALL_BEGIN` 回调触发,`event.roomID` 返回有效的房间号。
|
|
57
|
+
- 通话结束后,`ON_CALL_END` 回调触发,也可读取 `event.roomID`。
|
|
58
|
+
- `roomID` 值在通话期间保持不变。
|
|
59
|
+
|
|
60
|
+
## 6. 常见误区
|
|
61
|
+
|
|
62
|
+
- 误区 1:在 TUICallKit 初始化完成前调用 `getTUICallEngineInstance()` 获取实例(需确保初始化完成后再获取)。
|
|
63
|
+
- 误区 2:认为 `roomID` 在通话过程中会变化(同一通话的房间号是固定的)。
|
|
64
|
+
|
|
65
|
+
## 7. 问题定义(检索辅助,极简)
|
|
66
|
+
|
|
67
|
+
Web TUICallKit React/Vue/小程序用户需要获取当前通话的房间号,用于日志记录或与其他服务关联。
|
|
68
|
+
|
|
69
|
+
## 8. 同义问法覆盖(检索召回,极简)
|
|
70
|
+
|
|
71
|
+
- TUICallKit 怎么获取房间号?
|
|
72
|
+
- 通话建立时如何拿到 roomID?
|
|
73
|
+
- `ON_CALL_BEGIN` 事件怎么监听?
|
|
74
|
+
- TUICallKit React 获取通话房间号的方法是什么?
|
|
75
|
+
- 小程序 TUICallKit 怎么拿 roomID?
|
|
76
|
+
- 如何获取通话的房间号 Roomid?
|
|
77
|
+
- Web TUICallKit 如何获取通话的房间号?
|
|
78
|
+
- 通话房间号怎么拿?
|
|
79
|
+
|
|
80
|
+
## 9. 参考来源(可选)
|
|
81
|
+
|
|
82
|
+
- Web `ON_CALL_BEGIN` 文档:`https://cloud.tencent.com/document/product/647/78758#ON_CALL_BEGIN`
|
|
83
|
+
- 小程序 `ON_CALL_BEGIN` 文档:`https://cloud.tencent.com/document/product/647/81012#ON_CALL_BEGIN`
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: TUICallKit 限制说明
|
|
3
|
+
product: call
|
|
4
|
+
frameworks: [react, vue, miniprogram, web]
|
|
5
|
+
scope: platform_common
|
|
6
|
+
tags: [TUICallKit, 限制, 不支持, 离线推送, 支付宝, 头条小程序, 企业微信, 桌面端, 兼容性]
|
|
7
|
+
version_range: ">=2.0.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# TUICallKit 限制说明
|
|
11
|
+
|
|
12
|
+
## 1. 核心结论
|
|
13
|
+
|
|
14
|
+
| 问题 | 结论 |
|
|
15
|
+
|---|---|
|
|
16
|
+
| Web TUICallKit 能否接收离线推送消息? | Web TUICallKit 不支持接收离线推送消息 |
|
|
17
|
+
| 微信小程序 TUICallKit 能否运行到支付宝、头条小程序? | 不能,仅支持运行到微信小程序 |
|
|
18
|
+
| 微信小程序 TUICallKit 能否运行到企业微信里? | 不能,仅支持运行到微信小程序 |
|
|
19
|
+
| 微信小程序 TUICallKit 能否运行到 PC 桌面端微信里? | 不能,仅支持运行到微信小程序 |
|
|
20
|
+
| 微信小程序 TUICallKit 能否接收离线推送消息? | 微信小程序 TUICallKit 不支持接收离线推送消息 |
|
|
21
|
+
|
|
22
|
+
## 3. 机制/时序
|
|
23
|
+
|
|
24
|
+
TUICallKit 各平台的能力边界由底层平台限制决定。微信小程序依赖微信原生能力,无法跨平台运行;Web 端受浏览器自动播放策略和离线推送机制的限制。
|
|
25
|
+
|
|
26
|
+
## 7. 问题定义(检索辅助,极简)
|
|
27
|
+
|
|
28
|
+
用户咨询 TUICallKit 在不同平台/场景下的能力边界,确认是否支持离线推送、跨平台运行等。
|
|
29
|
+
|
|
30
|
+
## 8. 同义问法覆盖(检索召回,极简)
|
|
31
|
+
|
|
32
|
+
- TUICallKit 支持离线推送吗?
|
|
33
|
+
- 微信小程序 TUICallKit 能在支付宝上用吗?
|
|
34
|
+
- TUICallKit 小程序能在企业微信里用吗?
|
|
35
|
+
- TUICallKit 微信小程序支持 PC 端微信吗?
|
|
36
|
+
- TUICallKit Web 端有没有离线消息通知?
|
|
37
|
+
- TUICallKit 小程序只支持微信吗?
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: TUICallKit 用户注册与多实例被踢问题说明
|
|
3
|
+
product: call
|
|
4
|
+
frameworks: [react, vue, miniprogram, web]
|
|
5
|
+
scope: platform_common
|
|
6
|
+
tags: [TUICallKit, 用户注册, init, userSig, 自动创建用户, 多实例登录, 被踢, KICKED_OUT, 排查, 同一浏览器, 多实例, web多实例]
|
|
7
|
+
version_range: ">=4.0.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# TUICallKit 用户注册与多实例被踢问题说明
|
|
11
|
+
|
|
12
|
+
## 1. 核心结论
|
|
13
|
+
|
|
14
|
+
### 用户注册
|
|
15
|
+
|
|
16
|
+
- TUICallKit **没有独立的前端注册接口**。用户注册通过 `init` 接口完成:传入 `userID` 和 `userSig` 即可完成鉴权和登录。
|
|
17
|
+
- 首次使用后端签发的 `userID` 和 `userSig` 登录 TUICallKit 后,如果该 `userID` 在腾讯云 IM 中不存在,系统会自动创建该用户。
|
|
18
|
+
- 也可以在 IM 控制台批量导入用户,然后使用已导入的 `userID` 和对应的 `userSig` 登录。
|
|
19
|
+
|
|
20
|
+
### 多实例被踢
|
|
21
|
+
|
|
22
|
+
- 同一 `userID` 在不同浏览器标签页或不同设备上同时登录时,默认会被踢下线(`KICKED_OUT`),原因是 Chat SDK Web 端默认只允许一个实例在线。
|
|
23
|
+
- 在 Chat 控制台开启 **Web 多实例登录** 后,同一 `userID` 可在多个标签页或设备上同时在线,不会被踢。
|
|
24
|
+
- 不同 `userID` 在同一浏览器登录不受此限制影响,不会互相踢下线。
|
|
25
|
+
|
|
26
|
+
## 2. 字段语义对照
|
|
27
|
+
|
|
28
|
+
| 字段/能力 | 作用 | 说明 |
|
|
29
|
+
|---|---|---|
|
|
30
|
+
| `init` | 初始化并注册用户 | 传入 `SDKAppID`、`userID`、`userSig` 完成鉴权 |
|
|
31
|
+
| `userID` | 用户标识 | 由业务后端签发或自定义,首次登录时自动创建用户 |
|
|
32
|
+
| `userSig` | 用户签名 | 由业务后端签发,用于鉴权 |
|
|
33
|
+
| `KICKED_OUT` | 被踢下线事件 | 同一账号/多实例登录时触发 |
|
|
34
|
+
| Web 多实例登录 | 控制台配置项 | 开启后同一浏览器可同时登录多个账号 |
|
|
35
|
+
|
|
36
|
+
## 3. 机制/时序
|
|
37
|
+
|
|
38
|
+
### 用户注册流程
|
|
39
|
+
|
|
40
|
+
后端生成 `userID` + `userSig` -> 前端调用 `init({ SDKAppID, userID, userSig })` -> TUICallKit 使用 Chat SDK 登录 -> 若用户不存在则自动创建 -> 登录成功。
|
|
41
|
+
|
|
42
|
+
### 多实例被踢机制
|
|
43
|
+
|
|
44
|
+
同一 `userID` 在标签页 A 登录 -> 同一浏览器新开标签页 B 登录同一 `userID` -> Chat 后台检测到同多实例登录 -> 踢掉标签页 A -> 标签页 A 收到 `KICKED_OUT` 事件。
|
|
45
|
+
|
|
46
|
+
## 4. 标准用法
|
|
47
|
+
|
|
48
|
+
### 用户注册与初始化
|
|
49
|
+
|
|
50
|
+
```javascript
|
|
51
|
+
// React: @trtc/calls-uikit-react
|
|
52
|
+
// Vue 3: @trtc/calls-uikit-vue
|
|
53
|
+
// Vue 2.7: @trtc/calls-uikit-vue2
|
|
54
|
+
// Vue 2.6: @trtc/calls-uikit-vue2.6
|
|
55
|
+
// uniapp 小程序: @trtc/calls-uikit-wx-uniapp
|
|
56
|
+
// 微信原生小程序: @trtc/calls-uikit-wx (API 一致,仅包名不同)
|
|
57
|
+
import { TUICallKitAPI } from "@trtc/calls-uikit-react";
|
|
58
|
+
|
|
59
|
+
TUICallKitAPI.init({
|
|
60
|
+
SDKAppID: 0, // 控制台获取的 SDKAppID
|
|
61
|
+
userID: 'user_xxx', // 业务后端签发的用户 ID
|
|
62
|
+
userSig: 'xxx', // 业务后端签发的用户签名
|
|
63
|
+
});
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### 开启 Web 多实例登录(解决被踢)
|
|
67
|
+
|
|
68
|
+
1. 登录腾讯云 IM 控制台。
|
|
69
|
+
2. 进入目标应用的功能配置页面。
|
|
70
|
+
3. 开启 **Web 多实例登录** 开关。
|
|
71
|
+
4. 保存后生效,无需重启客户端。
|
|
72
|
+
|
|
73
|
+
## 5. 结果判定
|
|
74
|
+
|
|
75
|
+
- 调用 `init` 后登录成功,无报错。
|
|
76
|
+
- 控制台开启 Web 多实例后,同一 `userID` 可在多个标签页或设备上同时在线。
|
|
77
|
+
- 未开启时,同一 `userID` 在新标签页登录后旧标签页收到 `KICKED_OUT` 事件。
|
|
78
|
+
|
|
79
|
+
## 6. 常见误区
|
|
80
|
+
|
|
81
|
+
- 误区 1:认为 TUICallKit 有独立的前端注册 API(实际通过 `init` 完成注册+登录)。
|
|
82
|
+
- 误区 2:被踢后认为是 TUICallKit 的 bug(实际是 Chat SDK 的多端登录限制)。
|
|
83
|
+
- 误区 3:不同 origin 也会被踢(不同 origin 视为不同实例,不受影响)。
|
|
84
|
+
- 误区 4:不同 `userID` 在同一浏览器登录也会被踢(实际多实例限制针对同一 `userID`,不同 `userID` 互不影响)。
|
|
85
|
+
- 误区 4:认为 `KICKED_OUT` 只能通过关闭其他登录来解决(开启 Web 多实例登录即可避免)。
|
|
86
|
+
|
|
87
|
+
## 7. 问题定义(检索辅助,极简)
|
|
88
|
+
|
|
89
|
+
用户咨询 TUICallKit Web 端用户注册方式(是否有独立注册接口、是否自动创建用户),以及同一浏览器多账号被踢的原因与解决方案。
|
|
90
|
+
|
|
91
|
+
## 8. 同义问法覆盖(检索召回,极简)
|
|
92
|
+
|
|
93
|
+
- TUICallKit 用户注册接口是什么?
|
|
94
|
+
- 首次登录会不会自动创建用户?
|
|
95
|
+
- 同一浏览器两个账号同时登录被踢怎么办?
|
|
96
|
+
- `KICKED_OUT` 怎么排查?
|
|
97
|
+
- 不同域名登录会被踢吗?
|
|
98
|
+
- 怎么让多个用户同时登录同一个页面?
|
|
99
|
+
|
|
100
|
+
## 9. 参考来源(可选)
|
|
101
|
+
|
|
102
|
+
- TUICallKit `init` 接口:`https://cloud.tencent.com/document/product/647/81015#init`
|
|
103
|
+
- IM 控制台 Web 多实例配置:`https://console.cloud.tencent.com/im`
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
本文档将帮助您使用 **AtomicXCore SDK** 的 **DeviceStore**、**CallStore** 以及核心组件 **CallCoreView**,快速完成接听电话功能。
|
|
2
2
|
|
|
3
|
-
> 推荐使用更高效的 AI 集成助手
|
|
4
|
-
>
|
|
5
|
-
> 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
|
|
6
|
-
>
|
|
7
|
-
> 点击这里,立即体验 AI 集成
|
|
8
|
-
>
|
|
9
|
-
|
|
10
3
|
## **核心功能**
|
|
11
4
|
|
|
12
5
|
**AtomicXCore** 中用于搭建多人音视频通话场景所需要使用到的核心模块包含以下三个:
|
|
@@ -20,8 +13,6 @@
|
|
|
20
13
|
|
|
21
14
|
### 步骤1:开通服务
|
|
22
15
|
|
|
23
|
-
请参见 开通服务,获取体验版或付费版 SDK 。
|
|
24
|
-
|
|
25
16
|
### 步骤2:集成 SDK
|
|
26
17
|
1. 请在您的 **build.gradle** 文件中添加 api `"io.trtc.uikit:atomicx-core:latest.release"` 和 api `"com.tencent.imsdk:imsdk-plus:8.7.7201"` 依赖,然后执行 **Gradle Sync**。
|
|
27
18
|
|
|
@@ -448,14 +439,7 @@ private fun addListener() {
|
|
|
448
439
|
|
|
449
440
|
## 接入离线推送
|
|
450
441
|
|
|
451
|
-
|
|
452
|
-
| <strong>Notification</strong> | <strong>FCM Data Message</strong> |
|
|
453
|
-
| --- | --- |
|
|
454
|
-
| | |
|
|
455
|
-
|
|
456
|
-
> **说明:**
|
|
457
|
-
>
|
|
458
|
-
>
|
|
442
|
+
离线推送效果如下,详细。
|
|
459
443
|
|
|
460
444
|
## 定制页面
|
|
461
445
|
|
|
@@ -651,9 +635,6 @@ private fun addListener() {
|
|
|
651
635
|
### 切换布局模式
|
|
652
636
|
|
|
653
637
|
您可以通过 [setLayoutTemplate](https://liteav.sdk.cloudcachetci.com/doc/product/tuikit/atomic-x/android/zh/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-call-core-view/set-layout-template.html) 接口灵活切换布局模式。若未主动配置,CallCoreView 将根据通话人数自动适配:1 V 1 场景下默认采用 **Float** 模式,多人通话场景下则自动切换为 **Grid** 模式。不同布局模式的说明如下:
|
|
654
|
-
| <strong>Float 模式</strong> | <strong>Grid 模式</strong> | <strong>Pip 模式</strong> |
|
|
655
|
-
| --- | --- | --- |
|
|
656
|
-
| | | |
|
|
657
638
|
| - <strong>布局逻辑:</strong>呼叫等待时全屏显示己方画面;接通后全屏显示对方画面,己方画面以悬浮小窗展示。<br>- <strong>交互特性:</strong>支持小窗拖拽移动,点击小窗可实现大小画面互换。 | - <strong>布局逻辑:</strong>所有成员画面呈网格状平铺排列成宫格模式布局,适用 2 人以上通话,支持点击放大画面功能。<br>- <strong>交互特性:</strong>支持点击特定成员画面放大查看。 | - <strong>布局逻辑:</strong>1v1 场景固定显示对方画面,多人场景:采用当前发言者(Active Speaker) 策略,自动识别并全屏展示正在说话的用户。<br>- <strong>交互特性:</strong>等待时显示自己的画面,接通后还会显示通话计时。 |
|
|
658
639
|
|
|
659
640
|
- **setLayoutTemplate** **示例代码:**
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
本文档将帮助您使用 **AtomicXCore SDK** 的 **DeviceStore**、**CallStore** 以及核心组件 **CallCoreView**,快速完成拨打电话功能。
|
|
2
2
|
|
|
3
|
-
> 推荐使用更高效的 AI 集成助手
|
|
4
|
-
>
|
|
5
|
-
> 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
|
|
6
|
-
>
|
|
7
|
-
> 点击这里,立即体验 AI 集成
|
|
8
|
-
>
|
|
9
|
-
|
|
10
3
|
## 核心功能
|
|
11
4
|
|
|
12
5
|
**AtomicXCore** 中用于搭建多人音视频通话场景所需要使用到的核心模块包含以下三个:
|
|
@@ -21,8 +14,6 @@
|
|
|
21
14
|
|
|
22
15
|
### 步骤1:开通服务
|
|
23
16
|
|
|
24
|
-
请参见 开通服务,获取体验版或付费版 SDK。
|
|
25
|
-
|
|
26
17
|
### 步骤2:集成 SDK
|
|
27
18
|
1. 请在您的 **build.gradle** 文件中添加 api `"io.trtc.uikit:atomicx-core:latest.release"` 和 api `"com.tencent.imsdk:imsdk-plus:8.7.7201"` 依赖,然后执行 **Gradle Sync**。
|
|
28
19
|
|
|
@@ -697,9 +688,6 @@ class CallActivity : AppCompatActivity() {
|
|
|
697
688
|
### 切换布局模式
|
|
698
689
|
|
|
699
690
|
您可以通过 [setLayoutTemplate](https://liteav.sdk.cloudcachetci.com/doc/product/tuikit/atomic-x/android/zh/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.view/-call-core-view/set-layout-template.html) 接口灵活切换布局模式。若未主动配置,**CallCoreView** 将根据通话人数自动适配:1 V 1 场景下默认采用 `Float` 模式,多人通话场景下则自动切换为 `Grid` 模式。不同布局模式的说明如下:
|
|
700
|
-
| <strong>Float 模式</strong> | <strong>Grid 模式</strong> | <strong>PIP 模式</strong> |
|
|
701
|
-
| --- | --- | --- |
|
|
702
|
-
| | | |
|
|
703
691
|
| - <strong>布局逻辑:</strong>呼叫等待时全屏显示己方画面;接通后全屏显示对方画面,己方画面以悬浮小窗展示。<br>- <strong>交互特性:</strong>支持小窗拖拽移动,点击小窗可实现大小画面互换。 | - <strong>布局逻辑:</strong>所有成员画面呈网格状平铺排列成宫格模式布局,适用 2 人以上通话,支持点击放大画面功能。<br>- <strong>交互特性:</strong>支持点击特定成员画面放大查看。 | - <strong>布局逻辑:</strong>1v1 场景固定显示对方画面,多人场景:采用当前发言者(Active Speaker) 策略,自动识别并全屏展示正在说话的用户。<br>- <strong>交互特性:</strong>等待时显示自己的画面,接通后还会显示通话计时。 |
|
|
704
692
|
|
|
705
693
|
- **setLayoutTemplate** **示例代码:**
|
|
@@ -5,7 +5,6 @@
|
|
|
5
5
|
进入 [IM 控制台 > 插件市场](https://console.cloud.tencent.com/im/plugin/TIMPush),单击**立即购买**或**免费试用**。
|
|
6
6
|
|
|
7
7
|
> **注意:**
|
|
8
|
-
>
|
|
9
8
|
> 购买及免费试用规则详见 计费说明。
|
|
10
9
|
>
|
|
11
10
|
|
|
@@ -18,7 +17,7 @@
|
|
|
18
17
|
|
|
19
18
|
- **仅限海外市场(不涉及中国大陆):**无需集成国内厂商服务。请直接参考本文档集成 FCM Data Message 即可。
|
|
20
19
|
|
|
21
|
-
- **仅限中国大陆境内:**无需集成 FCM
|
|
20
|
+
- **仅限中国大陆境内:**无需集成 FCM。。
|
|
22
21
|
|
|
23
22
|
### **如何提高通话触达率?**
|
|
24
23
|
|
|
@@ -34,17 +33,9 @@
|
|
|
34
33
|
|
|
35
34
|
2. 登录 [即时通信 IM 控制台](https://console.cloud.tencent.com/im),在**推送管理** > **接入设置**功能栏,选择 FCM,添加 FCM 的证书,其中,消息类型选择**透传(数据)消息**。
|
|
36
35
|
|
|
37
|
-
| 厂商推送平台 | IM 控制台配置 |
|
|
38
|
-
| --- | --- |
|
|
39
|
-
| | |
|
|
40
|
-
|
|
41
36
|
### **步骤2:接入推送插件**
|
|
42
37
|
1. **添加配置文件:**完成控制台厂商推送信息填写后,下载并添加配置文件到工程。将下载的 `timpush-configs.json` 文件添加到应用模块的 `assets` 目录下,将 `google-services.json` 添加到工程 `app` 目录下。
|
|
43
38
|
|
|
44
|
-
| <strong>选择下载配置文件 timpush-configs.json</strong> | <strong>下载文件 google-services.json</strong> | <strong>添加到您的工程</strong> |
|
|
45
|
-
| --- | --- | --- |
|
|
46
|
-
| | | |
|
|
47
|
-
|
|
48
39
|
2. **集成推送插件:**在项目的 `app` 目录下的`build.gradle`文件中添加如下依赖:
|
|
49
40
|
|
|
50
41
|
``` java
|
|
@@ -358,5 +349,3 @@
|
|
|
358
349
|
``` java
|
|
359
350
|
TIMPushManager.getInstance().forceUseFCMPushChannel(true);
|
|
360
351
|
```
|
|
361
|
-
|
|
362
|
-
## 交流与反馈
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
本文档将帮助您使用 **AtomicXCore SDK** 的 **DeviceStore**、**CallStore** 以及核心组件 **CallCoreView**,快速完成接听电话功能。
|
|
2
2
|
|
|
3
|
-
> 推荐使用更高效的 AI 集成助手
|
|
4
|
-
>
|
|
5
|
-
> 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
|
|
6
|
-
>
|
|
7
|
-
> 点击这里,立即体验 AI 集成
|
|
8
|
-
>
|
|
9
|
-
|
|
10
3
|
## **核心功能**
|
|
11
4
|
|
|
12
5
|
**AtomicXCore** 中用于搭建多人音视频通话场景所需要使用到的核心模块包含以下三个:
|
|
@@ -20,8 +13,6 @@
|
|
|
20
13
|
|
|
21
14
|
### 步骤1:开通服务
|
|
22
15
|
|
|
23
|
-
请参见 开通服务,获取体验版或付费版 SDK 。
|
|
24
|
-
|
|
25
16
|
### 步骤2:集成 SDK
|
|
26
17
|
|
|
27
18
|
**安装组件**:在工程的根目录下,通过命令行执行以下命令安装 [atomic_x_core](https://pub.dev/packages/atomic_x_core) 插件。
|
|
@@ -461,12 +452,6 @@ void addListener(BuildContext context) {
|
|
|
461
452
|
|
|
462
453
|
## 接入离线推送
|
|
463
454
|
|
|
464
|
-
如果您想要应用在离线状态下也可以收到通话邀请,请参考 接入离线推送功能 完成功能接入。
|
|
465
|
-
|
|
466
|
-
> **说明:**
|
|
467
|
-
>
|
|
468
|
-
>
|
|
469
|
-
|
|
470
455
|
## 定制页面
|
|
471
456
|
|
|
472
457
|
**CallCoreView** 提供了完善的 UI 定制能力,支持头像及音量提示等图标的自由替换。**为助力快速集成,您可以直接从** [**Github**](https://github.com/Tencent-RTC/TUIKit_Flutter/tree/main/atomic-x/call_assets) **下载。这些图标由我们的设计师专为 TUICallKit 打造,无版权风险,可放心使用。**
|
|
@@ -685,9 +670,6 @@ void addListener(BuildContext context) {
|
|
|
685
670
|
### 切换布局模式
|
|
686
671
|
|
|
687
672
|
您可以通过 [setLayoutTemplate](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/flutter/v1.0/zh/api_view_call_call_core_view/CallCoreController/setLayoutTemplate.html) 接口灵活切换布局模式。若未主动配置,**CallCoreView** 将根据通话人数自动适配:1v1 场景下默认采用 `Float` 模式,多人通话场景下则自动切换为 `Grid` 模式。不同布局模式的说明如下:
|
|
688
|
-
| <strong>Float 模式</strong> | <strong>Grid 模式</strong> | <strong>PIP 模式</strong> |
|
|
689
|
-
| --- | --- | --- |
|
|
690
|
-
| | | |
|
|
691
673
|
| - <strong>布局逻辑:</strong>呼叫等待时全屏显示己方画面;接通后全屏显示对方画面,己方画面以悬浮小窗展示。<br>- <strong>交互特性:</strong>支持小窗拖拽移动,点击小窗可实现大小画面互换。 | - <strong>布局逻辑:</strong>所有成员画面呈网格状平铺排列成宫格模式布局,适用 2 人以上通话,支持点击放大画面功能。<br>- <strong>交互特性:</strong>支持点击特定成员画面放大查看。 | - <strong>布局逻辑:</strong>1v1 场景固定显示对方画面,多人场景:采用当前发言者(Active Speaker) 策略,自动识别并全屏展示正在说话的用户。<br>- <strong>交互特性:</strong>等待时显示自己的画面,接通后还会显示通话计时。 |
|
|
692
674
|
|
|
693
675
|
- **setLayoutTemplate** **示例代码:**
|
|
@@ -908,7 +890,6 @@ _buildPipWindowWidget() {
|
|
|
908
890
|
iOS 端支持通过底层 TRTC 引擎实现应用外画中画功能。当应用进入后台时,通话画面可以以系统画中画形式悬浮在其他应用之上,用户可以边使用其他应用边进行视频通话。实现方式如下:
|
|
909
891
|
|
|
910
892
|
> **说明:**
|
|
911
|
-
>
|
|
912
893
|
> 需要在 Xcode 的 `Signing & Capabilities` 中添加 `Background Modes` 能力,并勾选 `Audio, AirPlay, and Picture in Picture。`
|
|
913
894
|
>
|
|
914
895
|
> 需要 iOS 15.0 及以上版本支持。
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
本文档将帮助您使用 **AtomicXCore SDK** 的 **DeviceStore**、**CallStore** 以及核心组件 **CallCoreView**,快速完成拨打电话功能。
|
|
2
2
|
|
|
3
|
-
> 推荐使用更高效的 AI 集成助手
|
|
4
|
-
>
|
|
5
|
-
> 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
|
|
6
|
-
>
|
|
7
|
-
> 点击这里,立即体验 AI 集成
|
|
8
|
-
>
|
|
9
|
-
|
|
10
3
|
## 核心功能
|
|
11
4
|
|
|
12
5
|
**AtomicXCore** 中用于搭建多人音视频通话场景所需要使用到的核心模块包含以下三个:
|
|
@@ -21,8 +14,6 @@
|
|
|
21
14
|
|
|
22
15
|
### 步骤1:开通服务
|
|
23
16
|
|
|
24
|
-
请参见 开通服务,获取体验版或付费版 SDK。
|
|
25
|
-
|
|
26
17
|
### 步骤2:集成 SDK
|
|
27
18
|
|
|
28
19
|
**安装组件**:在工程的根目录下,通过命令行执行以下命令安装 [atomic_x_core](https://pub.dev/packages/atomic_x_core) 插件。
|
|
@@ -729,9 +720,6 @@ android {
|
|
|
729
720
|
### 切换布局模式
|
|
730
721
|
|
|
731
722
|
您可以通过 [setLayoutTemplate](https://liteav.sdk.qcloud.com/doc/product/tuikit/atomic-x/flutter/v1.0/zh/api_view_call_call_core_view/CallCoreController/setLayoutTemplate.html) 接口灵活切换布局模式。若未主动配置,**CallCoreView** 将根据通话人数自动适配:1v1 场景下默认采用 `Float` 模式,多人通话场景下则自动切换为 `Grid` 模式。不同布局模式的说明如下:
|
|
732
|
-
| <strong>Float 模式</strong> | <strong>Grid 模式</strong> | <strong>PIP 模式</strong> |
|
|
733
|
-
| --- | --- | --- |
|
|
734
|
-
| | | |
|
|
735
723
|
| - <strong>布局逻辑:</strong>呼叫等待时全屏显示己方画面;接通后全屏显示对方画面,己方画面以悬浮小窗展示。<br>- <strong>交互特性:</strong>支持小窗拖拽移动,点击小窗可实现大小画面互换。 | - <strong>布局逻辑:</strong>所有成员画面呈网格状平铺排列成宫格模式布局,适用 2 人以上通话,支持点击放大画面功能。<br>- <strong>交互特性:</strong>支持点击特定成员画面放大查看。 | - <strong>布局逻辑:</strong>1v1 场景固定显示对方画面,多人场景:采用当前发言者(Active Speaker) 策略,自动识别并全屏展示正在说话的用户。<br>- <strong>交互特性:</strong>等待时显示自己的画面,接通后还会显示通话计时。 |
|
|
736
724
|
|
|
737
725
|
- **setLayoutTemplate** **示例代码:**
|
|
@@ -952,7 +940,6 @@ _buildPipWindowWidget() {
|
|
|
952
940
|
iOS 端支持通过底层 TRTC 引擎实现应用外画中画功能。当应用进入后台时,通话画面可以以系统画中画形式悬浮在其他应用之上,用户可以边使用其他应用边进行视频通话。实现方式如下:
|
|
953
941
|
|
|
954
942
|
> **说明:**
|
|
955
|
-
>
|
|
956
943
|
> 需要在 Xcode 的 `Signing & Capabilities` 中添加 `Background Modes` 能力,并勾选 `Audio, AirPlay, and Picture in Picture。`
|
|
957
944
|
>
|
|
958
945
|
> 需要 iOS 15.0 及以上版本支持。
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
本文档将指导您如何基于 [tencent_cloud_chat_push](https://pub.dev/packages/tencent_cloud_chat_push) 插件实现离线推送功能,适用于使用 AtomicXCore 进行无 UI 集成的场景。
|
|
2
2
|
|
|
3
3
|
## 效果展示
|
|
4
|
-
| <strong>Android(FCM)</strong> | <strong>iOS(APNs)</strong> |
|
|
5
|
-
| --- | --- |
|
|
6
|
-
| | |
|
|
7
4
|
|
|
8
5
|
## 开通服务
|
|
9
6
|
|
|
10
7
|
进入 [IM 控制台 > 插件市场](https://console.cloud.tencent.com/im/plugin/TIMPush),单击**立即购买**或**免费试用**。
|
|
11
8
|
|
|
12
9
|
> **注意:**
|
|
13
|
-
>
|
|
14
10
|
> 购买及免费试用规则详见 计费说明。
|
|
15
11
|
>
|
|
16
12
|
|
|
@@ -23,7 +19,7 @@
|
|
|
23
19
|
|
|
24
20
|
- **仅限海外市场(不涉及中国大陆):**无需集成国内厂商服务。请直接参考本文档集成 FCM Data Message 即可。
|
|
25
21
|
|
|
26
|
-
- **仅限中国大陆境内:**无需集成 FCM
|
|
22
|
+
- **仅限中国大陆境内:**无需集成 FCM。。
|
|
27
23
|
|
|
28
24
|
### 如何提高推送触达率?
|
|
29
25
|
|
|
@@ -56,10 +52,6 @@ flutter pub add tencent_cloud_chat_push
|
|
|
56
52
|
|
|
57
53
|
完成控制台厂商推送信息填写后,下载并添加配置文件到工程。将下载的 `timpush-configs.json` 文件添加到应用模块的 `assets` 目录下,将 `google-services.json` 添加到工程 app 目录下。
|
|
58
54
|
|
|
59
|
-
|选择下载配置文件 timpush-configs.json|下载文件 google-services.json|添加到工程|
|
|
60
|
-
|---------|---------|---------|
|
|
61
|
-
||||
|
|
62
|
-
|
|
63
55
|
### 步骤2:集成 Android 推送插件
|
|
64
56
|
|
|
65
57
|
在项目的 `android/app/build.gradle` 文件中添加如下依赖:
|
|
@@ -75,7 +67,6 @@ implementation "com.tencent.timpush:fcm:latest.release"
|
|
|
75
67
|
```
|
|
76
68
|
|
|
77
69
|
> **说明:**
|
|
78
|
-
>
|
|
79
70
|
> - TIMPush 需要集成 IM SDK 在**7.9.5666**版本及以上。TIMPush 的版本号及更新信息,可以在 [更新日志](https://cloud.tencent.com/document/product/269/102807) 中进行查询。
|
|
80
71
|
> - 在`build.gradle`中添加的依赖的版本需要与`tencent_cloud_chat_push`版本对应。
|
|
81
72
|
|
|
@@ -98,14 +89,11 @@ public class MyApplication extends TencentCloudChatPushApplication {
|
|
|
98
89
|
```
|
|
99
90
|
|
|
100
91
|
> **说明:**
|
|
101
|
-
>
|
|
102
92
|
> 如果您已经创建了自己的 Application 为了其他用途,请直接 `extends TencentCloudChatPushApplication` 并保证 `onCreate()` 函数中,调用了 `super.onCreate();` 即可。
|
|
103
93
|
>
|
|
104
94
|
|
|
105
95
|
同时,您还需要修改您的 MainActivity 文件:
|
|
106
96
|
|
|
107
|
-
打开 `android/app/src/main/AndroidManifest.xml` 文件,为 `<application>` 标签,新增指定一个 `android:name` 参数即可,指向刚制作的自定义 `Application` 类。如图所示:
|
|
108
|
-
|
|
109
97
|
####
|
|
110
98
|
|
|
111
99
|
### 步骤4:完成工程配置
|
|
@@ -158,8 +146,6 @@ public class MyApplication extends TencentCloudChatPushApplication {
|
|
|
158
146
|
#### 生成证书
|
|
159
147
|
1. 选中您的 AppID,选择 **Configure**。
|
|
160
148
|
|
|
161
|
-
2. 可以看到在 **Apple Push Notification service SSL Certificates** 窗口中有两个 `SSL Certificate`,分别用于开发环境(Development)和生产环境(Production)的远程推送证书,如下图所示:
|
|
162
|
-
|
|
163
149
|
3. 我们先选择开发环境(Development)的 **Create Certificate**,系统将提示我们需要一个 Certificate Signing Request(CSR)。
|
|
164
150
|
|
|
165
151
|
4. 在 Mac 上打开**钥匙串访问工具(Keychain Access)**,在菜单中选择**钥匙串访问** > **证书助理** > **从证书颁发机构请求证书**(`Keychain Access - Certificate Assistant - Request a Certificate From a Certificate Authority`)。
|
|
@@ -210,8 +196,6 @@ public class MyApplication extends TencentCloudChatPushApplication {
|
|
|
210
196
|
|
|
211
197
|
请将您在厂商配置步骤中,获取到的 iOS APNs 推送证书, 上传至 IM 控制台。
|
|
212
198
|
|
|
213
|
-
IM 控制台会为您分配一个证书 ID,见下图:
|
|
214
|
-
|
|
215
199
|
注册推送需要将此证书 ID(apnsCertificateID)传入:
|
|
216
200
|
``` java
|
|
217
201
|
TencentCloudChatPush().registerPush(apnsCertificateID: 您配置的证书 ID);
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
本文档将帮助您使用 **AtomicXCore SDK** 的 **DeviceStore**、**CallStore** 以及核心组件 **CallCoreView**,快速完成接听电话功能。
|
|
2
2
|
|
|
3
|
-
> 推荐使用更高效的 AI 集成助手
|
|
4
|
-
>
|
|
5
|
-
> 我们为您提供了全新的 AI 集成方式,只需要描述您的需求,即可自动生成集成代码,大幅提升开发效率。
|
|
6
|
-
>
|
|
7
|
-
> 点击这里,立即体验 AI 集成
|
|
8
|
-
>
|
|
9
|
-
|
|
10
3
|
## **核心功能**
|
|
11
4
|
|
|
12
5
|
**AtomicXCore** 中用于搭建多人音视频通话场景所需要使用到的核心模块包含以下三个:
|
|
@@ -21,8 +14,6 @@
|
|
|
21
14
|
|
|
22
15
|
### 步骤1:开通服务
|
|
23
16
|
|
|
24
|
-
请参见 开通服务,获取体验版或付费版 SDK。
|
|
25
|
-
|
|
26
17
|
### 步骤2:集成 SDK
|
|
27
18
|
1. **添加 Pod 依赖:**在您项目的 `Podfile` 文件中添加 `pod 'AtomicXCore'` 依赖。
|
|
28
19
|
|
|
@@ -732,9 +723,6 @@ callCoreView.setWaitingAnimation(path: waitingAnimationPath)
|
|
|
732
723
|
### 切换布局模式
|
|
733
724
|
|
|
734
725
|
**CallCoreView** 内置三种布局模式,您可以调用 [setLayoutTemplate](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/callcoreview/setlayouttemplate(_:)) 设置布局模式。若未主动配置,**CallCoreView** 将根据通话人数自动适配:1 V 1 场景下默认采用 `Float` 模式,多人通话场景下则自动切换为 `Grid` 模式。不同布局模式的说明如下:
|
|
735
|
-
| <strong>Float 模式</strong> | <strong>Grid 模式</strong> | <strong>PIP 模式</strong> |
|
|
736
|
-
| --- | --- | --- |
|
|
737
|
-
| | | |
|
|
738
726
|
| - <strong>布局逻辑:</strong>呼叫等待时全屏显示己方画面;接通后全屏显示对方画面,己方画面以悬浮小窗展示。<br>- <strong>交互特性:</strong>支持小窗拖拽移动,点击小窗可实现大小画面互换。 | - <strong>布局逻辑:</strong>所有成员画面呈网格状平铺排列成宫格模式布局,适用 2 人以上通话,支持点击放大画面功能。<br>- <strong>交互特性:</strong>支持点击特定成员画面放大查看。 | - <strong>布局逻辑:</strong>1v1 场景固定显示对方画面,多人场景:采用当前发言者(Active Speaker) 策略,自动识别并全屏展示正在说话的用户。<br>- <strong>交互特性:</strong>等待时显示自己的画面,接通后还会显示通话计时。 |
|
|
739
727
|
|
|
740
728
|
- **setLayoutTemplate 示例代码:**
|
|
@@ -989,7 +977,6 @@ class CallViewController: UIViewController {
|
|
|
989
977
|
AtomicXCore SDK 支持通过底层 TRTC 引擎实现应用外画中画功能。当应用进入后台时,通话画面可以以系统画中画形式悬浮在其他应用之上,用户可以边使用其他应用边进行视频通话。
|
|
990
978
|
|
|
991
979
|
> **说明:**
|
|
992
|
-
>
|
|
993
980
|
> 1. 需要在 Xcode 的 `Signing & Capabilities` 中添加 `Background Modes` 能力,并勾选 `Audio, AirPlay, and Picture in Picture。`
|
|
994
981
|
> 2. 需要 iOS 15.0 及以上版本支持。
|
|
995
982
|
|