@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,72 +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
|
-

|
|
6
|
-
|
|
7
3
|
## Core Concepts
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
<tr>
|
|
18
|
-
<td rowspan="1" colSpan="1" >**CoHostStore**</td>
|
|
19
|
-
|
|
20
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
21
|
-
|
|
22
|
-
<td rowspan="1" colSpan="1" >Manages the lifecycle of co-hosting between streamers, providing APIs for co-hosting (requestHostConnection, acceptHostConnection).</td>
|
|
23
|
-
</tr>
|
|
24
|
-
|
|
25
|
-
<tr>
|
|
26
|
-
<td rowspan="1" colSpan="1" >**BattleStore**</td>
|
|
27
|
-
|
|
28
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
29
|
-
|
|
30
|
-
<td rowspan="1" colSpan="1" >Handles signaling and state management for cross-room PK battles, including PK status.</td>
|
|
31
|
-
</tr>
|
|
32
|
-
|
|
33
|
-
<tr>
|
|
34
|
-
<td rowspan="1" colSpan="1" >**LiveListStore**</td>
|
|
35
|
-
|
|
36
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
37
|
-
|
|
38
|
-
<td rowspan="1" colSpan="1" >Fetches the list of live rooms (`fetchLiveList`), enabling discovery of other rooms available for co-hosting.</td>
|
|
39
|
-
</tr>
|
|
40
|
-
|
|
41
|
-
<tr>
|
|
42
|
-
<td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
|
|
43
|
-
|
|
44
|
-
<td rowspan="1" colSpan="1" >`class`</td>
|
|
45
|
-
|
|
46
|
-
<td rowspan="1" colSpan="1" >Manages the status of all seats in a room (including cross-room seats during co-hosting), tracks users joining/leaving seats and microphone status.</td>
|
|
47
|
-
</tr>
|
|
48
|
-
|
|
49
|
-
<tr>
|
|
50
|
-
<td rowspan="1" colSpan="1" >**CoHostLayoutTemplate**</td>
|
|
51
|
-
|
|
52
|
-
<td rowspan="1" colSpan="1" >`enum`</td>
|
|
53
|
-
|
|
54
|
-
<td rowspan="1" colSpan="1" >Defines seat layout templates for co-hosting, such as `.hostStaticVoice6v6`.</td>
|
|
55
|
-
</tr>
|
|
56
|
-
|
|
57
|
-
<tr>
|
|
58
|
-
<td rowspan="1" colSpan="1" >**BattleConfig**</td>
|
|
59
|
-
|
|
60
|
-
<td rowspan="1" colSpan="1" >`struct`</td>
|
|
61
|
-
|
|
62
|
-
<td rowspan="1" colSpan="1" >Configures PK details, including PK duration (`duration`) and whether a response (`needResponse`) is required.</td>
|
|
63
|
-
</tr>
|
|
64
|
-
</table>
|
|
65
|
-
|
|
4
|
+
| **Key Concept** | **Type** | **Core Responsibilities & Description** |
|
|
5
|
+
| --- | --- | --- |
|
|
6
|
+
| **CoHostStore** | `class` | Manages the lifecycle of co-hosting between streamers, providing APIs for co-hosting (requestHostConnection, acceptHostConnection). |
|
|
7
|
+
| **BattleStore** | `class` | Handles signaling and state management for cross-room PK battles, including PK status. |
|
|
8
|
+
| **LiveListStore** | `class` | Fetches the list of live rooms (`fetchLiveList`), enabling discovery of other rooms available for co-hosting. |
|
|
9
|
+
| **LiveSeatStore** | `class` | Manages the status of all seats in a room (including cross-room seats during co-hosting), tracks users joining/leaving seats and microphone status. |
|
|
10
|
+
| **CoHostLayoutTemplate** | `enum` | Defines seat layout templates for co-hosting, such as `.hostStaticVoice6v6`. |
|
|
11
|
+
| **BattleConfig** | `struct` | Configures PK details, including PK duration (`duration`) and whether a response (`needResponse`) is required. |
|
|
66
12
|
|
|
67
13
|
## Prerequisites
|
|
68
14
|
|
|
69
|
-
Integrate the
|
|
15
|
+
Integrate the Quick Start and ensure you have implemented both **streamer start live** and **audience watch** features.
|
|
70
16
|
|
|
71
17
|
## Streamer Initiates a Co-hosting Session
|
|
72
18
|
|
|
@@ -77,7 +23,7 @@ To initiate co-hosting or PK, fetch the current list of live rooms and select a
|
|
|
77
23
|
**Implementation:** Call `LiveListStore.shared.fetchLiveList`.
|
|
78
24
|
|
|
79
25
|
> **Note:**
|
|
80
|
-
>
|
|
26
|
+
>
|
|
81
27
|
> - If the desired live room is missing from the list, verify that the isPublicVisible field in TUILiveInfo was set to true when starting the stream.
|
|
82
28
|
> - This API supports pagination. Use the cursor from the `Result` is `.success` callback for subsequent requests. If the returned cursor is empty, all rooms have been fetched.
|
|
83
29
|
> - For optimal performance, set count to 20.
|
|
@@ -109,7 +55,7 @@ func fetchLiveListForCoHost() {
|
|
|
109
55
|
After selecting a target streamer, use `CoHostStore.requestHostConnection` to send a co-hosting invitation.
|
|
110
56
|
|
|
111
57
|
> **Note:**
|
|
112
|
-
>
|
|
58
|
+
>
|
|
113
59
|
> - AtomicXCore supports up to 9 rooms for cross-room co-hosting, with 50 users per room.
|
|
114
60
|
> - The API supports batch invitations. To check if an invitation to a single room was successful, you need to check if the` Result` is `.success` in the completion callback.
|
|
115
61
|
> - The API accepts extension fields. After the invitation is sent, this field is delivered to the target streamer via the `onCoHostRequestReceived` callback. Use it to pass custom business data, such as "start PK immediately".
|
|
@@ -277,35 +223,11 @@ func onExitButtonClicked() {
|
|
|
277
223
|
}
|
|
278
224
|
```
|
|
279
225
|
|
|
280
|
-
|
|
281
|
-
|
|
282
226
|
PK Streamer Initiates a PK BattleStreamers can start PK battles using two main flows, depending on the room state before PK begins:
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
<td rowspan="1" colSpan="1" >**Room State (Before PK)**</td>
|
|
288
|
-
|
|
289
|
-
<td rowspan="1" colSpan="1" >**Room State (After PK)**</td>
|
|
290
|
-
</tr>
|
|
291
|
-
|
|
292
|
-
<tr>
|
|
293
|
-
<td rowspan="1" colSpan="1" >**Scenario 1: PK after co-hosting**</td>
|
|
294
|
-
|
|
295
|
-
<td rowspan="1" colSpan="1" >Both sides **already co-hosting**</td>
|
|
296
|
-
|
|
297
|
-
<td rowspan="1" colSpan="1" >Return to co-hosting state</td>
|
|
298
|
-
</tr>
|
|
299
|
-
|
|
300
|
-
<tr>
|
|
301
|
-
<td rowspan="1" colSpan="1" >**Scenario 2: Co-hosting with PK mode**</td>
|
|
302
|
-
|
|
303
|
-
<td rowspan="1" colSpan="1" >Both sides **not co-hosting**</td>
|
|
304
|
-
|
|
305
|
-
<td rowspan="1" colSpan="1" >Return to co-hosting state</td>
|
|
306
|
-
</tr>
|
|
307
|
-
</table>
|
|
308
|
-
|
|
227
|
+
| **PK Mode** | **Room State (Before PK)** | **Room State (After PK)** |
|
|
228
|
+
| --- | --- | --- |
|
|
229
|
+
| **Scenario 1: PK after co-hosting** | Both sides **already co-hosting** | Return to co-hosting state |
|
|
230
|
+
| **Scenario 2: Co-hosting with PK mode** | Both sides **not co-hosting** | Return to co-hosting state |
|
|
309
231
|
|
|
310
232
|
### Scenario 1: PK After Co-hosting
|
|
311
233
|
|
|
@@ -322,19 +244,12 @@ PK Streamer Initiates a PK BattleStreamers can start PK battles using two main f
|
|
|
322
244
|
|
|
323
245
|
6. After PK, the session returns to co-hosting.
|
|
324
246
|
|
|
325
|
-
|
|
326
|
-

|
|
327
|
-
|
|
328
|
-
|
|
329
|
-

|
|
330
|
-
|
|
331
|
-
|
|
332
247
|
#### Step 1: Initiate PK Invitation
|
|
333
248
|
|
|
334
249
|
While co-hosting, call `BattleStore.requestBattle` to send a PK invitation. Configure PK duration, whether acceptance is required, and any extension info.
|
|
335
250
|
|
|
336
251
|
> **Note:**
|
|
337
|
-
>
|
|
252
|
+
>
|
|
338
253
|
> - If duration is not set, PK defaults to 5 minutes.
|
|
339
254
|
> - To skip target acceptance, set needResponse to false in BattleConfig. PK starts immediately.
|
|
340
255
|
> - If needResponse is false, set timeout to 0.
|
|
@@ -391,10 +306,6 @@ When you receive the `onBattleStarted` event, render the PK progress bar in the
|
|
|
391
306
|
|
|
392
307
|
- When PK begins, all participants receive `onBattleStarted`.
|
|
393
308
|
|
|
394
|
-
|
|
395
|
-

|
|
396
|
-
|
|
397
|
-
|
|
398
309
|
#### Step 4: End PK State
|
|
399
310
|
|
|
400
311
|
PK can end in two ways:
|
|
@@ -419,14 +330,12 @@ PK can end in two ways:
|
|
|
419
330
|
```
|
|
420
331
|
|
|
421
332
|
After PK ends (`onBattleEnded`), display results and identify the winner/loser (see Winner Determination section).
|
|
422
|
-
|
|
423
333
|
|
|
424
334
|
> **Note:**
|
|
425
|
-
>
|
|
335
|
+
>
|
|
426
336
|
> - After PK ends, the session returns to cross-room co-hosting.
|
|
427
337
|
> - To end co-hosting after PK, call `exitHostConnection`.
|
|
428
338
|
|
|
429
|
-
|
|
430
339
|
### Scenario 2: Co-hosting with PK Mode
|
|
431
340
|
|
|
432
341
|
**AtomicXCore** supports direct PK initiation during a live session, without prior co-hosting. After PK ends, the session returns to the live room state.
|
|
@@ -440,19 +349,11 @@ PK can end in two ways:
|
|
|
440
349
|
|
|
441
350
|
5. After PK ends, the winner is determined by points.
|
|
442
351
|
|
|
443
|
-
|
|
444
|
-

|
|
445
|
-
|
|
446
|
-
|
|
447
|
-

|
|
448
|
-
|
|
449
|
-
|
|
450
352
|
> **Note:**
|
|
451
|
-
>
|
|
353
|
+
>
|
|
452
354
|
|
|
453
355
|
> This flow requires both CoHostStore and BattleStore, with `BattleConfig.needResponse` set to `false`.
|
|
454
|
-
>
|
|
455
|
-
|
|
356
|
+
>
|
|
456
357
|
|
|
457
358
|
#### Step 1: Send Co-hosting Request
|
|
458
359
|
|
|
@@ -465,12 +366,12 @@ For example:
|
|
|
465
366
|
|
|
466
367
|
``` swift
|
|
467
368
|
import AtomicXCore
|
|
468
|
-
|
|
369
|
+
|
|
469
370
|
let targetHostLiveID = "target_host_room_id"
|
|
470
371
|
let layoutTemplate = .hostStaticVoice6v6
|
|
471
372
|
let timeout: TimeInterval = 10
|
|
472
373
|
let extraInfo: String = "" // e.g., {"withPK:true"}
|
|
473
|
-
|
|
374
|
+
|
|
474
375
|
coHostStore.requestHostConnection(
|
|
475
376
|
targetHost: targetHostLiveID,
|
|
476
377
|
layoutTemplate: layoutTemplate,
|
|
@@ -554,7 +455,7 @@ coHostStore.coHostEventPublisher
|
|
|
554
455
|
|
|
555
456
|
#### Step 4: Enter PK State
|
|
556
457
|
|
|
557
|
-
This step is same as
|
|
458
|
+
This step is same as Enter PK State.
|
|
558
459
|
|
|
559
460
|
## PK Score Update and Winner Determination
|
|
560
461
|
|
|
@@ -563,125 +464,45 @@ This step is same as [Enter PK State](https://write.woa.com/#41199d6f-8352-47bb-
|
|
|
563
464
|
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`.
|
|
564
465
|
|
|
565
466
|
> **Note:**
|
|
566
|
-
>
|
|
467
|
+
>
|
|
567
468
|
|
|
568
469
|
> 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:
|
|
569
|
-
>
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
<td rowspan="1" colSpan="1" >Example</td>
|
|
577
|
-
</tr>
|
|
578
|
-
|
|
579
|
-
<tr>
|
|
580
|
-
<td rowspan="1" colSpan="1" >Basic Gift</td>
|
|
581
|
-
|
|
582
|
-
<td rowspan="1" colSpan="1" >Gift value × 5</td>
|
|
583
|
-
|
|
584
|
-
<td rowspan="1" colSpan="1" >10 RMB gift → 50 points</td>
|
|
585
|
-
</tr>
|
|
586
|
-
|
|
587
|
-
<tr>
|
|
588
|
-
<td rowspan="1" colSpan="1" >Intermediate Gift</td>
|
|
589
|
-
|
|
590
|
-
<td rowspan="1" colSpan="1" >Gift value × 8</td>
|
|
591
|
-
|
|
592
|
-
<td rowspan="1" colSpan="1" >50 RMB gift → 400 points</td>
|
|
593
|
-
</tr>
|
|
594
|
-
|
|
595
|
-
<tr>
|
|
596
|
-
<td rowspan="1" colSpan="1" >Advanced Gift</td>
|
|
597
|
-
|
|
598
|
-
<td rowspan="1" colSpan="1" >Gift value × 12</td>
|
|
599
|
-
|
|
600
|
-
<td rowspan="1" colSpan="1" >100 RMB gift → 1200 points</td>
|
|
601
|
-
</tr>
|
|
602
|
-
|
|
603
|
-
<tr>
|
|
604
|
-
<td rowspan="1" colSpan="1" >Special Effect Gift</td>
|
|
605
|
-
|
|
606
|
-
<td rowspan="1" colSpan="1" >Fixed high score</td>
|
|
607
|
-
|
|
608
|
-
<td rowspan="1" colSpan="1" >520 RMB gift → 1314 points</td>
|
|
609
|
-
</tr>
|
|
610
|
-
</table>
|
|
611
|
-
|
|
612
|
-
|
|
470
|
+
>
|
|
471
|
+
| Gift Type | Score Calculation Rule | Example |
|
|
472
|
+
| --- | --- | --- |
|
|
473
|
+
| Basic Gift | Gift value × 5 | 10 RMB gift → 50 points |
|
|
474
|
+
| Intermediate Gift | Gift value × 8 | 50 RMB gift → 400 points |
|
|
475
|
+
| Advanced Gift | Gift value × 12 | 100 RMB gift → 1200 points |
|
|
476
|
+
| Special Effect Gift | Fixed high score | 520 RMB gift → 1314 points |
|
|
613
477
|
|
|
614
478
|
#### REST API Call Flow
|
|
615
479
|
|
|
616
|
-

|
|
617
|
-
|
|
618
|
-
|
|
619
480
|
#### Key Process Description
|
|
620
481
|
1. **Obtain PK Status:**
|
|
621
482
|
|
|
622
|
-
- **Callback Configuration**: Configure
|
|
483
|
+
- **Callback Configuration**: Configure PK Status Callback to have the `LiveKit` backend actively notify your system when PK starts or ends.
|
|
623
484
|
|
|
624
|
-
- **Active Query**: Your backend can call the
|
|
485
|
+
- **Active Query**: Your backend can call the PK Status Query API at any time to check the current PK status.
|
|
625
486
|
|
|
626
487
|
2. **PK Score Calculation**: Your backend calculates the PK score increment based on your business rules.
|
|
627
488
|
|
|
628
|
-
3. **PK Score Update**: Your backend calls the
|
|
489
|
+
3. **PK Score Update**: Your backend calls the Update PK Score API to update the PK score in the `LiveKit` backend.
|
|
629
490
|
|
|
630
491
|
4. **LiveKit Backend Syncs to Client**: The backend automatically synchronizes the updated PK score to all clients.
|
|
631
492
|
|
|
632
|
-
|
|
633
493
|
#### Involved REST API Endpoints
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
<td rowspan="1" colSpan="1" >**Request Example**</td>
|
|
641
|
-
</tr>
|
|
642
|
-
|
|
643
|
-
<tr>
|
|
644
|
-
<td rowspan="1" colSpan="1" >Active API - Query PK Status</td>
|
|
645
|
-
|
|
646
|
-
<td rowspan="1" colSpan="1" >Check whether the current room is in PK</td>
|
|
647
|
-
|
|
648
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170220847572692992)</td>
|
|
649
|
-
</tr>
|
|
650
|
-
|
|
651
|
-
<tr>
|
|
652
|
-
<td rowspan="1" colSpan="1" >Active API - Update PK Score</td>
|
|
653
|
-
|
|
654
|
-
<td rowspan="1" colSpan="1" >Update the calculated PK score</td>
|
|
655
|
-
|
|
656
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170220034100383744)</td>
|
|
657
|
-
</tr>
|
|
658
|
-
|
|
659
|
-
<tr>
|
|
660
|
-
<td rowspan="1" colSpan="1" >Callback Configuration - PK Start Callback</td>
|
|
661
|
-
|
|
662
|
-
<td rowspan="1" colSpan="1" >Receive real-time notification when PK starts</td>
|
|
663
|
-
|
|
664
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170203265552953344)</td>
|
|
665
|
-
</tr>
|
|
666
|
-
|
|
667
|
-
<tr>
|
|
668
|
-
<td rowspan="1" colSpan="1" >Callback Configuration - PK End Callback</td>
|
|
669
|
-
|
|
670
|
-
<td rowspan="1" colSpan="1" >Receive real-time notification when PK ends</td>
|
|
671
|
-
|
|
672
|
-
<td rowspan="1" colSpan="1" >[Example](https://write.woa.com/document/170221608179601408)</td>
|
|
673
|
-
</tr>
|
|
674
|
-
</table>
|
|
675
|
-
|
|
494
|
+
| **API** | **Function Description** | **Request Example** |
|
|
495
|
+
| --- | --- | --- |
|
|
496
|
+
| Active API - Query PK Status | Check whether the current room is in PK | Example |
|
|
497
|
+
| Active API - Update PK Score | Update the calculated PK score | Example |
|
|
498
|
+
| Callback Configuration - PK Start Callback | Receive real-time notification when PK starts | Example |
|
|
499
|
+
| Callback Configuration - PK End Callback | Receive real-time notification when PK ends | Example |
|
|
676
500
|
|
|
677
501
|
### Winner Determination
|
|
678
502
|
|
|
679
503
|
In PK scenarios, streamer scores are tied to gifts received. The PK module in RoomEngine supports score updates and broadcasting. Link gift events to PK scoring for real-time progress bar updates.
|
|
680
504
|
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
When your billing system detects a successful gift transaction, call the [Modify PK Score REST API](https://write.woa.com/document/170220034100383744) to update the streamer's PK score. All users in the PK rooms will see the updated `battleScore` in `BattleState`. Use this to update the PK progress bar.
|
|
505
|
+
When your billing system detects a successful gift transaction, call the Modify PK Score REST API to update the streamer's PK score. All users in the PK rooms will see the updated `battleScore` in `BattleState`. Use this to update the PK progress bar.
|
|
685
506
|
``` swift
|
|
686
507
|
battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleScore))
|
|
687
508
|
.receive(on: RunLoop.main)
|
|
@@ -695,48 +516,12 @@ battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleS
|
|
|
695
516
|
## API Documentation
|
|
696
517
|
|
|
697
518
|
For complete API details, refer to the [AtomicXCore API documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore):
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
<td rowspan="1" colSpan="1" >**API Documentation**</td>
|
|
705
|
-
</tr>
|
|
706
|
-
|
|
707
|
-
<tr>
|
|
708
|
-
<td rowspan="1" colSpan="1" >**CoHostStore**</td>
|
|
709
|
-
|
|
710
|
-
<td rowspan="1" colSpan="1" >Core component for live stream display and interaction: handles video rendering, widget management, streamer live, audience mic-link, streamer co-hosting, and more.</td>
|
|
711
|
-
|
|
712
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cohoststore)</td>
|
|
713
|
-
</tr>
|
|
714
|
-
|
|
715
|
-
<tr>
|
|
716
|
-
<td rowspan="1" colSpan="1" >**BattleStore**</td>
|
|
717
|
-
|
|
718
|
-
<td rowspan="1" colSpan="1" >Manages the full lifecycle of live rooms: create, join, leave, destroy, query room list, modify live info, listen for live status changes.</td>
|
|
719
|
-
|
|
720
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/battlestore)</td>
|
|
721
|
-
</tr>
|
|
722
|
-
|
|
723
|
-
<tr>
|
|
724
|
-
<td rowspan="1" colSpan="1" >**LiveListStore**</td>
|
|
725
|
-
|
|
726
|
-
<td rowspan="1" colSpan="1" >Manages live room lifecycle: query room list, modify live info, etc.</td>
|
|
727
|
-
|
|
728
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore)</td>
|
|
729
|
-
</tr>
|
|
730
|
-
|
|
731
|
-
<tr>
|
|
732
|
-
<td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
|
|
733
|
-
|
|
734
|
-
<td rowspan="1" colSpan="1" >Manages seat status: tracks all seats in the room (including cross-room seats during co-hosting), check user join/leave, microphone, seat status, etc.</td>
|
|
735
|
-
|
|
736
|
-
<td rowspan="1" colSpan="1" >[API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore)</td>
|
|
737
|
-
</tr>
|
|
738
|
-
</table>
|
|
739
|
-
|
|
519
|
+
| **Store/Component** | **Function Description** | **API Documentation** |
|
|
520
|
+
| --- | --- | --- |
|
|
521
|
+
| **CoHostStore** | Core component for live stream display and interaction: handles video rendering, widget management, streamer live, audience mic-link, streamer co-hosting, and more. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cohoststore) |
|
|
522
|
+
| **BattleStore** | Manages the full lifecycle of live rooms: create, join, leave, destroy, query room list, modify live info, listen for live status changes. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/battlestore) |
|
|
523
|
+
| **LiveListStore** | Manages live room lifecycle: query room list, modify live info, etc. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) |
|
|
524
|
+
| **LiveSeatStore** | Manages seat status: tracks all seats in the room (including cross-room seats during co-hosting), check user join/leave, microphone, seat status, etc. | [API Documentation](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore) |
|
|
740
525
|
|
|
741
526
|
## FAQs
|
|
742
527
|
|
|
@@ -753,7 +538,6 @@ After receiving the `onBattleEnded` callback from `battleEventPublisher`, use `b
|
|
|
753
538
|
|
|
754
539
|
- Check network connectivity; invitation signaling times out after 30 seconds.
|
|
755
540
|
|
|
756
|
-
|
|
757
541
|
#### What happens if a streamer disconnects or the app crashes during co-hosting or PK?
|
|
758
542
|
|
|
759
543
|
**CoHostStore** and **BattleStore** include heartbeat and timeout detection. If a participant exits by accident, the other party receives events such as **onCoHostUserLeft** or **onUserExitBattle**. Use these events to update the UI (e.g., "The other party has disconnected") and end the interaction.
|
|
@@ -766,5 +550,3 @@ After receiving the `onBattleEnded` callback from `battleEventPublisher`, use `b
|
|
|
766
550
|
- **Real-time multi-end sync**: Standardized formats (e.g., JSON) enable rapid integration with gift, PK, and display systems, keeping scores consistent and real-time across streamer, audience, and backend.
|
|
767
551
|
|
|
768
552
|
- **Flexible rule adaptation**: Backend configuration changes (e.g., gift-to-score mapping, bonus points) can be made without frontend updates, reducing iteration costs.
|
|
769
|
-
|
|
770
|
-
|