@tencent-rtc/mcp 1.3.9 → 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/package.json +2 -2
- package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/android-faq.md} +10 -22
- package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/flutter-faq.md} +10 -22
- package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/ios-faq.md} +10 -22
- package/resource/doc/callkit/preset/android/api.md +296 -0
- package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +53 -365
- package/resource/doc/callkit/preset/flutter/api.md +410 -0
- package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +35 -97
- package/resource/doc/callkit/preset/ios/api.md +80 -0
- package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +37 -118
- package/resource/doc/callkit/preset/react/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +5 -20
- package/resource/doc/callkit/preset/vue/api.md +501 -0
- package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +4 -19
- package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -38
- package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/android/integration.md +28 -121
- package/resource/doc/chatkit/faq/android_sdk/client-api.md +281 -0
- package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +0 -1
- package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -1
- package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +199 -0
- package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
- package/resource/doc/chatkit/faq/ios_sdk/client-api.md +235 -0
- package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +3 -3
- package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
- package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +18 -87
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -38
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
- package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +47 -165
- package/resource/doc/{chatuikit → chatkit}/react/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +8 -49
- package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +6 -35
- package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +0 -6
- package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -11
- package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +96 -502
- 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 +118 -0
- package/resource/doc/chatkit/react/components/conversation-search.md +60 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -337
- package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +20 -212
- package/resource/doc/chatkit/react/components/search.md +243 -0
- package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +1 -47
- package/resource/doc/{chatuikit → chatkit}/react/integration.md +21 -81
- package/resource/doc/{chatuikit → chatkit}/vue/components/avatar.md +0 -33
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -48
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +3 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +0 -5
- package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -15
- 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 -492
- 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 +2 -223
- package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -252
- package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
- package/resource/doc/{chatuikit → chatkit}/vue/components/tuikit.md +7 -21
- package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +3 -62
- package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
- package/resource/doc/{chatuikit → chatkit}/vue/integration.md +22 -23
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +18 -89
- 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 +28 -141
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +20 -112
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +59 -193
- 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 +94 -344
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +107 -515
- package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +33 -173
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +14 -93
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -179
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +19 -107
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -166
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -163
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +69 -443
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +107 -492
- package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +23 -165
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +35 -111
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +35 -193
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +31 -144
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +24 -116
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +37 -171
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +79 -459
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +69 -320
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +85 -502
- package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +32 -169
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +18 -89
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +28 -141
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +50 -259
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +51 -265
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +61 -427
- package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +33 -173
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -203
- package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +56 -416
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +35 -111
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +35 -193
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +31 -144
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +43 -252
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +79 -459
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +46 -264
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-integration.md +61 -445
- package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +32 -169
- package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -2
- 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 +10 -49
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +26 -144
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +12 -75
- package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +36 -227
- package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +215 -0
- package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
- package/resource/doc/livekit/preset/live/vue/live-list-integration.md +241 -0
- package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +299 -0
- package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +300 -0
- package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +743 -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 -34
- package/resource/doc/roomkit/vue/features/room-view.md +30 -125
- 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 -29
- package/resource/doc/roomkit/vue/integration.md +21 -76
- package/resource/doc/rtcengine/faq/common/error_code.md +1 -0
- package/resource/doc/rtcengine/faq/web/web.md +14 -24
- package/resource/doc/rtcengine/web/api.md +1 -3
- package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +3 -10
- package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +1 -5
- package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +1 -2
- package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -4
- package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +3 -5
- package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +1 -7
- package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +0 -2
- package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +4 -8
- package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +11 -11
- package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +12 -88
- package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -5
- package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +30 -37
- package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +13 -90
- package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -2
- package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +1 -2
- package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +19 -19
- 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 -5
- package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
- package/resource/doc/trtc/C++/ITRTCCloud.md +686 -2835
- package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
- package/resource/doc/trtc/C++/ITXAudioEffectManager.md +202 -1022
- package/resource/doc/trtc/C++/ITXDeviceManager.md +126 -767
- package/resource/doc/trtc/C++/TRTCCloudCallback.md +579 -2147
- package/resource/doc/trtc/C++/TRTCTypeDef.md +703 -3378
- package/resource/doc/trtc/C++/TXLiteAVCode.md +116 -908
- package/resource/doc/trtc/android/TRTCCloud.md +606 -2573
- package/resource/doc/trtc/android/TRTCCloudDef.md +752 -3640
- package/resource/doc/trtc/android/TRTCCloudListener.md +581 -2008
- package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/android/TXAudioEffectManager.md +202 -1022
- 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 +114 -892
- package/resource/doc/trtc/iOS/TRTCCloud.md +694 -2904
- package/resource/doc/trtc/iOS/TRTCCloudDef.md +726 -3498
- package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +543 -2028
- package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
- package/resource/doc/trtc/iOS/TXAudioEffectManager.md +174 -877
- 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/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 +29 -0
- package/tools/definitions/get_callkit_api_def.js.map +1 -0
- package/tools/definitions/get_faq_def.js +17 -18
- package/tools/definitions/get_faq_def.js.map +1 -1
- package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
- 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 -41
- package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_native_livekit_core_features_def.js +34 -0
- package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
- package/tools/definitions/get_native_livekit_core_integration_def.js +34 -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 -22
- 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 +15 -18
- package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_livekit_api_def.js +30 -0
- package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js +32 -0
- package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
- package/tools/definitions/get_web_room_uikit_integration_def.js +15 -46
- package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
- package/tools/definitions/get_web_roomkit_feature_detail_def.js +31 -0
- package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js +27 -0
- package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
- package/tools/definitions/present_framework_choice_def.js +24 -12
- package/tools/definitions/present_framework_choice_def.js.map +1 -1
- package/tools/index.js +47 -61
- 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 +2 -2
- package/resource/doc/chatuikit/android/workflow.md +0 -713
- package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1371
- package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -932
- package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1119
- package/resource/doc/chatuikit/flutter/workflow.md +0 -941
- package/resource/doc/chatuikit/react/components/conversation-list.md +0 -1017
- package/resource/doc/chatuikit/react/components/search.md +0 -745
- package/resource/doc/chatuikit/react/create-group.md +0 -23
- package/resource/doc/chatuikit/react/init.md +0 -26
- package/resource/doc/chatuikit/react/workflow.md +0 -258
- package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
- package/resource/doc/chatuikit/vue/create-group.md +0 -25
- package/resource/doc/chatuikit/vue/init.md +0 -40
- package/resource/doc/chatuikit/vue/workflow.md +0 -395
- package/resource/doc/livekit/live/android/workflow.md +0 -320
- package/resource/doc/livekit/live/flutter/workflow.md +0 -353
- package/resource/doc/livekit/live/ios/workflow.md +0 -454
- package/resource/doc/livekit/live/vue/components/barrage.md +0 -616
- package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -446
- package/resource/doc/livekit/live/vue/faq.md +0 -0
- package/resource/doc/livekit/live/vue/live-list-integration.md +0 -200
- package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -269
- package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -595
- package/resource/doc/livekit/live/vue/states/live-state.md +0 -3591
- package/resource/doc/livekit/live/vue/workflow.md +0 -218
- package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -312
- package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -430
- package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -679
- package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -671
- package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -271
- 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 -865
- package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -657
- package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -437
- package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -335
- package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
- package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -327
- package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
- package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -659
- package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
- package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -814
- package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1000
- package/resource/doc/roomkit/vue/features/workflow.md +0 -553
- package/resource/doc/roomkit/vue/workflow.md +0 -733
- package/resource/doc/tuicallkit/android/workflow.md +0 -441
- package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -784
- package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -610
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -938
- package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -897
- package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -469
- package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -781
- package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -398
- package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
- package/resource/doc/tuicallkit/react/api.md +0 -1404
- package/resource/doc/tuicallkit/vue/api.md +0 -1406
- package/resource/doc/tuicallkit/vue/faq.md +0 -36
- 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/present-scenario-choice.js +0 -16
- package/tools/common/present-scenario-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 -23
- package/tools/definitions/get_native_live_api_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -87
- 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 -75
- package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
- package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
- package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
- package/tools/definitions/get_trtc_native_api_def.js +0 -16
- 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 -92
- package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
- package/tools/definitions/get_web_room_state_detail_def.js +0 -19
- package/tools/definitions/get_web_room_state_detail_def.js.map +0 -1
- package/tools/definitions/present_scenario_choice_def.js +0 -53
- package/tools/definitions/present_scenario_choice_def.js.map +0 -1
- package/tools/definitions/record_prompt_def.js +0 -58
- package/tools/definitions/record_prompt_def.js.map +0 -1
- package/tools/definitions/record_result_def.js +0 -46
- package/tools/definitions/record_result_def.js.map +0 -1
- package/tools/live/get-native-live-uikit-integration.js +0 -177
- 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 -194
- 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/{chatuikit/iOS/workflow.md → callkit/core-sdk/.gitkeep} +0 -0
- /package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +0 -0
- /package/resource/doc/{tuicallkit/react/faq.md → callkit/faq/web-faq.md} +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
- /package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/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
- /package/resource/doc/roomkit/faq/common/{error_code.md → error-code.md} +0 -0
|
@@ -1,70 +1,18 @@
|
|
|
1
1
|
`AtomicXCore` provides two core modules: `CoHostStore` for **cross-room connections** and `BattleStore` for **PK battles**. This guide explains how to integrate these modules to enable connection and PK features in a voice chat room application.
|
|
2
2
|
|
|
3
|
-

