@tencentcloud/sdk-mcp 1.3.8 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +1 -1
- package/index.js.map +1 -1
- package/package.json +2 -2
- package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/android-faq.md} +75 -308
- package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +2 -2
- package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/flutter-faq.md} +83 -315
- package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/ios-faq.md} +76 -313
- package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +78 -311
- package/resource/doc/callkit/preset/android/api.md +330 -0
- package/resource/doc/callkit/preset/android/integration.md +530 -0
- package/resource/doc/callkit/preset/flutter/api.md +401 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +53 -273
- package/resource/doc/callkit/preset/ios/api.md +282 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +39 -120
- package/resource/doc/callkit/preset/react/api.md +600 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +6 -6
- package/resource/doc/callkit/preset/vue/api.md +600 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +5 -5
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -37
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/chatkit/android/integration.md +498 -0
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +280 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +4 -17
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -2
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +183 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +279 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +4 -4
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +20 -95
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -37
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +78 -280
- package/resource/doc/{chatuikit/vue → chatkit/react}/components/avatar.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +7 -12
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +10 -17
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +122 -703
- package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
- package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
- package/resource/doc/chatkit/react/components/conversation-preview.md +116 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +57 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -186
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +21 -113
- package/resource/doc/chatkit/react/components/search.md +282 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +5 -26
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +37 -104
- package/resource/doc/{chatuikit/react → chatkit/vue}/components/avatar.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -13
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +13 -18
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +1 -2
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -1
- package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
- package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -316
- package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
- package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +1 -23
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -134
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/chatkit/vue/components/tuikit.md +45 -0
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +4 -4
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +53 -121
- package/resource/doc/livekit/core-sdk/live/android/api-reference/AudioEffectStore.md +283 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +148 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +316 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CameraView.md +57 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +419 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +325 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +436 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +165 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LikeStore.md +49 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +239 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +74 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +417 -0
- package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +207 -0
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +17 -88
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +26 -139
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +16 -99
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +54 -161
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +91 -338
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +108 -492
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +27 -165
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/AudioEffectStore.md +279 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +158 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BaseBeautyStore.md +155 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +304 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +394 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +303 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +410 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +160 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LikeStore.md +51 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +231 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveCoreView.md +143 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +375 -0
- package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +170 -0
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +13 -91
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -177
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +18 -102
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -164
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -161
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +66 -460
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/core-sdk/live/flutter/live-integration.md +687 -0
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +22 -161
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/AudioEffectStore.md +287 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +165 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +143 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +298 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +349 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +297 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +471 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +179 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LikeStore.md +49 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +238 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +74 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +412 -0
- package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +173 -0
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +23 -96
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +33 -195
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +35 -150
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +20 -105
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +35 -140
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +77 -457
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +70 -317
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +90 -473
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +28 -163
- package/resource/doc/livekit/core-sdk/voice/android/voice-audience-list.md +264 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-audio-effect.md +226 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-barrage.md +456 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-co-guest-interaction.md +539 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-gift.md +453 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-host-interaction.md +516 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-integration.md +509 -0
- package/resource/doc/livekit/core-sdk/voice/android/voice-room-list.md +365 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-audience-list.md +259 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-audio-effect.md +596 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-barrage.md +494 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-co-guest-interaction.md +516 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-gift.md +418 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-integration.md +563 -0
- package/resource/doc/livekit/core-sdk/voice/flutter/voice-room-list.md +709 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audience-list.md +262 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-audio-effect.md +211 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-barrage.md +414 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-co-guest-interaction.md +492 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-gift.md +405 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-host-interaction.md +611 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
- package/resource/doc/livekit/core-sdk/voice/ios/voice-room-list.md +336 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-audience-list.md +234 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-audio-effect.md +218 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-barrage.md +376 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-co-guest-interaction.md +648 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-gift.md +362 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
- package/resource/doc/livekit/core-sdk/voice/uni-app/voice-room-list.md +470 -0
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -3
- package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
- package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
- package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +9 -48
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +27 -145
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +13 -76
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +33 -224
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +211 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +244 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +301 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +307 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +754 -0
- package/resource/doc/roomkit/android/features/call-user-to-room.md +234 -0
- package/resource/doc/roomkit/android/features/room-participant-state.md +850 -0
- package/resource/doc/roomkit/android/features/room-state.md +358 -0
- package/resource/doc/roomkit/android/features/schedule-room.md +336 -0
- package/resource/doc/roomkit/android/integration.md +433 -0
- package/resource/doc/roomkit/{common/error_code.md → faq/common/error-code.md} +1 -1
- package/resource/doc/roomkit/flutter/features/call-user-to-room.md +228 -0
- package/resource/doc/roomkit/flutter/features/room-participant-state.md +796 -0
- package/resource/doc/roomkit/flutter/features/room-state.md +324 -0
- package/resource/doc/roomkit/flutter/features/schedule-room.md +324 -0
- package/resource/doc/roomkit/flutter/integration.md +405 -0
- package/resource/doc/roomkit/ios/features/call-user-to-room.md +226 -0
- package/resource/doc/roomkit/ios/features/room-participant-state.md +821 -0
- package/resource/doc/roomkit/ios/features/room-state.md +320 -0
- package/resource/doc/roomkit/ios/features/schedule-room.md +318 -0
- package/resource/doc/roomkit/ios/integration.md +384 -0
- package/resource/doc/roomkit/vue/faq.md +1 -0
- package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
- package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
- package/resource/doc/roomkit/vue/features/device-state.md +24 -44
- package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
- package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
- package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
- package/resource/doc/roomkit/vue/features/room-state.md +25 -36
- package/resource/doc/roomkit/vue/features/room-view.md +30 -127
- package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
- package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
- package/resource/doc/roomkit/vue/features/virtual-background.md +13 -34
- package/resource/doc/roomkit/vue/integration.md +118 -282
- package/resource/doc/rtcengine/faq/common/userSig.md +17 -141
- package/resource/doc/rtcengine/faq/web/web.md +15 -22
- package/resource/doc/rtcengine/web/api.md +17 -21
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +4 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +4 -8
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +3 -3
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -3
- package/resource/doc/rtcengine/web/plugin/22-advanced-audio-mixer.md +6 -6
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +2 -2
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +2 -4
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +1 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +2 -6
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +13 -14
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +10 -90
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -8
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +31 -35
- package/resource/doc/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -2
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +7 -49
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -1
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -3
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +20 -20
- package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
- package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -4
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +718 -2847
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +207 -1041
- package/resource/doc/trtc/C++/ITXDeviceManager.md +127 -768
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +634 -2259
- package/resource/doc/trtc/C++/TRTCTypeDef.md +726 -3465
- package/resource/doc/trtc/C++/TXLiteAVCode.md +117 -916
- package/resource/doc/trtc/android/TRTCCloud.md +638 -2612
- package/resource/doc/trtc/android/TRTCCloudDef.md +769 -3697
- package/resource/doc/trtc/android/TRTCCloudListener.md +609 -2070
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +207 -1049
- package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
- package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
- package/resource/doc/trtc/android/TXLiteAVCode.md +115 -900
- package/resource/doc/trtc/iOS/TRTCCloud.md +726 -2930
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +580 -2099
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +179 -896
- package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
- package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
- package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
- package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +747 -3559
- package/server.js +1 -5
- package/server.js.map +1 -1
- package/tools/call/get_callkit_api.js +32 -0
- package/tools/call/get_callkit_api.js.map +1 -0
- package/tools/call/get_native_call_uikit_integration.js +34 -0
- package/tools/call/get_native_call_uikit_integration.js.map +1 -0
- package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
- package/tools/call/get_web_call_uikit_integration.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
- package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
- package/tools/chat/get_native_chat_uikit_integration.js +45 -0
- package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
- package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
- package/tools/chat/get_web_chat_uikit_integration.js +45 -0
- package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
- package/tools/common/get_faq.js +265 -0
- package/tools/common/get_faq.js.map +1 -0
- package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
- package/tools/common/get_usersig.js.map +1 -0
- package/tools/common/present_framework_choice.js +63 -0
- package/tools/common/present_framework_choice.js.map +1 -0
- package/tools/definitions/get_callkit_api_def.js +28 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +18 -19
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -18
- package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
- package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
- package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
- package/tools/definitions/get_usersig_def.js +17 -24
- package/tools/definitions/get_usersig_def.js.map +1 -1
- package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
- package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
- package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
- package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
- package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +27 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +13 -30
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +23 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/index.js +47 -59
- package/tools/index.js.map +1 -1
- package/tools/live/get_native_livekit_core_features.js +65 -0
- package/tools/live/get_native_livekit_core_features.js.map +1 -0
- package/tools/live/get_native_livekit_core_integration.js +59 -0
- package/tools/live/get_native_livekit_core_integration.js.map +1 -0
- package/tools/live/get_web_live_uikit_integration.js +48 -0
- package/tools/live/get_web_live_uikit_integration.js.map +1 -0
- package/tools/live/get_web_livekit_api.js +32 -0
- package/tools/live/get_web_livekit_api.js.map +1 -0
- package/tools/live/get_web_livekit_component_detail.js +34 -0
- package/tools/live/get_web_livekit_component_detail.js.map +1 -0
- package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
- package/tools/room/get_web_room_uikit_integration.js.map +1 -0
- package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
- package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
- package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
- package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
- package/utils/generate-structured-result.js +61 -17
- package/utils/generate-structured-result.js.map +1 -1
- package/utils/report-cls-client.js +12 -1
- package/utils/report-cls-client.js.map +1 -1
- package/utils/report-es-client.js +1 -1
- package/resource/doc/chatuikit/android/integration.md +0 -612
- package/resource/doc/chatuikit/android/workflow.md +0 -0
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/flutter/workflow.md +0 -816
- package/resource/doc/chatuikit/iOS/workflow.md +0 -0
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
- package/resource/doc/chatuikit/react/components/search.md +0 -885
- package/resource/doc/chatuikit/react/create-group.md +0 -22
- package/resource/doc/chatuikit/react/init.md +0 -25
- package/resource/doc/chatuikit/react/workflow.md +0 -254
- package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
- package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
- package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
- package/resource/doc/chatuikit/vue/create-group.md +0 -26
- package/resource/doc/chatuikit/vue/init.md +0 -35
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -322
- package/resource/doc/livekit/live/flutter/live-integration.md +0 -1029
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -352
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
- package/resource/doc/livekit/live/vue/workflow.md +0 -219
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
- package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
- package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
- package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
- package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
- package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -487
- package/resource/doc/tuicallkit/android/integration.md +0 -302
- package/resource/doc/tuicallkit/android/workflow.md +0 -0
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1512
- package/resource/doc/tuicallkit/vue/api.md +0 -1512
- package/resource/doc/tuicallkit/vue/faq.md +0 -986
- package/tools/call/get-native-call-integration.js +0 -43
- package/tools/call/get-native-call-integration.js.map +0 -1
- package/tools/call/get-web-call-api.js +0 -27
- package/tools/call/get-web-call-api.js.map +0 -1
- package/tools/call/get-web-call-integration.js.map +0 -1
- package/tools/chat/get-native-chat-feature-detail.js +0 -30
- package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
- package/tools/chat/get-native-chat-integration.js +0 -45
- package/tools/chat/get-native-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-component-detail.js +0 -31
- package/tools/chat/get-web-chat-component-detail.js.map +0 -1
- package/tools/chat/get-web-chat-integration.js +0 -45
- package/tools/chat/get-web-chat-integration.js.map +0 -1
- package/tools/chat/get-web-chat-uikit-init.js +0 -28
- package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
- package/tools/chat/get-web-create-group-doc.js +0 -28
- package/tools/chat/get-web-create-group-doc.js.map +0 -1
- package/tools/common/get-faq.js +0 -91
- package/tools/common/get-faq.js.map +0 -1
- package/tools/common/get-usersig.js.map +0 -1
- package/tools/common/present-framework-choice.js +0 -16
- package/tools/common/present-framework-choice.js.map +0 -1
- package/tools/common/record-prompt.js +0 -55
- package/tools/common/record-prompt.js.map +0 -1
- package/tools/common/record-result.js +0 -60
- package/tools/common/record-result.js.map +0 -1
- package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
- package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_native_live_api_def.js +0 -22
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
- package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_integration_def.js +0 -50
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -115
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -17
- package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
- package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
- package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
- package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
- package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
- package/tools/definitions/get_web_create_group_doc_def.js +0 -18
- package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
- package/tools/definitions/get_web_live_state_detail_def.js +0 -19
- package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
- package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
- package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_feature_detail_def.js +0 -95
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -53
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -30
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -101
- package/tools/live/get-native-live-uikit-integration.js.map +0 -1
- package/tools/live/get-web-live-component-detail.js +0 -31
- package/tools/live/get-web-live-component-detail.js.map +0 -1
- package/tools/live/get-web-live-state-detail.js +0 -31
- package/tools/live/get-web-live-state-detail.js.map +0 -1
- package/tools/live/get-web-live-uikit-integration.js +0 -52
- package/tools/live/get-web-live-uikit-integration.js.map +0 -1
- package/tools/live/get_native_live_uikit_extra_features.js +0 -105
- package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
- package/tools/live/get_native_live_uikit_interaction.js +0 -101
- package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
- package/tools/native_live/get-native-live-api.js +0 -31
- package/tools/native_live/get-native-live-api.js.map +0 -1
- package/tools/room/get-web-room-feature-detail.js.map +0 -1
- package/tools/room/get-web-room-integration.js.map +0 -1
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
- package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
- package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
- package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
- package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
- package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
- package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
- package/tools/trtc/get-trtc-native-api.js +0 -31
- package/tools/trtc/get-trtc-native-api.js.map +0 -1
- package/utils/handle-component-name.js +0 -33
- package/utils/handle-component-name.js.map +0 -1
- /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
|
@@ -7,17 +7,15 @@
|
|
|
7
7
|
|
|
8
8
|
- UserSig 则是基于前两者计算出的安全签名,它由 **HMAC SHA256** 加密算法计算得出。只要攻击者不能伪造 UserSig,就无法盗用您的云服务流量。
|
|
9
9
|
|
|
10
|
-
|
|
11
10
|
## 在调试阶段如何计算 UserSig?
|
|
12
11
|
|
|
13
|
-
如果您希望快速跑通 Demo,了解 TRTC SDK 相关能力,您可以通过
|
|
12
|
+
如果您希望快速跑通 Demo,了解 TRTC SDK 相关能力,您可以通过 客户端示例代码 和 控制台 两种方法计算获取 UserSig,具体请参见以下介绍。
|
|
14
13
|
|
|
15
14
|
> **不安全:**
|
|
16
|
-
>
|
|
15
|
+
>
|
|
17
16
|
|
|
18
17
|
> 注意,如下两种 UserSig 获取计算方案仅适用于调试,如果产品要正式上线,**不推荐**采用这种方案,因为客户端代码(尤其是 Web 端)中的 SECRETKEY 很容易被反编译逆向破解。一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量。
|
|
19
|
-
>
|
|
20
|
-
|
|
18
|
+
>
|
|
21
19
|
|
|
22
20
|
### 客户端计算 UserSig
|
|
23
21
|
|
|
@@ -30,56 +28,15 @@
|
|
|
30
28
|
|
|
31
29
|
- 单击**复制密钥**,可将密钥拷贝到剪贴板中。
|
|
32
30
|
|
|
33
|
-

|
|
34
|
-
|
|
35
|
-
|
|
36
31
|
#### **2. 计算 UserSig:**
|
|
37
32
|
|
|
38
33
|
为了方便客户端使用,我们提供各平台计算 UserSig 的源码文件,您可直接下载使用:
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
<td rowspan="1" colSpan="1" >iOS</td>
|
|
44
|
-
|
|
45
|
-
<td rowspan="1" colSpan="1" >Web</td>
|
|
46
|
-
|
|
47
|
-
<td rowspan="1" colSpan="1" >微信小程序</td>
|
|
48
|
-
|
|
49
|
-
<td rowspan="1" colSpan="1" >Windows(C++)</td>
|
|
50
|
-
|
|
51
|
-
<td rowspan="1" colSpan="1" >Windows(C#)</td>
|
|
52
|
-
|
|
53
|
-
<td rowspan="1" colSpan="1" >Flutter</td>
|
|
54
|
-
|
|
55
|
-
<td rowspan="1" colSpan="1" >Mac</td>
|
|
56
|
-
</tr>
|
|
57
|
-
|
|
58
|
-
<tr>
|
|
59
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_Android/tree/main/TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java)</td>
|
|
60
|
-
|
|
61
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_iOS/tree/main/TRTC-API-Example-OC/Debug/GenerateTestUserSig.h)</td>
|
|
62
|
-
|
|
63
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_Web/blob/main/quick-demo-js/js/libs/generateTestUserSig.js)</td>
|
|
64
|
-
|
|
65
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/Live_WXMini/blob/main/TRTCScenesDemo/TUICallKit-WX-Demo/debug/GenerateTestUserSig.js)</td>
|
|
66
|
-
|
|
67
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-C%2B%2B/TRTC-API-Example-Qt/src/Util/defs.h)</td>
|
|
68
|
-
|
|
69
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-CSharp/TRTC-API-Example-CSharp/GenerateTestUserSig.cs)</td>
|
|
70
|
-
|
|
71
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/Tencent-RTC/TRTC_Flutter/blob/master/TRTC-API-Example/lib/debug/generate_test_user_sig.dart)</td>
|
|
72
|
-
|
|
73
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/LiteAVSDK/TRTC_Mac/tree/main/OCDemo/TRTCDemo/TRTC/GenerateTestUserSig.h)</td>
|
|
74
|
-
</tr>
|
|
75
|
-
</table>
|
|
76
|
-
|
|
34
|
+
| Android | iOS | Web | 微信小程序 | Windows(C++) | Windows(C#) | Flutter | Mac |
|
|
35
|
+
| --- | --- | --- | --- | --- | --- | --- | --- |
|
|
36
|
+
| [GitHub](https://github.com/LiteAVSDK/TRTC_Android/tree/main/TRTC-API-Example/Debug/src/main/java/com/tencent/trtc/debug/GenerateTestUserSig.java) | [GitHub](https://github.com/LiteAVSDK/TRTC_iOS/tree/main/TRTC-API-Example-OC/Debug/GenerateTestUserSig.h) | [GitHub](https://github.com/LiteAVSDK/TRTC_Web/blob/main/quick-demo-js/js/libs/generateTestUserSig.js) | [GitHub](https://github.com/LiteAVSDK/Live_WXMini/blob/main/TRTCScenesDemo/TUICallKit-WX-Demo/debug/GenerateTestUserSig.js) | [GitHub](https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-C%2B%2B/TRTC-API-Example-Qt/src/Util/defs.h) | [GitHub](https://github.com/LiteAVSDK/TRTC_Windows/blob/main/TRTC-API-Example-CSharp/TRTC-API-Example-CSharp/GenerateTestUserSig.cs) | [GitHub](https://github.com/Tencent-RTC/TRTC_Flutter/blob/master/TRTC-API-Example/lib/debug/generate_test_user_sig.dart) | [GitHub](https://github.com/LiteAVSDK/TRTC_Mac/tree/main/OCDemo/TRTCDemo/TRTC/GenerateTestUserSig.h) |
|
|
77
37
|
|
|
78
38
|
示例代码如下(当然您也可以参考我们各产品的 Demo 工程,详见各产品的开发文档):
|
|
79
39
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
40
|
【Android】
|
|
84
41
|
``` java
|
|
85
42
|
// Step1: 导入源码文件
|
|
@@ -93,7 +50,6 @@ GenerateTestUserSig.SECRETKEY = "xxxxxx";
|
|
|
93
50
|
String userSig = GenerateTestUserSig.genTestUserSig("userID");
|
|
94
51
|
```
|
|
95
52
|
|
|
96
|
-
|
|
97
53
|
【iOS】
|
|
98
54
|
``` objectivec
|
|
99
55
|
// Step1: 导入头文件
|
|
@@ -108,7 +64,6 @@ NSString *userSig = [GenerateTestUserSig genTestUserSig:@"userID"];
|
|
|
108
64
|
|
|
109
65
|
```
|
|
110
66
|
|
|
111
|
-
|
|
112
67
|
【Web】
|
|
113
68
|
``` javascript
|
|
114
69
|
// Step1: 导入模块
|
|
@@ -117,13 +72,12 @@ NSString *userSig = [GenerateTestUserSig genTestUserSig:@"userID"];
|
|
|
117
72
|
|
|
118
73
|
// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig
|
|
119
74
|
const {sdkAppId, userSig } = genTestUserSig({
|
|
120
|
-
sdkAppId: xxxxxx,
|
|
75
|
+
sdkAppId: xxxxxx,
|
|
121
76
|
userId: 'xxxxxx',
|
|
122
77
|
sdkSecretKey: 'xxxxxx',
|
|
123
78
|
}
|
|
124
79
|
```
|
|
125
80
|
|
|
126
|
-
|
|
127
81
|
【微信小程序】
|
|
128
82
|
``` javascript
|
|
129
83
|
// Step1: 导入模块
|
|
@@ -131,13 +85,12 @@ import { genTestUserSig } from 'GenerateTestUserSig';
|
|
|
131
85
|
|
|
132
86
|
// Step2:填写上一步骤中获取到的 SDKAppID,SDK 密钥、输入自定义的userID,生成 userSig
|
|
133
87
|
const {userSig } = genTestUserSig({
|
|
134
|
-
sdkAppId: xx,
|
|
88
|
+
sdkAppId: xx,
|
|
135
89
|
userId: 'xxxxxx',
|
|
136
90
|
sdkSecretKey: 'xxxxxx'
|
|
137
91
|
})
|
|
138
92
|
```
|
|
139
93
|
|
|
140
|
-
|
|
141
94
|
【Window(C++)】
|
|
142
95
|
``` cpp
|
|
143
96
|
// Step1: 导入头文件
|
|
@@ -151,21 +104,19 @@ const char* SECRETKEY = "xxxxxx";
|
|
|
151
104
|
const char* userSig = GenerateTestUserSig::genTestUserSig("userID", SDKAPPID, SECRETKEY);
|
|
152
105
|
```
|
|
153
106
|
|
|
154
|
-
|
|
155
107
|
【Window(C#)】
|
|
156
108
|
``` csharp
|
|
157
109
|
// Step1: 导入头文件
|
|
158
110
|
using GenerateTestUserSig;
|
|
159
111
|
|
|
160
112
|
// Step2: 填写上一步骤中获取到的 SDKAppID 和 SDK 密钥
|
|
161
|
-
GenerateTestUserSig.SDKAPPID = xxxxxx;
|
|
113
|
+
GenerateTestUserSig.SDKAPPID = xxxxxx;
|
|
162
114
|
GenerateTestUserSig.SECRETKEY = "xxxxxx";
|
|
163
115
|
|
|
164
116
|
// Step3:根据 userID,生成 userSig
|
|
165
117
|
string userSig = GenerateTestUserSig.GetInstance().GenTestUserSig("userID");
|
|
166
118
|
```
|
|
167
119
|
|
|
168
|
-
|
|
169
120
|
【Flutter】
|
|
170
121
|
``` django
|
|
171
122
|
// Step1: 导入源码文件
|
|
@@ -179,7 +130,6 @@ GenerateTestUserSig.SECRETKEY = "xxxxxx";
|
|
|
179
130
|
String userSig = GenerateTestUserSig.genTestUserSig("userID");
|
|
180
131
|
```
|
|
181
132
|
|
|
182
|
-
|
|
183
133
|
【Mac】
|
|
184
134
|
``` objectivec
|
|
185
135
|
// Step1: 导入头文件
|
|
@@ -200,15 +150,10 @@ NSString *userSig = [GenerateTestUserSig genTestUserSig:@"userID"];
|
|
|
200
150
|
|
|
201
151
|
- 单击**生成签名(UserSig)**,即可计算得到对应的 UserSig。
|
|
202
152
|
|
|
203
|
-

|
|
204
|
-
|
|
205
|
-
|
|
206
153
|
## 在正式运行阶段如何计算 UserSig?
|
|
207
154
|
|
|
208
155
|
业务正式运行阶段,TRTC 提供安全等级更高的服务端计算 UserSig 的方案,可以最大限度地保障计算 UserSig 用的密钥不被泄露,因为攻破一台服务器的难度要高于逆向一款 App。具体的实现流程如下:
|
|
209
156
|
|
|
210
|
-

|
|
211
|
-
|
|
212
157
|
1. 您的 App 在调用 SDK 的初始化函数之前,首先要向您的服务器请求 UserSig。
|
|
213
158
|
|
|
214
159
|
2. 您的服务器根据 SDKAppID 和 UserID 计算 UserSig,计算源码见文档前半部分。
|
|
@@ -223,87 +168,18 @@ NSString *userSig = [GenerateTestUserSig genTestUserSig:@"userID"];
|
|
|
223
168
|
|
|
224
169
|
7. 校验通过后,会向 TRTCSDK 提供实时音视频服务。
|
|
225
170
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
171
|
为了简化您的实现过程,我们提供了多个语言版本的 UserSig 计算源代码及其示例:
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
<td rowspan="1" colSpan="1" >使用示例</td>
|
|
239
|
-
</tr>
|
|
240
|
-
|
|
241
|
-
<tr>
|
|
242
|
-
<td rowspan="1" colSpan="1" >Java</td>
|
|
243
|
-
|
|
244
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
245
|
-
|
|
246
|
-
<td rowspan="1" colSpan="1" >[genSig](https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java)</td>
|
|
247
|
-
|
|
248
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-java)</td>
|
|
249
|
-
</tr>
|
|
250
|
-
|
|
251
|
-
<tr>
|
|
252
|
-
<td rowspan="1" colSpan="1" >GO</td>
|
|
253
|
-
|
|
254
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
255
|
-
|
|
256
|
-
<td rowspan="1" colSpan="1" >[GenSig](https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go)</td>
|
|
257
|
-
|
|
258
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-golang)</td>
|
|
259
|
-
</tr>
|
|
260
|
-
|
|
261
|
-
<tr>
|
|
262
|
-
<td rowspan="1" colSpan="1" >PHP</td>
|
|
263
|
-
|
|
264
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
265
|
-
|
|
266
|
-
<td rowspan="1" colSpan="1" >[genSig](https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php)</td>
|
|
267
|
-
|
|
268
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-php)</td>
|
|
269
|
-
</tr>
|
|
270
|
-
|
|
271
|
-
<tr>
|
|
272
|
-
<td rowspan="1" colSpan="1" >Node.js</td>
|
|
273
|
-
|
|
274
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
275
|
-
|
|
276
|
-
<td rowspan="1" colSpan="1" >[genSig](https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js)</td>
|
|
277
|
-
|
|
278
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-node)</td>
|
|
279
|
-
</tr>
|
|
280
|
-
|
|
281
|
-
<tr>
|
|
282
|
-
<td rowspan="1" colSpan="1" >Python</td>
|
|
283
|
-
|
|
284
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
285
|
-
|
|
286
|
-
<td rowspan="1" colSpan="1" >[genSig](https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py)</td>
|
|
287
|
-
|
|
288
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-python)</td>
|
|
289
|
-
</tr>
|
|
290
|
-
|
|
291
|
-
<tr>
|
|
292
|
-
<td rowspan="1" colSpan="1" >C#</td>
|
|
293
|
-
|
|
294
|
-
<td rowspan="1" colSpan="1" >HMAC-SHA256</td>
|
|
295
|
-
|
|
296
|
-
<td rowspan="1" colSpan="1" >[GenSig](https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs)</td>
|
|
297
|
-
|
|
298
|
-
<td rowspan="1" colSpan="1" >[GitHub](https://github.com/tencentyun/tls-sig-api-v2-cs)</td>
|
|
299
|
-
</tr>
|
|
300
|
-
</table>
|
|
301
|
-
|
|
172
|
+
| 语言版本 | 签名算法 | 源代码 | 使用示例 |
|
|
173
|
+
| --- | --- | --- | --- |
|
|
174
|
+
| Java | HMAC-SHA256 | [genSig](https://github.com/tencentyun/tls-sig-api-v2-java/blob/master/src/main/java/com/tencentyun/TLSSigAPIv2.java) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-java) |
|
|
175
|
+
| GO | HMAC-SHA256 | [GenSig](https://github.com/tencentyun/tls-sig-api-v2-golang/blob/master/tencentyun/TLSSigAPI.go) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-golang) |
|
|
176
|
+
| PHP | HMAC-SHA256 | [genSig](https://github.com/tencentyun/tls-sig-api-v2-php/blob/master/src/TLSSigAPIv2.php) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-php) |
|
|
177
|
+
| Node.js | HMAC-SHA256 | [genSig](https://github.com/tencentyun/tls-sig-api-v2-node/blob/master/TLSSigAPIv2.js) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-node) |
|
|
178
|
+
| Python | HMAC-SHA256 | [genSig](https://github.com/tencentyun/tls-sig-api-v2-python/blob/master/TLSSigAPIv2.py) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-python) |
|
|
179
|
+
| C# | HMAC-SHA256 | [GenSig](https://github.com/tencentyun/tls-sig-api-v2-cs/blob/master/tls-sig-api-v2-cs/TLSSigAPIv2.cs) | [GitHub](https://github.com/tencentyun/tls-sig-api-v2-cs) |
|
|
302
180
|
|
|
303
181
|
## 常见问题
|
|
304
182
|
|
|
305
183
|
### **SDK 密钥如何切换为非对称密钥?**
|
|
306
184
|
|
|
307
185
|
若查看密钥时只能获取公钥和私钥信息,可点击下图所示位置切换为最新的非对称密钥,请注意:切换密钥前请确保线上业务已停用。
|
|
308
|
-
|
|
309
|
-

|
|
@@ -17,9 +17,6 @@
|
|
|
17
17
|
|
|
18
18
|
SDK 提供的弹窗适配桌面端和移动端浏览器,样式如下:
|
|
19
19
|
|
|
20
|
-

|
|
21
|
-

|
|
22
|
-
|
|
23
20
|
- SDK 会根据 [navigator.language](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/language) 的值来切换中英文弹窗提示。
|
|
24
21
|
- 当用户点击"确认"时,SDK 自动调用相关接口来恢复播放。
|
|
25
22
|
- 为尽可能保证弹窗处于最上层展示,其 z-index 值为 1500。
|
|
@@ -128,10 +125,8 @@ trtc.on(TRTC.EVENT.ERROR, error => {
|
|
|
128
125
|
| 2-A | 用户网络可以访问特定的外网代理服务器 | 代理服务器搭建在外网,内网防火墙需开通白名单,允许内网用户访问外网的代理服务器。 |
|
|
129
126
|
| 2-B | 用户网络只能访问内网代理服务器 | 代理服务器搭建在内网,内网防火墙需开通白名单,允许内网代理服务器访问外网。 |
|
|
130
127
|
|
|
131
|
-

|
|
132
128
|
2-A 方案示例图
|
|
133
129
|
|
|
134
|
-

|
|
135
130
|
2-B 方案示例图
|
|
136
131
|
|
|
137
132
|
### 设置代理服务器
|
|
@@ -139,7 +134,7 @@ trtc.on(TRTC.EVENT.ERROR, error => {
|
|
|
139
134
|
当您搭建好 Nginx 和 Turn server 后,可以参考如下示例,设置代理服务器。
|
|
140
135
|
|
|
141
136
|
```javascript
|
|
142
|
-
const trtc = TRTC.create();
|
|
137
|
+
const trtc = TRTC.create();
|
|
143
138
|
await trtc.enterRoom({
|
|
144
139
|
...,
|
|
145
140
|
proxy: {
|
|
@@ -148,7 +143,7 @@ await trtc.enterRoom({
|
|
|
148
143
|
// 设置 turn server,用于中转 SDK 与 TRTC 后台的媒体数据包。14.3.3.3:3478 为 turn server 的 ip 及端口。
|
|
149
144
|
turnServer: { url: '14.3.3.3:3478', username: 'turn', credential: 'turn', credentialType: 'password' },
|
|
150
145
|
// 默认 SDK 会直连 TRTC 服务器,如果连不上,则会尝试连 TURN server。你可以指定 'relay' 来强制连接 TURN server。
|
|
151
|
-
iceTransportPolicy: 'all',
|
|
146
|
+
iceTransportPolicy: 'all',
|
|
152
147
|
// SDK 默认会向 yun.tim.qq.com 域名上报日志,但若该域名在您的内网无法访问,您需要给该域名开白名单或者配置以下日志代理。
|
|
153
148
|
// 设置日志上报代理,日志是排查问题的关键数据,请务必设置该代理。
|
|
154
149
|
loggerProxy: 'https://proxy.example.com/logger/',
|
|
@@ -167,29 +162,29 @@ await trtc.enterRoom({
|
|
|
167
162
|
2. **配置 Nginx 服务器**
|
|
168
163
|
|
|
169
164
|
```sh
|
|
170
|
-
vi /etc/nginx/nginx.conf
|
|
165
|
+
vi /etc/nginx/nginx.conf
|
|
171
166
|
```
|
|
172
167
|
|
|
173
168
|
```nginx
|
|
174
169
|
http {
|
|
175
|
-
server {
|
|
170
|
+
server {
|
|
176
171
|
# nginx 服务器的访问域名
|
|
177
|
-
server_name proxy.example.com;
|
|
172
|
+
server_name proxy.example.com;
|
|
178
173
|
# nginx 服务器的访问端口
|
|
179
|
-
listen 443;
|
|
180
|
-
ssl on;
|
|
174
|
+
listen 443;
|
|
175
|
+
ssl on;
|
|
181
176
|
location /ws/ { # 对应 setProxyServer 中的 websocketProxy 参数
|
|
182
177
|
proxy_pass https://signaling.rtc.qq.com/; # TRTC 的服务器
|
|
183
|
-
proxy_http_version 1.1;
|
|
184
|
-
proxy_set_header Upgrade $http_upgrade;
|
|
185
|
-
proxy_set_header Connection "upgrade";
|
|
178
|
+
proxy_http_version 1.1;
|
|
179
|
+
proxy_set_header Upgrade $http_upgrade;
|
|
180
|
+
proxy_set_header Connection "upgrade";
|
|
186
181
|
}
|
|
187
182
|
location /logger/ { # 对应 setProxyServer 中的 loggerProxy 参数
|
|
188
183
|
proxy_pass https://yun.tim.qq.com/;
|
|
189
184
|
}
|
|
190
|
-
#域名对应的 SSL 证书,HTTPS 用,用户自行申请
|
|
191
|
-
ssl_certificate ./crt/1_proxy.trtcapi.com_bundle.crt;
|
|
192
|
-
ssl_certificate_key ./crt/2_proxy.trtcapi.com.key;
|
|
185
|
+
#域名对应的 SSL 证书,HTTPS 用,用户自行申请
|
|
186
|
+
ssl_certificate ./crt/1_proxy.trtcapi.com_bundle.crt;
|
|
187
|
+
ssl_certificate_key ./crt/2_proxy.trtcapi.com.key;
|
|
193
188
|
}
|
|
194
189
|
}
|
|
195
190
|
```
|
|
@@ -272,7 +267,7 @@ await trtc.enterRoom({
|
|
|
272
267
|
# 检测 turn 是否启动成功
|
|
273
268
|
ps aux | grep coturn
|
|
274
269
|
# 若要重启服务,则执行
|
|
275
|
-
service coturn restart
|
|
270
|
+
service coturn restart
|
|
276
271
|
```
|
|
277
272
|
|
|
278
273
|
5. **配置 turn 服务器的防火墙,打开入站端口 3478(TCP & UDP),及上述配置中 min ~ max port 之间的出站端口(UDP)。**
|
|
@@ -283,8 +278,6 @@ await trtc.enterRoom({
|
|
|
283
278
|
|
|
284
279
|
使用该[测试页面](https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/),测试搭建好的 turn server 是否能够正常连通访问。如下截图中 done 说明 turn 能正常访问。
|
|
285
280
|
|
|
286
|
-

|
|
287
|
-
|
|
288
281
|
### 2-B 方案
|
|
289
282
|
|
|
290
283
|
2-B 方案搭建 Nginx 代理的方式,与 2-A 方案相同。主要有两处区别:
|
|
@@ -300,4 +293,4 @@ await trtc.enterRoom({
|
|
|
300
293
|
|
|
301
294
|
2. 防火墙配置:
|
|
302
295
|
- 对于 Nginx 服务器,需要在公司内网防火墙配置域名白名单,允许 Nginx 服务器访问 TRTC 的相关域名,参考:[TRTC Web SDK 域名和端口白名单](https://cloud.tencent.com/document/product/647/34399#webrtc-.E9.9C.80.E8.A6.81.E9.85.8D.E7.BD.AE.E5.93.AA.E4.BA.9B.E7.AB.AF.E5.8F.A3.E6.88.96.E5.9F.9F.E5.90.8D.E4.B8.BA.E7.99.BD.E5.90.8D.E5.8D.95.EF.BC.9F)
|
|
303
|
-
- 对于 Turn Server,需要允许 Turn Server 能够访问外网。
|
|
296
|
+
- 对于 Turn Server,需要允许 Turn Server 能够访问外网。
|
|
@@ -14,8 +14,6 @@ TRTC对象 通过 [TRTC.create()](#create) 创建,提供实时音视频的核
|
|
|
14
14
|
|
|
15
15
|
TRTC 生命周期如图所示:
|
|
16
16
|
|
|
17
|
-

|
|
18
|
-
|
|
19
17
|
## Methods
|
|
20
18
|
|
|
21
19
|
### create()
|
|
@@ -116,7 +114,6 @@ await trtc.exitRoom();
|
|
|
116
114
|
为观众切换直播房间。
|
|
117
115
|
|
|
118
116
|
- 在直播场景中切换观众正在观看的房间。这比退出旧房间再进入新房间更快,可以优化直播等场景的打开时间。
|
|
119
|
-
- [联系我们](https://cloud.tencent.com/document/product/647/19906) 以启用此 API。
|
|
120
117
|
|
|
121
118
|
#### 示例
|
|
122
119
|
|
|
@@ -210,7 +207,7 @@ await trtc.switchRole(TRTC.TYPE.ROLE_ANCHOR, { privateMapKey: 'your new privateM
|
|
|
210
207
|
|
|
211
208
|
### destroy()
|
|
212
209
|
|
|
213
|
-
销毁 TRTC 实例
|
|
210
|
+
销毁 TRTC 实例
|
|
214
211
|
|
|
215
212
|
在退房之后,若业务侧无需再使用 trtc 时,需调用该接口及时销毁 trtc 实例,释放相关资源。
|
|
216
213
|
|
|
@@ -1072,7 +1069,7 @@ const processedVideoTrack = trtc.getVideoTrack({ processed: true });
|
|
|
1072
1069
|
|
|
1073
1070
|
`getVideoSnapshot()`
|
|
1074
1071
|
|
|
1075
|
-
获取视频帧
|
|
1072
|
+
获取视频帧
|
|
1076
1073
|
|
|
1077
1074
|
注意事项: Stream 必须经过播放才可以获取视频帧,如果没有播放将会返回空字符串
|
|
1078
1075
|
|
|
@@ -1106,7 +1103,7 @@ document.body.appendChild(img);
|
|
|
1106
1103
|
|
|
1107
1104
|
`sendSEIMessage(buffer, options)`
|
|
1108
1105
|
|
|
1109
|
-
发送 SEI Message
|
|
1106
|
+
发送 SEI Message
|
|
1110
1107
|
|
|
1111
1108
|
视频帧的头部有一个叫做 SEI 的头部数据块,该接口的原理就是利用这个被称为 SEI 的头部数据块,将您要发送的自定义信令嵌入其中,使其同视频帧一并发送出去。SEI 消息可以伴随着视频帧一直传输到直播 CDN 上。
|
|
1112
1109
|
|
|
@@ -1170,7 +1167,7 @@ trtc.on(TRTC.EVENT.SEI_MESSAGE, event => {
|
|
|
1170
1167
|
|
|
1171
1168
|
`sendCustomMessage(message)`
|
|
1172
1169
|
|
|
1173
|
-
发送自定义消息,消息会广播给房间内的所有用户。
|
|
1170
|
+
发送自定义消息,消息会广播给房间内的所有用户。
|
|
1174
1171
|
|
|
1175
1172
|
Note:
|
|
1176
1173
|
|
|
@@ -1264,7 +1261,6 @@ TRTC.setLogLevel(1);
|
|
|
1264
1261
|
| 名称 | 类型 | 默认值 | 描述 |
|
|
1265
1262
|
|------|------|--------|------|
|
|
1266
1263
|
| level | 0-5 | | 日志输出等级 0: TRACE 1: DEBUG 2: INFO 3: WARN 4: ERROR 5: NONE |
|
|
1267
|
-
| enableUploadLog | boolean | true | 是否开启日志上传,默认开启。不建议关闭,关闭后将影响问题排障。<br /> - 日志上传至腾讯云的服务器,仅供开发人员排查问题使用。如果您需要获取日志信息,可以[联系我们](https://cloud.tencent.com/document/product/647/19906) |
|
|
1268
1264
|
|
|
1269
1265
|
### TRTC.isSupported
|
|
1270
1266
|
|
|
@@ -2036,7 +2032,7 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2036
2032
|
|
|
2037
2033
|
**默认值:** 5000
|
|
2038
2034
|
|
|
2039
|
-
调用接口时传入了不满足 API 要求的参数
|
|
2035
|
+
调用接口时传入了不满足 API 要求的参数
|
|
2040
2036
|
处理建议:请检查传入参数是否符合 API 的规范,例如参数类型是否正确。
|
|
2041
2037
|
|
|
2042
2038
|
| extraCode | 描述 |
|
|
@@ -2064,7 +2060,7 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2064
2060
|
|
|
2065
2061
|
**默认值:** 5100
|
|
2066
2062
|
|
|
2067
|
-
调用接口时,不满足 API 的前提要求。
|
|
2063
|
+
调用接口时,不满足 API 的前提要求。
|
|
2068
2064
|
处理建议:请根据对应 API 文档检查调用逻辑是否符合 API 的前提要求。例如:1.未进房成功就进行切换角色,2.播放的远端用户和流不存在。
|
|
2069
2065
|
|
|
2070
2066
|
| extraCode | 描述 |
|
|
@@ -2083,7 +2079,7 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2083
2079
|
|
|
2084
2080
|
**默认值:** 5200
|
|
2085
2081
|
|
|
2086
|
-
当前环境不支持该功能,表明当前浏览器不支持调用对应 API
|
|
2082
|
+
当前环境不支持该功能,表明当前浏览器不支持调用对应 API
|
|
2087
2083
|
处理建议:通常使用 TRTC.isSupported 可感知当前浏览器支持哪些能力。如果浏览器不支持,需要引导用户使用支持该能力的浏览器,参考:[检测浏览器支持性](https://web.sdk.qcloud.com/trtc/webrtc/doc/zh-cn/tutorial-23-advanced-support-detection.html)
|
|
2088
2084
|
|
|
2089
2085
|
| extraCode | 描述 |
|
|
@@ -2105,7 +2101,7 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2105
2101
|
|
|
2106
2102
|
**默认值:** 5300
|
|
2107
2103
|
|
|
2108
|
-
获取设备或者采集音视频出现异常。这些接口出现异常时会抛出该错误码:[trtc.startLocalAudio](TRTC.html#startLocalAudio) [trtc.startLocalVideo](TRTC.html#startLocalVideo) [trtc.startScreenShare](TRTC.html#startScreenShare)。
|
|
2104
|
+
获取设备或者采集音视频出现异常。这些接口出现异常时会抛出该错误码:[trtc.startLocalAudio](TRTC.html#startLocalAudio) [trtc.startLocalVideo](TRTC.html#startLocalVideo) [trtc.startScreenShare](TRTC.html#startScreenShare)。
|
|
2109
2105
|
处理建议:引导用户检查设备是否有摄像头及麦克风、系统是否给浏览器授权以及浏览器是否给页面授权。建议增加进房前的设备检测流程,确认麦克风和摄像头是否存在,并且能正常采集,再进行下一步通话操作。通常经过设备检查后都能避免该异常。实现方式请参考: [通话前环境与设备检测](tutorial-23-advanced-support-detection.html)。
|
|
2110
2106
|
|
|
2111
2107
|
| extraCode | 描述 |
|
|
@@ -2124,8 +2120,8 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2124
2120
|
|
|
2125
2121
|
**默认值:** 5400
|
|
2126
2122
|
|
|
2127
|
-
收到服务端返回的异常数据时抛出该错误码
|
|
2128
|
-
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2123
|
+
收到服务端返回的异常数据时抛出该错误码
|
|
2124
|
+
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2129
2125
|
处理建议:服务端异常通常在开发阶段处理,常见的异常有:传入的 userSig 过期,腾讯云账号欠费,未开通TRTC服务等,服务端返回异常数据有以下原因。
|
|
2130
2126
|
|
|
2131
2127
|
| extraCode | 描述 |
|
|
@@ -2211,8 +2207,8 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2211
2207
|
|
|
2212
2208
|
**默认值:** 5500
|
|
2213
2209
|
|
|
2214
|
-
在满足 API 调用要求的情况下,SDK 经过多次重试仍然无法解决的异常,通常是由于浏览器、网络的问题造成。
|
|
2215
|
-
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2210
|
+
在满足 API 调用要求的情况下,SDK 经过多次重试仍然无法解决的异常,通常是由于浏览器、网络的问题造成。
|
|
2211
|
+
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2216
2212
|
处理建议:
|
|
2217
2213
|
- 确认通信必需的域名和端口是否满足您的网络环境要求,参考文档[应对防火墙限制及设置代理](https://cloud.tencent.com/document/product/647/34399#WebRTC-.E9.9C.80.E8.A6.81.E9.85.8D.E7.BD.AE.E5.93.AA.E4.BA.9B.E7.AB.AF.E5.8F.A3.E6.88.96.E5.9F.9F.E5.90.8D.E4.B8.BA.E7.99.BD.E5.90.8D.E5.8D.95.EF.BC.9F)
|
|
2218
2214
|
- 其他问题需要联系工程师处理 [在线客服](https://cloud.tencent.com/act/event/Online_service?from=doc_647)
|
|
@@ -2231,16 +2227,16 @@ trtc.on(TRTC.EVENT.ERROR, (error) => {
|
|
|
2231
2227
|
|
|
2232
2228
|
**默认值:** 5998
|
|
2233
2229
|
|
|
2234
|
-
中止 API 执行时抛出该错误码。在不满足 API 生命周期的调用或重复调用时 API 会中止执行,避免无意义的操作。
|
|
2235
|
-
例如:连续调用 enterRoom,startLocalXxx等接口,在没有进房就调用退房。
|
|
2236
|
-
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2230
|
+
中止 API 执行时抛出该错误码。在不满足 API 生命周期的调用或重复调用时 API 会中止执行,避免无意义的操作。
|
|
2231
|
+
例如:连续调用 enterRoom,startLocalXxx等接口,在没有进房就调用退房。
|
|
2232
|
+
以下接口出现异常时会抛出该错误码:`enterRoom`,`startLocalVideo`, `startLocalAudio`, `startScreenShare`, `startRemoteVideo`, `switchRole`
|
|
2237
2233
|
处理建议:捕获并识别该错误码,然后在业务逻辑规避不必要的调用,或者也可以不做任何处理,因为 SDK 做了无副作用处理,您只需在 catch 时识别该错误码并忽略。
|
|
2238
2234
|
|
|
2239
2235
|
#### UNKNOWN_ERROR
|
|
2240
2236
|
|
|
2241
2237
|
**默认值:** 5999
|
|
2242
2238
|
|
|
2243
|
-
未知错误或者未被定义的错误
|
|
2239
|
+
未知错误或者未被定义的错误
|
|
2244
2240
|
处理建议:联系工程师处理 [在线客服](https://cloud.tencent.com/act/event/Online_service?from=doc_647)
|
|
2245
2241
|
|
|
2246
2242
|
## TYPE
|
|
@@ -2360,4 +2356,4 @@ TRTC.TYPE.SCENE_LIVE
|
|
|
2360
2356
|
**默认值:** `'clear'`
|
|
2361
2357
|
|
|
2362
2358
|
弱网时,视频编码策略以清晰度优先,即优先保分辨率。
|
|
2363
|
-
摄像头默认流畅度优先,屏幕分享默认清晰度优先。
|
|
2359
|
+
摄像头默认流畅度优先,屏幕分享默认清晰度优先。
|
|
@@ -65,7 +65,6 @@ import TRTC from 'trtc-sdk-v5';
|
|
|
65
65
|
- 在事件回调函数中,调用 [trtc.startRemoteVideo()](TRTC.html#startRemoteVideo) 方法播放远端视频。
|
|
66
66
|
|
|
67
67
|
下图展示了实现音视频通话全过程的基础 API 调用流程:
|
|
68
|
-

|
|
69
68
|
|
|
70
69
|
## 创建 TRTC 对象
|
|
71
70
|
|
|
@@ -143,7 +142,7 @@ trtc.on(TRTC.EVENT.REMOTE_VIDEO_AVAILABLE, ({ userId, streamType }) => {
|
|
|
143
142
|
调用 [trtc.exitRoom()](TRTC.html#exitRoom) 方法退出房间,结束音视频通话。
|
|
144
143
|
|
|
145
144
|
```javascript
|
|
146
|
-
await trtc.exitRoom();
|
|
145
|
+
await trtc.exitRoom();
|
|
147
146
|
// 退房成功后,若后续无需使用 trtc 实例,则可以调用 trtc.destroy 方法销毁实例,及时释放相关资源。销毁后的 trtc 实例无法继续使用,需要重新创建新的实例。
|
|
148
147
|
trtc.destroy();
|
|
149
148
|
```
|
|
@@ -321,8 +320,6 @@ await trtcA.startScreenShare({ option: { systemAudio: true }});
|
|
|
321
320
|
|
|
322
321
|
在弹出的对话框中勾选`分享音频`,系统音频会与本地麦克风混音后发布,房间内其他用户会收到 TRTC.EVENT.REMOTE_AUDIO_AVALIABLE 事件
|
|
323
322
|
|
|
324
|
-

|
|
325
|
-
|
|
326
323
|
5. **停止屏幕分享**
|
|
327
324
|
|
|
328
325
|
```javascript
|
|
@@ -337,8 +334,6 @@ trtcB.on(TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE, ({ userId, streamType }) => {
|
|
|
337
334
|
|
|
338
335
|
另外用户还可能会通过浏览器自带的按钮停止屏幕分享,因此屏幕分享流需要监听屏幕分享停止事件,并进行相应的处理。
|
|
339
336
|
|
|
340
|
-

|
|
341
|
-
|
|
342
337
|
```javascript
|
|
343
338
|
// 监听屏幕分享停止事件
|
|
344
339
|
trtcA.on(TRTC.EVENT.SCREEN_SHARE_STOPPED, () => {
|
|
@@ -441,7 +436,7 @@ async function startScreenShare() {
|
|
|
441
436
|
async function onClick() {
|
|
442
437
|
// 建议在 onClick 执行时,先执行采集逻辑
|
|
443
438
|
await trtcA.startScreenShare();
|
|
444
|
-
await trtcA.enterRoom({
|
|
439
|
+
await trtcA.enterRoom({
|
|
445
440
|
roomId: 123123,
|
|
446
441
|
sdkAppId: 140000000, // 填写您的 sdkAppId
|
|
447
442
|
userId: 'userA', // 填写您的 userId
|
|
@@ -449,7 +444,7 @@ async function onClick() {
|
|
|
449
444
|
});
|
|
450
445
|
// bad
|
|
451
446
|
async function onClick() {
|
|
452
|
-
await trtcA.enterRoom({
|
|
447
|
+
await trtcA.enterRoom({
|
|
453
448
|
roomId: 123123,
|
|
454
449
|
sdkAppId: 140000000, // 填写您的 sdkAppId
|
|
455
450
|
userId: 'userA', // 填写您的 userId
|
|
@@ -489,7 +484,6 @@ async function checkAndApplyDeviceAccessPrivilege() {
|
|
|
489
484
|
|
|
490
485
|
4. **[WebRTC 屏幕分享已知问题及规避方案](./tutorial-02-info-webrtc-issues.html#h2-9)**
|
|
491
486
|
|
|
492
|
-
|
|
493
487
|
# Tutorial: 设置本地视频属性
|
|
494
488
|
|
|
495
489
|
本文主要介绍如何在视频通话或互动直播中设置视频属性,开发者可以根据具体业务需求调整视频画面的清晰度和流畅度,获得更好的用户体验。视频属性包括分辨率、帧率和码率。
|
|
@@ -543,4 +537,4 @@ await trtc.updateLocalVideo({
|
|
|
543
537
|
| 1440p | 2560 x 1440 | 30 | 4860 | |
|
|
544
538
|
| 4K | 3840 x 2160 | 30 | 9000 | |
|
|
545
539
|
|
|
546
|
-
- 由于设备和浏览器的限制,视频分辨率不一定能够完全匹配,在这种情况下,浏览器会自动调整分辨率使其接近 Profile 对应的分辨率
|
|
540
|
+
- 由于设备和浏览器的限制,视频分辨率不一定能够完全匹配,在这种情况下,浏览器会自动调整分辨率使其接近 Profile 对应的分辨率
|
|
@@ -17,15 +17,11 @@
|
|
|
17
17
|
1. 下载 Web 端 SDK 及配套的 Demo 源码。
|
|
18
18
|
2. 下载完成后,单击 **“已下载,下一步”**。
|
|
19
19
|
|
|
20
|
-

|
|
21
|
-
|
|
22
20
|
### 步骤3:获取 SDKAppId 和 密钥(SDKSecretKey)
|
|
23
21
|
|
|
24
22
|
1. 进入修改配置页,获取 `SDKAppID` 和 `密钥`。
|
|
25
23
|
2. 复制粘贴 SDKAppId 和 密钥(SDKSecretKey)完成后,单击 **已复制粘贴,下一步** 即创建成功。
|
|
26
24
|
|
|
27
|
-

|
|
28
|
-
|
|
29
25
|
### 步骤4:运行 Demo
|
|
30
26
|
|
|
31
27
|
TRTC Web 目前提供以下几种基础 Demo,您可以选择您熟悉的项目框架进行运行体验:
|
|
@@ -43,7 +39,7 @@ TRTC Web 目前提供以下几种基础 Demo,您可以选择您熟悉的项目
|
|
|
43
39
|
|
|
44
40
|
1. 在下载的源码中找到并使用浏览器打开 `TRTC_Web/quick-demo-js/index.html` 文件。
|
|
45
41
|
2. 在浏览器打开的页面中填写 [步骤三](#step3) 获取的 SDKAppId 和 SDKSecretKey。
|
|
46
|
-
|
|
42
|
+
|
|
47
43
|
3. 功能体验
|
|
48
44
|
- 点击【Enter Room】按钮进入房间
|
|
49
45
|
- 点击【Start Local Audio/Video】按钮,可采集麦克风或摄像头
|
|
@@ -64,7 +60,7 @@ TRTC Web 目前提供以下几种基础 Demo,您可以选择您熟悉的项目
|
|
|
64
60
|
```
|
|
65
61
|
默认浏览器会自动打开 http://localhost:8080/ 地址。
|
|
66
62
|
3. 在浏览器打开的页面中填写 [步骤三](#step3) 获取的 SDKAppId 和 SDKSecretKey。
|
|
67
|
-
|
|
63
|
+
|
|
68
64
|
4. 功能体验
|
|
69
65
|
- 点击【进入房间】按钮进入房间
|
|
70
66
|
- 点击【采集麦克风/摄像头】按钮,可采集麦克风或摄像头
|
|
@@ -82,7 +78,7 @@ TRTC Web 目前提供以下几种基础 Demo,您可以选择您熟悉的项目
|
|
|
82
78
|
```
|
|
83
79
|
默认浏览器会自动打开 http://localhost:3000/ 地址。
|
|
84
80
|
3. 在浏览器打开的页面中填写 [步骤三](#step3) 获取的 SDKAppId 和 SDKSecretKey。
|
|
85
|
-
|
|
81
|
+
|
|
86
82
|
4. 功能体验
|
|
87
83
|
- 输入 userId 和 roomId
|
|
88
84
|
- 点击【Enter Room】按钮进入房间
|
|
@@ -94,4 +90,4 @@ TRTC Web 目前提供以下几种基础 Demo,您可以选择您熟悉的项目
|
|
|
94
90
|
|
|
95
91
|
> **注意:**
|
|
96
92
|
> - 本文使用的生成 UserSig 的方案是在客户端中配置 SECRETKEY,该方法中 SECRETKEY 很容易被反编译逆向破解,一旦您的密钥泄露,攻击者就可以盗用您的腾讯云流量,因此**该方法仅适合本地跑通 Demo 和功能调试**。
|
|
97
|
-
> - 正确的 UserSig 签发方式是将 UserSig 的计算代码集成到您的服务端,并提供面向 App 的接口,在需要 UserSig 时由您的 App 向业务服务器发起请求获取动态 UserSig。更多详情请参见 [服务端生成 UserSig](https://cloud.tencent.com/document/product/647/17275#Server)。
|
|
93
|
+
> - 正确的 UserSig 签发方式是将 UserSig 的计算代码集成到您的服务端,并提供面向 App 的接口,在需要 UserSig 时由您的 App 向业务服务器发起请求获取动态 UserSig。更多详情请参见 [服务端生成 UserSig](https://cloud.tencent.com/document/product/647/17275#Server)。
|
|
@@ -31,7 +31,7 @@ if (!HTMLVideoElement.prototype.captureStream) {
|
|
|
31
31
|
console.log('your browser does not support capturing stream from video element');
|
|
32
32
|
return
|
|
33
33
|
}
|
|
34
|
-
// 获取您页面在播放视频的 video 标签
|
|
34
|
+
// 获取您页面在播放视频的 video 标签
|
|
35
35
|
const video = document.getElementByID('your-video-element-ID');
|
|
36
36
|
// 从播放的视频采集视频流
|
|
37
37
|
const stream = video.captureStream();
|
|
@@ -50,7 +50,7 @@ if (!HTMLCanvasElement.prototype.captureStream) {
|
|
|
50
50
|
console.log('your browser does not support capturing stream from canvas element');
|
|
51
51
|
return
|
|
52
52
|
}
|
|
53
|
-
// 获取您的 canvas 标签
|
|
53
|
+
// 获取您的 canvas 标签
|
|
54
54
|
const canvas = document.getElementByID('your-canvas-element-ID');
|
|
55
55
|
|
|
56
56
|
// 从 canvas 采集 15 fps 的视频流
|
|
@@ -78,7 +78,7 @@ trtc.startLocalVideo({ option:{ videoTrack } });
|
|
|
78
78
|
trtc.on(TRTC.EVENT.TRACK, event => {
|
|
79
79
|
const isLocal = event.userId === ''; // userId === '' means event.track is a local track, otherwise it's a remote track
|
|
80
80
|
const isSubStream = event.streamType === TRTC.TYPE.STREAM_TYPE_SUB; // Usually the sub stream is a screen-sharing video stream.
|
|
81
|
-
const mediaStreamTrack = event.track;
|
|
81
|
+
const mediaStreamTrack = event.track;
|
|
82
82
|
const kind = event.track.kind; // audio or video
|
|
83
83
|
})
|
|
84
84
|
```
|