|
|
4
|
-
|
|
5
3
|
## Core Concepts
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
<tr>
|
|
16
|
-
<td rowspan="1" colSpan="1" >**CoHostStore**</td>
|
|
17
|
-
|
|
18
|
-
<td rowspan="1" colSpan="1" >`abstract class`</td>
|
|
19
|
-
|
|
20
|
-
<td rowspan="1" colSpan="1" >Manages the lifecycle of host-to-host connections. Provides connection APIs such as `requestHostConnection` and `acceptHostConnection`.</td>
|
|
21
|
-
</tr>
|
|
22
|
-
|
|
23
|
-
<tr>
|
|
24
|
-
<td rowspan="1" colSpan="1" >**BattleStore**</td>
|
|
25
|
-
|
|
26
|
-
<td rowspan="1" colSpan="1" >`abstract class`</td>
|
|
27
|
-
|
|
28
|
-
<td rowspan="1" colSpan="1" >Handles PK battle signaling and state management across rooms, including PK status tracking.</td>
|
|
29
|
-
</tr>
|
|
30
|
-
|
|
31
|
-
<tr>
|
|
32
|
-
<td rowspan="1" colSpan="1" >**LiveListStore**</td>
|
|
33
|
-
|
|
34
|
-
<td rowspan="1" colSpan="1" >`abstract class`</td>
|
|
35
|
-
|
|
36
|
-
<td rowspan="1" colSpan="1" >Fetches the list of active live rooms (`fetchLiveList`). Use this to discover rooms available for connection.</td>
|
|
37
|
-
</tr>
|
|
38
|
-
|
|
39
|
-
<tr>
|
|
40
|
-
<td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
|
|
41
|
-
|
|
42
|
-
<td rowspan="1" colSpan="1" >`abstract class`</td>
|
|
43
|
-
|
|
44
|
-
<td rowspan="1" colSpan="1" >Manages seat states within a room, including cross-room seats during connection. Tracks user join/leave events and microphone status.</td>
|
|
45
|
-
</tr>
|
|
46
|
-
|
|
47
|
-
<tr>
|
|
48
|
-
<td rowspan="1" colSpan="1" >**CoHostLayoutTemplate**</td>
|
|
49
|
-
|
|
50
|
-
<td rowspan="1" colSpan="1" >`enum`</td>
|
|
51
|
-
|
|
52
|
-
<td rowspan="1" colSpan="1" >Defines seat layout templates for cross-room connections, e.g., `HOST_STATIC_VOICE_6V6`.</td>
|
|
53
|
-
</tr>
|
|
54
|
-
|
|
55
|
-
<tr>
|
|
56
|
-
<td rowspan="1" colSpan="1" >**BattleConfig**</td>
|
|
57
|
-
|
|
58
|
-
<td rowspan="1" colSpan="1" >`data`</td>
|
|
59
|
-
|
|
60
|
-
<td rowspan="1" colSpan="1" >Configures PK battle details such as duration (`duration`) and whether a secondary response is required (`needResponse`).</td>
|
|
61
|
-
</tr>
|
|
62
|
-
</table>
|
|
63
|
-
|
|
4
|
+
| **Core Concept** | **Type** | **Core Responsibilities & Description** |
|
|
5
|
+
| --- | --- | --- |
|
|
6
|
+
| **CoHostStore** | `abstract class` | Manages the lifecycle of host-to-host connections. Provides connection APIs such as `requestHostConnection` and `acceptHostConnection`. |
|
|
7
|
+
| **BattleStore** | `abstract class` | Handles PK battle signaling and state management across rooms, including PK status tracking. |
|
|
8
|
+
| **LiveListStore** | `abstract class` | Fetches the list of active live rooms (`fetchLiveList`). Use this to discover rooms available for connection. |
|
|
9
|
+
| **LiveSeatStore** | `abstract class` | Manages seat states within a room, including cross-room seats during connection. Tracks user join/leave events and microphone status. |
|
|
10
|
+
| **CoHostLayoutTemplate** | `enum` | Defines seat layout templates for cross-room connections, e.g., `HOST_STATIC_VOICE_6V6`. |
|
|
11
|
+
| **BattleConfig** | `data` | Configures PK battle details such as duration (`duration`) and whether a secondary response is required (`needResponse`). |
|
|
64
12
|
|
|
65
13
|
## Prerequisites
|
|
66
14
|
|
|
67
|
-
Integrate the
|
|
15
|
+
Integrate the Quick Start and ensure you have implemented both **Host Start Live** and **Audience Watch** features.
|
|
68
16
|
|
|
69
17
|
## Host Initiates a Connection
|
|
70
18
|
|
|
@@ -75,7 +23,7 @@ To initiate a connection or PK, the host must retrieve the current list of live
|
|
|
75
23
|
**Implementation:** Call `LiveListStore.shared().fetchLiveList`.
|
|
76
24
|
|
|
77
25
|
> **Note:**
|
|
78
|
-
>
|
|
26
|
+
>
|
|
79
27
|
> - If the target room is missing from the returned list, verify that isPublicVisible in TUILiveInfo is set to true when starting the stream.
|
|
80
28
|
> - This API supports pagination. Use the cursor from the onSuccess callback for subsequent fetches. An empty cursor indicates all rooms have been fetched.
|
|
81
29
|
> - For optimal performance, set pageCount to 20.
|
|
@@ -106,7 +54,7 @@ fun fetchLiveListForCoHost() {
|
|
|
106
54
|
When a host selects another host, use `CoHostStore.requestHostConnection` to send a connection invitation.
|
|
107
55
|
|
|
108
56
|
> **Note:**
|
|
109
|
-
>
|
|
57
|
+
>
|
|
110
58
|
> 1. AtomicXCore supports up to **9** interconnected rooms, each with up to **50** users.
|
|
111
59
|
> 2. This interface supports batch invitations, which you can use continuously; to check if an invitation to a single live room was successful, you need to listen for the `onSuccess` callback.
|
|
112
60
|
> 3. The API supports extension fields. These are delivered to the target host via `onCoHostRequestReceived` in `CoHostListener`. Use this to pass business logic such as "start PK immediately".
|
|
@@ -239,32 +187,10 @@ public void onExitButtonClicked() {
|
|
|
239
187
|
## PK Streamer Initiates a PK
|
|
240
188
|
|
|
241
189
|
BattleStreamers can start PK battles using two main flows, depending on the room state before PK begins:
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
<td rowspan="1" colSpan="1" >**Room State (Before PK)**</td>
|
|
247
|
-
|
|
248
|
-
<td rowspan="1" colSpan="1" >**Room State (After PK)**</td>
|
|
249
|
-
</tr>
|
|
250
|
-
|
|
251
|
-
<tr>
|
|
252
|
-
<td rowspan="1" colSpan="1" >Scenario 1: PK after connection</td>
|
|
253
|
-
|
|
254
|
-
<td rowspan="1" colSpan="1" >Both sides connected</td>
|
|
255
|
-
|
|
256
|
-
<td rowspan="1" colSpan="1" >Returns to connection state</td>
|
|
257
|
-
</tr>
|
|
258
|
-
|
|
259
|
-
<tr>
|
|
260
|
-
<td rowspan="1" colSpan="1" >Scenario 2: Connection with PK mode</td>
|
|
261
|
-
|
|
262
|
-
<td rowspan="1" colSpan="1" >Both sides not connected</td>
|
|
263
|
-
|
|
264
|
-
<td rowspan="1" colSpan="1" >Returns to connection state</td>
|
|
265
|
-
</tr>
|
|
266
|
-
</table>
|
|
267
|
-
|
|
190
|
+
| **PK Mode** | **Room State (Before PK)** | **Room State (After PK)** |
|
|
191
|
+
| --- | --- | --- |
|
|
192
|
+
| Scenario 1: PK after connection | Both sides connected | Returns to connection state |
|
|
193
|
+
| Scenario 2: Connection with PK mode | Both sides not connected | Returns to connection state |
|
|
268
194
|
|
|
269
195
|
### Scenario 1: PK After Connection
|
|
270
196
|
|
|
@@ -281,19 +207,12 @@ AtomicXCore enables hosts to start a timed PK battle once connected. Typical UI
|
|
|
281
207
|
|
|
282
208
|
6. After PK, state returns to connection mode.
|
|
283
209
|
|
|
284
|
-
|
|
285
|
-

|
|
286
|
-
|
|
287
|
-
|
|
288
|
-

|
|
289
|
-
|
|
290
|
-
|
|
291
210
|
#### Step 1: Initiate PK Invitation
|
|
292
211
|
|
|
293
212
|
To start a PK battle among connected hosts, use `BattleStore.requestBattle`. Configure PK duration, whether a response is required, and any extension info.
|
|
294
213
|
|
|
295
214
|
> **Note:**
|
|
296
|
-
>
|
|
215
|
+
>
|
|
297
216
|
> 1. Default PK duration is 5 minutes if not set in `BattleConfig`.
|
|
298
217
|
> 2. To start PK immediately, set `needResponse` to `false`.
|
|
299
218
|
> 3. If `needResponse` is `false`, set `timeout` to 0.
|
|
@@ -350,10 +269,6 @@ When `onBattleStarted` is triggered in `BattleListener`, render the PK progress
|
|
|
350
269
|
|
|
351
270
|
- All PK participants receive `onBattleStarted`.
|
|
352
271
|
|
|
353
|
-
|
|
354
|
-

|
|
355
|
-
|
|
356
|
-
|
|
357
272
|
#### Step 4: End PK State
|
|
358
273
|
|
|
359
274
|
PK ends either when the duration expires or when all hosts leave.
|
|
@@ -368,14 +283,12 @@ PK ends either when the duration expires or when all hosts leave.
|
|
|
368
283
|
```
|
|
369
284
|
|
|
370
285
|
After PK ends, use `onBattleEnded` to display results and determine winner/loser.
|
|
371
|
-
|
|
372
286
|
|
|
373
287
|
> **Note:**
|
|
374
|
-
>
|
|
288
|
+
>
|
|
375
289
|
> - After PK ends, the session returns to cross-room co-hosting.
|
|
376
290
|
> - To end co-hosting after PK, call `exitHostConnection`.
|
|
377
291
|
|
|
378
|
-
|
|
379
292
|
### Scenario 2: Co-hosting with PK Mode
|
|
380
293
|
|
|
381
294
|
**AtomicXCore** supports direct PK initiation during a live session, without prior co-hosting. After PK ends, the session returns to the live room state.
|
|
@@ -389,21 +302,11 @@ PK ends either when the duration expires or when all hosts leave.
|
|
|
389
302
|
|
|
390
303
|
5. After PK ends, the winner is determined by points.
|
|
391
304
|
|
|
392
|
-
|
|
393
|
-

|
|
394
|
-
|
|
395
|
-
|
|
396
|
-

|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
305
|
> **Note:**
|
|
402
|
-
>
|
|
306
|
+
>
|
|
403
307
|
|
|
404
308
|
> This workflow requires both CoHostStore and BattleStore, with `needResponse` in BattleConfig set to `false`.
|
|
405
|
-
>
|
|
406
|
-
|
|
309
|
+
>
|
|
407
310
|
|
|
408
311
|
#### Step 1: Send Co-hosting Request
|
|
409
312
|
|
|
@@ -415,12 +318,12 @@ This step is similar to Steps 1 and 2 in "Host Initiates a Connection". Use the
|
|
|
415
318
|
``` java
|
|
416
319
|
import io.trtc.tuikit.atomicxcore.api.live.CoHostLayoutTemplate
|
|
417
320
|
import io.trtc.tuikit.atomicxcore.api.CompletionHandler
|
|
418
|
-
|
|
321
|
+
|
|
419
322
|
val targetHostLiveID = "target_host_room_id"
|
|
420
323
|
val layoutTemplate = CoHostLayoutTemplate.HOST_STATIC_VOICE_6V6
|
|
421
324
|
val timeout = 10
|
|
422
325
|
val extraInfo = "withPK:true"
|
|
423
|
-
|
|
326
|
+
|
|
424
327
|
coHostStore.requestHostConnection(
|
|
425
328
|
targetHostLiveID,
|
|
426
329
|
layoutTemplate,
|
|
@@ -472,23 +375,23 @@ When the target streamer accepts, immediately call `BattleStore.requestBattle` w
|
|
|
472
375
|
override fun onCoHostRequestAccepted(invitee: SeatUserInfo) {
|
|
473
376
|
coHostStore.acceptHostConnection(invitee.liveID, null)
|
|
474
377
|
val directPKConfig = BattleConfig(
|
|
475
|
-
duration = 30,
|
|
476
|
-
needResponse = false,
|
|
378
|
+
duration = 30,
|
|
379
|
+
needResponse = false,
|
|
477
380
|
extensionInfo = ""
|
|
478
381
|
)
|
|
479
382
|
battleStore.requestBattle(
|
|
480
383
|
directPKConfig,
|
|
481
|
-
listOf(invitee.userID),
|
|
384
|
+
listOf(invitee.userID),
|
|
482
385
|
timeout = 0,
|
|
483
|
-
completion = null
|
|
386
|
+
completion = null
|
|
484
387
|
)
|
|
485
|
-
|
|
388
|
+
|
|
486
389
|
}
|
|
487
390
|
```
|
|
488
391
|
|
|
489
392
|
#### Step 4: Enter PK State
|
|
490
393
|
|
|
491
|
-
This step is the same as
|
|
394
|
+
This step is the same as Enter PK State.
|
|
492
395
|
|
|
493
396
|
## PK Score Update and Win/Loss Determination
|
|
494
397
|
|
|
@@ -497,125 +400,45 @@ This step is the same as [Enter PK State](https://write.woa.com/#166c6a33-f068-4
|
|
|
497
400
|
In typical** live host PK scenarios,** the value of gifts received by the host is linked to the PK score (for example, when a viewer sends a "Rocket" gift, the host's PK score increases by 500 points). You can implement real-time PK score updates using our REST API.
|
|
498
401
|
|
|
499
402
|
> **Note:**
|
|
500
|
-
>
|
|
403
|
+
>
|
|
501
404
|
|
|
502
405
|
> The PK score system in the LiveKit backend uses pure numeric calculation and accumulation. You must calculate the PK score according to your own business logic before calling the update API. See the following PK score calculation examples:
|
|
503
|
-
>
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
<td rowspan="1" colSpan="1" >Example</td>
|
|
511
|
-
</tr>
|
|
512
|
-
|
|
513
|
-
<tr>
|
|
514
|
-
<td rowspan="1" colSpan="1" >Basic Gift</td>
|
|
515
|
-
|
|
516
|
-
<td rowspan="1" colSpan="1" >Gift value × 5</td>
|
|
517
|
-
|
|
518
|
-
<td rowspan="1" colSpan="1" >10 RMB gift → 50 points</td>
|
|
519
|
-
</tr>
|
|
520
|
-
|
|
521
|
-
<tr>
|
|
522
|
-
<td rowspan="1" colSpan="1" >Intermediate Gift</td>
|
|
523
|
-
|
|
524
|
-
<td rowspan="1" colSpan="1" >Gift value × 8</td>
|
|
525
|
-
|
|
526
|
-
<td rowspan="1" colSpan="1" >50 RMB gift → 400 points</td>
|
|
527
|
-
</tr>
|
|
528
|
-
|
|
529
|
-
<tr>
|
|
530
|
-
<td rowspan="1" colSpan="1" >Advanced Gift</td>
|
|
531
|
-
|
|
532
|
-
<td rowspan="1" colSpan="1" >Gift value × 12</td>
|
|
533
|
-
|
|
534
|
-
<td rowspan="1" colSpan="1" >100 RMB gift → 1200 points</td>
|
|
535
|
-
</tr>
|
|
536
|
-
|
|
537
|
-
<tr>
|
|
538
|
-
<td rowspan="1" colSpan="1" >Special Effect Gift</td>
|
|
539
|
-
|
|
540
|
-
<td rowspan="1" colSpan="1" >Fixed high score</td>
|
|
541
|
-
|
|
542
|
-
<td rowspan="1" colSpan="1" >520 RMB gift → 1314 points</td>
|
|
543
|
-
</tr>
|
|
544
|
-
</table>
|
|
545
|
-
|
|
546
|
-
|
|
406
|
+
>
|
|
407
|
+
| Gift Type | Score Calculation Rule | Example |
|
|
408
|
+
| --- | --- | --- |
|
|
409
|
+
| Basic Gift | Gift value × 5 | 10 RMB gift → 50 points |
|
|
410
|
+
| Intermediate Gift | Gift value × 8 | 50 RMB gift → 400 points |
|
|
411
|
+
| Advanced Gift | Gift value × 12 | 100 RMB gift → 1200 points |
|
|
412
|
+
| Special Effect Gift | Fixed high score | 520 RMB gift → 1314 points |
|
|
547
413
|
|
|
548
414
|
#### REST API Call Flow
|
|
549
415
|
|
|
550
|
-

|
|
551
|
-
|
|
552
|
-
|
|
553
416
|
#### Key Process Description
|
|
554
417
|
1. **Obtain PK Status:**
|
|
555
418
|
|
|
556
|
-
- **Callback Configuration**: Configure
|
|
419
|
+
- **Callback Configuration**: Configure PK Status Callback to have the LiveKit backend actively notify your system when PK starts or ends.
|
|
557
420
|
|
|
558
|
-
- **Active Query**: Your backend can call the
|
|
421
|
+
- **Active Query**: Your backend can call the PK Status Query API at any time to check the current PK status.
|
|
559
422
|
|
|
560
423
|
2. **PK Score Calculation**: Your backend calculates the PK score increment based on your business rules.
|
|
561
424
|
|
|
562
|
-
3. **PK Score Update**: Your backend calls the
|
|
425
|
+
3. **PK Score Update**: Your backend calls the Update PK Score API to update the PK score in the LiveKit backend.
|
|
563
426
|
|
|
564
427
|
4. **LiveKit Backend Syncs to Client**: The backend automatically synchronizes the updated PK score to all clients.
|
|
565
428
|
|
|
566
|
-
|
|
567
429
|
#### Involved REST API Endpoints
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
<td rowspan="1" colSpan="1" >**Request Example**</td>
|
|
575
|
-
</tr>
|
|
576
|
-
|
|
577
|
-
<tr>
|
|
578
|
-
<td rowspan="1" colSpan="1" >Active API - Query PK Status</td>
|
|
579
|
-
|
|
580
|
-
<td rowspan="1" colSpan="1" >Check whether the current room is in PK</td>
|
|
581
|
-
|
|
582
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170220847572692992)</td>
|
|
583
|
-
</tr>
|
|
584
|
-
|
|
585
|
-
<tr>
|
|
586
|
-
<td rowspan="1" colSpan="1" >Active API - Update PK Score</td>
|
|
587
|
-
|
|
588
|
-
<td rowspan="1" colSpan="1" >Update the calculated PK score</td>
|
|
589
|
-
|
|
590
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170220034100383744)</td>
|
|
591
|
-
</tr>
|
|
592
|
-
|
|
593
|
-
<tr>
|
|
594
|
-
<td rowspan="1" colSpan="1" >Callback Configuration - PK Start Callback</td>
|
|
595
|
-
|
|
596
|
-
<td rowspan="1" colSpan="1" >Receive real-time notification when PK starts</td>
|
|
597
|
-
|
|
598
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170203265552953344)</td>
|
|
599
|
-
</tr>
|
|
600
|
-
|
|
601
|
-
<tr>
|
|
602
|
-
<td rowspan="1" colSpan="1" >Callback Configuration - PK End Callback</td>
|
|
603
|
-
|
|
604
|
-
<td rowspan="1" colSpan="1" >Receive real-time notification when PK ends</td>
|
|
605
|
-
|
|
606
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170221608179601408)</td>
|
|
607
|
-
</tr>
|
|
608
|
-
</table>
|
|
609
|
-
|
|
430
|
+
| **API** | **Function Description** | **Request Example** |
|
|
431
|
+
| --- | --- | --- |
|
|
432
|
+
| Active API - Query PK Status | Check whether the current room is in PK | Example |
|
|
433
|
+
| Active API - Update PK Score | Update the calculated PK score | Example |
|
|
434
|
+
| Callback Configuration - PK Start Callback | Receive real-time notification when PK starts | Example |
|
|
435
|
+
| Callback Configuration - PK End Callback | Receive real-time notification when PK ends | Example |
|
|
610
436
|
|
|
611
437
|
### Winner Determination
|
|
612
438
|
|
|
613
439
|
In PK scenarios, scores are typically based on gifts received, driving competition and engagement. The PK module in RoomEngine supports score updates and broadcasts. Link your gift logic to this system.
|
|
614
440
|
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
When your billing system confirms a gift transaction, call the [Modify PK Score](https://write.woa.com/document/170220034100383744) to update the host's PK score. All users in PK rooms see the updated `battleScore` in `BattleState`. Update your PK progress bar whenever `battleScore` changes.
|
|
441
|
+
When your billing system confirms a gift transaction, call the Modify PK Score to update the host's PK score. All users in PK rooms see the updated `battleScore` in `BattleState`. Update your PK progress bar whenever `battleScore` changes.
|
|
619
442
|
``` java
|
|
620
443
|
private fun observeBattleScore() {
|
|
621
444
|
val job = lifecycleScope.launch {
|
|
@@ -630,48 +453,12 @@ private fun observeBattleScore() {
|
|
|
630
453
|
## API Documentation
|
|
631
454
|
|
|
632
455
|
For details on all public interfaces, properties, and methods for CoHostStore, BattleStore, LiveListStore, LiveSeatStore, and related classes, see the [AtomicXCore API documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore).
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
640
|
-
</tr>
|
|
641
|
-
|
|
642
|
-
<tr>
|
|
643
|
-
<td rowspan="1" colSpan="1" >CoHostStore</td>
|
|
644
|
-
|
|
645
|
-
<td rowspan="1" colSpan="1" >Host Connection Lifecycle Management: Responsible for managing and coordinating the lifecycle of anchor connections, including initiating connection invitations, handling acceptance/rejection, switching connection status, managing video streams during connections, and disconnecting connections.</td>
|
|
646
|
-
|
|
647
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html)</td>
|
|
648
|
-
</tr>
|
|
649
|
-
|
|
650
|
-
<tr>
|
|
651
|
-
<td rowspan="1" colSpan="1" >BattleStore</td>
|
|
652
|
-
|
|
653
|
-
<td rowspan="1" colSpan="1" >Streamer PK Battle Lifecycle Management: Responsible for managing the entire lifecycle of timed PK battles between streamers, including initiating PK invitations, starting the battle, updating PK scores in real time, settling the winner at the end of the PK, and penalty time.</td>
|
|
654
|
-
|
|
655
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html)</td>
|
|
656
|
-
</tr>
|
|
657
|
-
|
|
658
|
-
<tr>
|
|
659
|
-
<td rowspan="1" colSpan="1" >LiveListStore</td>
|
|
660
|
-
|
|
661
|
-
<td rowspan="1" colSpan="1" >Manages live room lifecycle: query room list, modify live info, etc.</td>
|
|
662
|
-
|
|
663
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-list-store/index.html)</td>
|
|
664
|
-
</tr>
|
|
665
|
-
|
|
666
|
-
<tr>
|
|
667
|
-
<td rowspan="1" colSpan="1" >LiveSeatStore</td>
|
|
668
|
-
|
|
669
|
-
<td rowspan="1" colSpan="1" >Manages seat states within a room (including cross-room seats), tracks user seat changes, microphone status, and more.</td>
|
|
670
|
-
|
|
671
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html)</td>
|
|
672
|
-
</tr>
|
|
673
|
-
</table>
|
|
674
|
-
|
|
456
|
+
| **Store/Component** | **Function Description** | **API Documentation** |
|
|
457
|
+
| --- | --- | --- |
|
|
458
|
+
| CoHostStore | Host Connection Lifecycle Management: Responsible for managing and coordinating the lifecycle of anchor connections, including initiating connection invitations, handling acceptance/rejection, switching connection status, managing video streams during connections, and disconnecting connections. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-co-host-store/index.html) |
|
|
459
|
+
| BattleStore | Streamer PK Battle Lifecycle Management: Responsible for managing the entire lifecycle of timed PK battles between streamers, including initiating PK invitations, starting the battle, updating PK scores in real time, settling the winner at the end of the PK, and penalty time. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-battle-store/index.html) |
|
|
460
|
+
| LiveListStore | Manages live room lifecycle: query room list, modify live info, etc. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-list-store/index.html) |
|
|
461
|
+
| LiveSeatStore | Manages seat states within a room (including cross-room seats), tracks user seat changes, microphone status, and more. | [API Documentation](https://tencent-rtc.github.io/TUIKit_Android/-atomic-x%20-core%20-a-p-i/io.trtc.tuikit.atomicxcore.api.live/-live-seat-store/index.html) |
|
|
675
462
|
|
|
676
463
|
## FAQs
|
|
677
464
|
|
|
@@ -688,7 +475,6 @@ After receiving the `onBattleEnded` callback, determine the winner using `battle
|
|
|
688
475
|
|
|
689
476
|
- Check network connectivity; invitation signaling has a default 30-second timeout.
|
|
690
477
|
|
|
691
|
-
|
|
692
478
|
#### What happens if a host disconnects or the app crashes during connection or PK?
|
|
693
479
|
|
|
694
480
|
CoHostStore and BattleStore have built-in heartbeat and timeout detection. If a participant exits unexpectedly, the other party is notified via events such as `onCoHostUserLeft` or `onUserExitBattle`. Use these events to update the UI (e.g., "The other party has disconnected") and end the interaction.
|