@tencentcloud/sdk-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.
Files changed (510) hide show
  1. package/index.js +1 -1
  2. package/index.js.map +1 -1
  3. package/package.json +2 -2
  4. package/resource/doc/{tuicallkit/android/faq.md → callkit/faq/android-faq.md} +75 -308
  5. package/resource/doc/{tuicallkit/faq/common/error_code.md → callkit/faq/common/error-code.md} +2 -2
  6. package/resource/doc/{tuicallkit/flutter/faq.md → callkit/faq/flutter-faq.md} +83 -315
  7. package/resource/doc/{tuicallkit/iOS/faq.md → callkit/faq/ios-faq.md} +76 -313
  8. package/resource/doc/{tuicallkit/vue/faq.md → callkit/faq/web-faq.md} +78 -311
  9. package/resource/doc/callkit/preset/android/api.md +330 -0
  10. package/resource/doc/{tuicallkit → callkit/preset}/android/integration.md +63 -420
  11. package/resource/doc/callkit/preset/flutter/api.md +401 -0
  12. package/resource/doc/{tuicallkit → callkit/preset}/flutter/integration.md +53 -273
  13. package/resource/doc/callkit/preset/ios/api.md +282 -0
  14. package/resource/doc/{tuicallkit/iOS → callkit/preset/ios}/integration.md +39 -120
  15. package/resource/doc/callkit/preset/react/api.md +600 -0
  16. package/resource/doc/{tuicallkit → callkit/preset}/react/integration.md +6 -6
  17. package/resource/doc/callkit/preset/vue/api.md +600 -0
  18. package/resource/doc/{tuicallkit → callkit/preset}/vue/integration.md +5 -5
  19. package/resource/doc/{chatuikit → chatkit}/android/faq.md +29 -37
  20. package/resource/doc/{chatuikit → chatkit}/android/features/theme.md +22 -166
  21. package/resource/doc/{chatuikit → chatkit}/android/integration.md +30 -126
  22. package/resource/doc/chatkit/faq/android_sdk/client-api.md +280 -0
  23. package/resource/doc/{chatuikit → chatkit}/faq/common/product.md +4 -17
  24. package/resource/doc/{chatuikit → chatkit}/faq/common/server.md +1 -2
  25. package/resource/doc/chatkit/faq/flutter_sdk/client-api.md +183 -0
  26. package/resource/doc/{chatuikit → chatkit}/faq/flutter_sdk/faq.md +3 -3
  27. package/resource/doc/chatkit/faq/ios_sdk/client-api.md +279 -0
  28. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/error_code.md +1 -1
  29. package/resource/doc/{chatuikit → chatkit}/faq/web_sdk/faq.md +4 -4
  30. package/resource/doc/{chatuikit → chatkit}/flutter/features/theme.md +22 -166
  31. package/resource/doc/{chatuikit → chatkit}/flutter/integration.md +20 -95
  32. package/resource/doc/{chatuikit/iOS → chatkit/ios}/faq.md +29 -37
  33. package/resource/doc/{chatuikit/iOS → chatkit/ios}/features/theme.md +27 -176
  34. package/resource/doc/{chatuikit/iOS → chatkit/ios}/integration.md +78 -280
  35. package/resource/doc/{chatuikit/vue → chatkit/react}/components/avatar.md +0 -1
  36. package/resource/doc/{chatuikit → chatkit}/react/components/chat-header.md +7 -12
  37. package/resource/doc/{chatuikit → chatkit}/react/components/chat-setting.md +10 -17
  38. package/resource/doc/{chatuikit → chatkit}/react/components/chat.md +1 -1
  39. package/resource/doc/{chatuikit → chatkit}/react/components/component-list.md +0 -1
  40. package/resource/doc/{chatuikit → chatkit}/react/components/contact-list.md +122 -703
  41. package/resource/doc/chatkit/react/components/conversation-actions.md +174 -0
  42. package/resource/doc/chatkit/react/components/conversation-list.md +333 -0
  43. package/resource/doc/chatkit/react/components/conversation-preview.md +116 -0
  44. package/resource/doc/chatkit/react/components/conversation-search.md +57 -0
  45. package/resource/doc/{chatuikit → chatkit}/react/components/message-input.md +36 -186
  46. package/resource/doc/{chatuikit → chatkit}/react/components/message-list.md +21 -113
  47. package/resource/doc/chatkit/react/components/search.md +282 -0
  48. package/resource/doc/{chatuikit → chatkit}/react/components/tuikit.md +5 -26
  49. package/resource/doc/{chatuikit → chatkit}/react/integration.md +37 -104
  50. package/resource/doc/{chatuikit/react → chatkit/vue}/components/avatar.md +0 -1
  51. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-header.md +7 -13
  52. package/resource/doc/{chatuikit → chatkit}/vue/components/chat-setting.md +13 -18
  53. package/resource/doc/{chatuikit → chatkit}/vue/components/chat.md +1 -2
  54. package/resource/doc/{chatuikit → chatkit}/vue/components/component-list.md +0 -1
  55. package/resource/doc/chatkit/vue/components/contact-list.md +271 -0
  56. package/resource/doc/chatkit/vue/components/conversation-actions.md +228 -0
  57. package/resource/doc/{chatuikit → chatkit}/vue/components/conversation-list.md +42 -316
  58. package/resource/doc/chatkit/vue/components/conversation-preview.md +213 -0
  59. package/resource/doc/chatkit/vue/components/conversation-search.md +50 -0
  60. package/resource/doc/{chatuikit → chatkit}/vue/components/message-input.md +1 -23
  61. package/resource/doc/{chatuikit → chatkit}/vue/components/message-list.md +23 -134
  62. package/resource/doc/{chatuikit → chatkit}/vue/components/search.md +73 -640
  63. package/resource/doc/chatkit/vue/components/tuikit.md +45 -0
  64. package/resource/doc/{chatuikit → chatkit}/vue/components/userpicker.md +4 -4
  65. package/resource/doc/{chatuikit → chatkit}/vue/faq.md +1 -1
  66. package/resource/doc/{chatuikit → chatkit}/vue/integration.md +53 -121
  67. package/resource/doc/livekit/core-sdk/live/android/api-reference/AudioEffectStore.md +283 -0
  68. package/resource/doc/livekit/core-sdk/live/android/api-reference/BarrageStore.md +148 -0
  69. package/resource/doc/livekit/core-sdk/live/android/api-reference/BattleStore.md +316 -0
  70. package/resource/doc/livekit/core-sdk/live/android/api-reference/CameraView.md +57 -0
  71. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoGuestStore.md +419 -0
  72. package/resource/doc/livekit/core-sdk/live/android/api-reference/CoHostStore.md +325 -0
  73. package/resource/doc/livekit/core-sdk/live/android/api-reference/DeviceStore.md +436 -0
  74. package/resource/doc/livekit/core-sdk/live/android/api-reference/GiftStore.md +165 -0
  75. package/resource/doc/livekit/core-sdk/live/android/api-reference/LikeStore.md +49 -0
  76. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveAudienceStore.md +239 -0
  77. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveCoreView.md +74 -0
  78. package/resource/doc/livekit/core-sdk/live/android/api-reference/LiveSeatStore.md +417 -0
  79. package/resource/doc/livekit/core-sdk/live/android/api-reference/LoginStore.md +207 -0
  80. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audience-list.md +17 -88
  81. package/resource/doc/livekit/{live → core-sdk/live}/android/live-audio-effect.md +34 -192
  82. package/resource/doc/livekit/{live → core-sdk/live}/android/live-barrage.md +26 -139
  83. package/resource/doc/livekit/{live → core-sdk/live}/android/live-base-beauty.md +16 -99
  84. package/resource/doc/livekit/{live → core-sdk/live}/android/live-co-guest-interaction.md +54 -161
  85. package/resource/doc/livekit/{live → core-sdk/live}/android/live-gift.md +75 -455
  86. package/resource/doc/livekit/{live → core-sdk/live}/android/live-host-interaction.md +91 -338
  87. package/resource/doc/livekit/{live → core-sdk/live}/android/live-integration.md +108 -492
  88. package/resource/doc/livekit/{live → core-sdk/live}/android/live-live-list.md +27 -165
  89. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/AudioEffectStore.md +279 -0
  90. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BarrageStore.md +158 -0
  91. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BaseBeautyStore.md +155 -0
  92. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/BattleStore.md +304 -0
  93. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoGuestStore.md +394 -0
  94. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/CoHostStore.md +303 -0
  95. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/DeviceStore.md +410 -0
  96. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/GiftStore.md +160 -0
  97. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LikeStore.md +51 -0
  98. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveAudienceStore.md +231 -0
  99. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveCoreView.md +143 -0
  100. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LiveSeatStore.md +375 -0
  101. package/resource/doc/livekit/core-sdk/live/flutter/api-reference/LoginStore.md +170 -0
  102. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audience-list.md +13 -91
  103. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-audio-effect.md +34 -177
  104. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-barrage.md +18 -102
  105. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-base-beauty.md +24 -164
  106. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-co-guest-interaction.md +56 -161
  107. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-gift.md +66 -460
  108. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-host-interaction.md +117 -364
  109. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-integration.md +160 -543
  110. package/resource/doc/livekit/{live → core-sdk/live}/flutter/live-live-list.md +22 -161
  111. package/resource/doc/livekit/core-sdk/live/ios/api-reference/AudioEffectStore.md +287 -0
  112. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BarrageStore.md +165 -0
  113. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BaseBeautyStore.md +143 -0
  114. package/resource/doc/livekit/core-sdk/live/ios/api-reference/BattleStore.md +298 -0
  115. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoGuestStore.md +349 -0
  116. package/resource/doc/livekit/core-sdk/live/ios/api-reference/CoHostStore.md +297 -0
  117. package/resource/doc/livekit/core-sdk/live/ios/api-reference/DeviceStore.md +471 -0
  118. package/resource/doc/livekit/core-sdk/live/ios/api-reference/GiftStore.md +179 -0
  119. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LikeStore.md +49 -0
  120. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveAudienceStore.md +238 -0
  121. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveCoreView.md +74 -0
  122. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LiveSeatStore.md +412 -0
  123. package/resource/doc/livekit/core-sdk/live/ios/api-reference/LoginStore.md +173 -0
  124. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audience-list.md +23 -96
  125. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-audio-effect.md +33 -195
  126. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-barrage.md +35 -150
  127. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-base-beauty.md +20 -105
  128. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-co-guest-interaction.md +35 -140
  129. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-gift.md +77 -457
  130. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-host-interaction.md +70 -317
  131. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-integration.md +90 -473
  132. package/resource/doc/livekit/{live → core-sdk/live}/ios/live-live-list.md +28 -163
  133. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audience-list.md +17 -88
  134. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-audio-effect.md +34 -192
  135. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-barrage.md +26 -139
  136. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-co-guest-interaction.md +53 -262
  137. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-gift.md +75 -455
  138. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-host-interaction.md +60 -272
  139. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-integration.md +63 -440
  140. package/resource/doc/livekit/{voice → core-sdk/voice}/android/voice-room-list.md +23 -151
  141. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audience-list.md +13 -91
  142. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-audio-effect.md +34 -177
  143. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-barrage.md +18 -102
  144. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-co-guest-interaction.md +44 -201
  145. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-gift.md +66 -460
  146. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-integration.md +57 -419
  147. package/resource/doc/livekit/{voice → core-sdk/voice}/flutter/voice-room-list.md +24 -157
  148. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audience-list.md +23 -96
  149. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-audio-effect.md +33 -195
  150. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-barrage.md +35 -150
  151. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-co-guest-interaction.md +45 -254
  152. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-gift.md +77 -457
  153. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-host-interaction.md +52 -261
  154. package/resource/doc/livekit/core-sdk/voice/ios/voice-integration.md +478 -0
  155. package/resource/doc/livekit/{voice → core-sdk/voice}/ios/voice-room-list.md +36 -167
  156. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audience-list.md +15 -45
  157. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-audio-effect.md +23 -137
  158. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-barrage.md +25 -131
  159. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-co-guest-interaction.md +70 -366
  160. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-gift.md +70 -424
  161. package/resource/doc/livekit/core-sdk/voice/uni-app/voice-integration.md +323 -0
  162. package/resource/doc/livekit/{voice → core-sdk/voice}/uni-app/voice-room-list.md +24 -116
  163. package/resource/doc/livekit/faq/common/{error_code.md → error-code.md} +2 -3
  164. package/resource/doc/livekit/preset/live/vue/api-reference/index.md +780 -0
  165. package/resource/doc/livekit/preset/live/vue/components/barrage.md +291 -0
  166. package/resource/doc/livekit/{live → preset/live}/vue/components/co-guest-panel.md +9 -48
  167. package/resource/doc/livekit/{live → preset/live}/vue/components/live-audience-list.md +27 -145
  168. package/resource/doc/livekit/{live → preset/live}/vue/components/live-scene-panel.md +13 -76
  169. package/resource/doc/livekit/{live → preset/live}/vue/components/live-view.md +33 -224
  170. package/resource/doc/livekit/preset/live/vue/components/stream-mixer.md +211 -0
  171. package/resource/doc/livekit/preset/live/vue/faq.md +1 -0
  172. package/resource/doc/livekit/preset/live/vue/live-list-integration.md +244 -0
  173. package/resource/doc/livekit/preset/live/vue/live-player-desk-integration.md +301 -0
  174. package/resource/doc/livekit/preset/live/vue/live-player-h5-integration.md +307 -0
  175. package/resource/doc/livekit/preset/live/vue/live-pusher-integration.md +754 -0
  176. package/resource/doc/roomkit/android/features/call-user-to-room.md +234 -0
  177. package/resource/doc/roomkit/android/features/room-participant-state.md +850 -0
  178. package/resource/doc/roomkit/android/features/room-state.md +358 -0
  179. package/resource/doc/roomkit/android/features/schedule-room.md +336 -0
  180. package/resource/doc/roomkit/android/integration.md +433 -0
  181. package/resource/doc/roomkit/{common/error_code.md → faq/common/error-code.md} +1 -1
  182. package/resource/doc/roomkit/flutter/features/call-user-to-room.md +228 -0
  183. package/resource/doc/roomkit/flutter/features/room-participant-state.md +796 -0
  184. package/resource/doc/roomkit/flutter/features/room-state.md +324 -0
  185. package/resource/doc/roomkit/flutter/features/schedule-room.md +324 -0
  186. package/resource/doc/roomkit/flutter/integration.md +405 -0
  187. package/resource/doc/roomkit/ios/features/call-user-to-room.md +226 -0
  188. package/resource/doc/roomkit/ios/features/room-participant-state.md +821 -0
  189. package/resource/doc/roomkit/ios/features/room-state.md +320 -0
  190. package/resource/doc/roomkit/ios/features/schedule-room.md +318 -0
  191. package/resource/doc/roomkit/ios/integration.md +384 -0
  192. package/resource/doc/roomkit/vue/faq.md +1 -0
  193. package/resource/doc/roomkit/vue/features/call-user-to-room.md +17 -53
  194. package/resource/doc/roomkit/vue/features/device-detection.md +30 -48
  195. package/resource/doc/roomkit/vue/features/device-state.md +24 -44
  196. package/resource/doc/roomkit/vue/features/free-beauty-panel.md +13 -36
  197. package/resource/doc/roomkit/vue/features/room-chat.md +31 -89
  198. package/resource/doc/roomkit/vue/features/room-participant-state.md +28 -50
  199. package/resource/doc/roomkit/vue/features/room-state.md +25 -36
  200. package/resource/doc/roomkit/vue/features/room-view.md +30 -127
  201. package/resource/doc/roomkit/vue/features/schedule-room.md +9 -40
  202. package/resource/doc/roomkit/vue/features/screen-share.md +22 -90
  203. package/resource/doc/roomkit/vue/features/virtual-background.md +13 -34
  204. package/resource/doc/roomkit/vue/integration.md +21 -80
  205. package/resource/doc/rtcengine/faq/common/userSig.md +17 -141
  206. package/resource/doc/rtcengine/faq/web/web.md +15 -22
  207. package/resource/doc/rtcengine/web/api.md +17 -21
  208. package/resource/doc/rtcengine/web/how_to_integrated_web_sdk.md +4 -10
  209. package/resource/doc/rtcengine/web/how_to_run_web_sdk_demo.md +4 -8
  210. package/resource/doc/rtcengine/web/plugin/20-advanced-customized-capture-rendering.md +3 -3
  211. package/resource/doc/rtcengine/web/plugin/21-advanced-auto-play-policy.md +2 -3
  212. package/resource/doc/rtcengine/web/plugin/22-advanced-audio-mixer.md +6 -6
  213. package/resource/doc/rtcengine/web/plugin/23-advanced-support-detection.md +2 -2
  214. package/resource/doc/rtcengine/web/plugin/24-advanced-network-quality.md +2 -4
  215. package/resource/doc/rtcengine/web/plugin/25-advanced-device-change.md +1 -2
  216. package/resource/doc/rtcengine/web/plugin/26-advanced-publish-cdn-stream.md +2 -6
  217. package/resource/doc/rtcengine/web/plugin/27-advanced-small-stream.md +13 -14
  218. package/resource/doc/rtcengine/web/plugin/28-advanced-beauty.md +10 -90
  219. package/resource/doc/rtcengine/web/plugin/31-advanced-plugins-overview.md +5 -8
  220. package/resource/doc/rtcengine/web/plugin/34-advanced-proxy.md +31 -35
  221. package/resource/doc/rtcengine/web/plugin/35-advanced-ai-denoiser.md +0 -2
  222. package/resource/doc/rtcengine/web/plugin/36-advanced-virtual-background.md +7 -49
  223. package/resource/doc/rtcengine/web/plugin/37-advanced-voice-changer.md +1 -1
  224. package/resource/doc/rtcengine/web/plugin/39-advanced-video-decoder.md +0 -3
  225. package/resource/doc/rtcengine/web/plugin/40-advanced-video-mixer.md +20 -20
  226. package/resource/doc/rtcengine/web/plugin/41-advanced-small-stream-auto-switcher.md +1 -1
  227. package/resource/doc/rtcengine/web/plugin/42-advanced-realtime-transcriber.md +4 -4
  228. package/resource/doc/rtcengine/web/plugin/43-advanced-face-detection.md +3 -3
  229. package/resource/doc/trtc/C++/ITRTCCloud.md +718 -2847
  230. package/resource/doc/trtc/C++/ITRTCStatistics.md +53 -308
  231. package/resource/doc/trtc/C++/ITXAudioEffectManager.md +207 -1041
  232. package/resource/doc/trtc/C++/ITXDeviceManager.md +127 -768
  233. package/resource/doc/trtc/C++/TRTCCloudCallback.md +634 -2259
  234. package/resource/doc/trtc/C++/TRTCTypeDef.md +726 -3465
  235. package/resource/doc/trtc/C++/TXLiteAVCode.md +117 -916
  236. package/resource/doc/trtc/android/TRTCCloud.md +638 -2612
  237. package/resource/doc/trtc/android/TRTCCloudDef.md +769 -3697
  238. package/resource/doc/trtc/android/TRTCCloudListener.md +609 -2070
  239. package/resource/doc/trtc/android/TRTCStatistics.md +48 -278
  240. package/resource/doc/trtc/android/TXAudioEffectManager.md +207 -1049
  241. package/resource/doc/trtc/android/TXBeautyManager.md +127 -704
  242. package/resource/doc/trtc/android/TXDeviceManager.md +51 -318
  243. package/resource/doc/trtc/android/TXLiteAVCode.md +115 -900
  244. package/resource/doc/trtc/iOS/TRTCCloud.md +726 -2930
  245. package/resource/doc/trtc/iOS/TRTCCloudDelegate.md +580 -2099
  246. package/resource/doc/trtc/iOS/TRTCStatistics.md +48 -278
  247. package/resource/doc/trtc/iOS/TXAudioEffectManager.md +179 -896
  248. package/resource/doc/trtc/iOS/TXBeautyManager.md +128 -710
  249. package/resource/doc/trtc/iOS/TXDeviceManager.md +129 -772
  250. package/resource/doc/trtc/iOS/TXLiteAVCode.md +117 -915
  251. package/resource/doc/trtc/iOS/TXLiveSDKTypeDef.md +747 -3559
  252. package/server.js +1 -5
  253. package/server.js.map +1 -1
  254. package/tools/call/get_callkit_api.js +32 -0
  255. package/tools/call/get_callkit_api.js.map +1 -0
  256. package/tools/call/get_native_call_uikit_integration.js +34 -0
  257. package/tools/call/get_native_call_uikit_integration.js.map +1 -0
  258. package/tools/call/{get-web-call-integration.js → get_web_call_uikit_integration.js} +13 -8
  259. package/tools/call/get_web_call_uikit_integration.js.map +1 -0
  260. package/tools/chat/get_native_chat_uikit_feature_detail.js +34 -0
  261. package/tools/chat/get_native_chat_uikit_feature_detail.js.map +1 -0
  262. package/tools/chat/get_native_chat_uikit_integration.js +45 -0
  263. package/tools/chat/get_native_chat_uikit_integration.js.map +1 -0
  264. package/tools/chat/get_web_chat_uikit_component_detail.js +34 -0
  265. package/tools/chat/get_web_chat_uikit_component_detail.js.map +1 -0
  266. package/tools/chat/get_web_chat_uikit_integration.js +45 -0
  267. package/tools/chat/get_web_chat_uikit_integration.js.map +1 -0
  268. package/tools/common/get_faq.js +265 -0
  269. package/tools/common/get_faq.js.map +1 -0
  270. package/tools/common/{get-usersig.js → get_usersig.js} +6 -3
  271. package/tools/common/get_usersig.js.map +1 -0
  272. package/tools/common/present_framework_choice.js +63 -0
  273. package/tools/common/present_framework_choice.js.map +1 -0
  274. package/tools/definitions/get_callkit_api_def.js +28 -0
  275. package/tools/definitions/get_callkit_api_def.js.map +1 -0
  276. package/tools/definitions/get_faq_def.js +18 -19
  277. package/tools/definitions/get_faq_def.js.map +1 -1
  278. package/tools/definitions/get_native_call_uikit_integration_def.js +15 -34
  279. package/tools/definitions/get_native_call_uikit_integration_def.js.map +1 -1
  280. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js +31 -0
  281. package/tools/definitions/get_native_chat_uikit_feature_detail_def.js.map +1 -0
  282. package/tools/definitions/get_native_chat_uikit_integration_def.js +16 -41
  283. package/tools/definitions/get_native_chat_uikit_integration_def.js.map +1 -1
  284. package/tools/definitions/get_native_livekit_core_features_def.js +33 -0
  285. package/tools/definitions/get_native_livekit_core_features_def.js.map +1 -0
  286. package/tools/definitions/get_native_livekit_core_integration_def.js +33 -0
  287. package/tools/definitions/get_native_livekit_core_integration_def.js.map +1 -0
  288. package/tools/definitions/get_native_trtc_sdk_docs_def.js +32 -0
  289. package/tools/definitions/get_native_trtc_sdk_docs_def.js.map +1 -0
  290. package/tools/definitions/get_usersig_def.js +17 -24
  291. package/tools/definitions/get_usersig_def.js.map +1 -1
  292. package/tools/definitions/get_web_call_uikit_integration_def.js +15 -7
  293. package/tools/definitions/get_web_call_uikit_integration_def.js.map +1 -1
  294. package/tools/definitions/get_web_chat_uikit_component_detail_def.js +17 -49
  295. package/tools/definitions/get_web_chat_uikit_component_detail_def.js.map +1 -1
  296. package/tools/definitions/get_web_chat_uikit_integration_def.js +16 -19
  297. package/tools/definitions/get_web_chat_uikit_integration_def.js.map +1 -1
  298. package/tools/definitions/get_web_live_uikit_integration_def.js +13 -18
  299. package/tools/definitions/get_web_live_uikit_integration_def.js.map +1 -1
  300. package/tools/definitions/get_web_livekit_api_def.js +27 -0
  301. package/tools/definitions/get_web_livekit_api_def.js.map +1 -0
  302. package/tools/definitions/get_web_livekit_component_detail_def.js +29 -0
  303. package/tools/definitions/get_web_livekit_component_detail_def.js.map +1 -0
  304. package/tools/definitions/get_web_room_uikit_integration_def.js +13 -46
  305. package/tools/definitions/get_web_room_uikit_integration_def.js.map +1 -1
  306. package/tools/definitions/get_web_roomkit_feature_detail_def.js +30 -0
  307. package/tools/definitions/get_web_roomkit_feature_detail_def.js.map +1 -0
  308. package/tools/definitions/get_web_trtc_sdk_api_def.js +25 -0
  309. package/tools/definitions/get_web_trtc_sdk_api_def.js.map +1 -0
  310. package/tools/definitions/get_web_trtc_sdk_integration_def.js +25 -0
  311. package/tools/definitions/get_web_trtc_sdk_integration_def.js.map +1 -0
  312. package/tools/definitions/get_web_trtc_sdk_plugin_def.js +25 -0
  313. package/tools/definitions/get_web_trtc_sdk_plugin_def.js.map +1 -0
  314. package/tools/definitions/present_framework_choice_def.js +23 -12
  315. package/tools/definitions/present_framework_choice_def.js.map +1 -1
  316. package/tools/index.js +47 -61
  317. package/tools/index.js.map +1 -1
  318. package/tools/live/get_native_livekit_core_features.js +65 -0
  319. package/tools/live/get_native_livekit_core_features.js.map +1 -0
  320. package/tools/live/get_native_livekit_core_integration.js +59 -0
  321. package/tools/live/get_native_livekit_core_integration.js.map +1 -0
  322. package/tools/live/get_web_live_uikit_integration.js +48 -0
  323. package/tools/live/get_web_live_uikit_integration.js.map +1 -0
  324. package/tools/live/get_web_livekit_api.js +32 -0
  325. package/tools/live/get_web_livekit_api.js.map +1 -0
  326. package/tools/live/get_web_livekit_component_detail.js +34 -0
  327. package/tools/live/get_web_livekit_component_detail.js.map +1 -0
  328. package/tools/room/{get-web-room-integration.js → get_web_room_uikit_integration.js} +13 -14
  329. package/tools/room/get_web_room_uikit_integration.js.map +1 -0
  330. package/tools/room/{get-web-room-feature-detail.js → get_web_roomkit_feature_detail.js} +30 -31
  331. package/tools/room/get_web_roomkit_feature_detail.js.map +1 -0
  332. package/tools/rtcengine/get_web_trtc_sdk_api.js +31 -0
  333. package/tools/rtcengine/get_web_trtc_sdk_api.js.map +1 -0
  334. package/tools/rtcengine/get_web_trtc_sdk_integration.js +31 -0
  335. package/tools/rtcengine/get_web_trtc_sdk_integration.js.map +1 -0
  336. package/tools/rtcengine/get_web_trtc_sdk_plugin.js +31 -0
  337. package/tools/rtcengine/get_web_trtc_sdk_plugin.js.map +1 -0
  338. package/tools/trtc/get_native_trtc_sdk_docs.js +73 -0
  339. package/tools/trtc/get_native_trtc_sdk_docs.js.map +1 -0
  340. package/utils/generate-structured-result.js +61 -17
  341. package/utils/generate-structured-result.js.map +1 -1
  342. package/utils/report-cls-client.js +12 -1
  343. package/utils/report-cls-client.js.map +1 -1
  344. package/utils/report-es-client.js +1 -1
  345. package/resource/doc/chatuikit/android/workflow.md +0 -713
  346. package/resource/doc/chatuikit/faq/android_sdk/client-api.md +0 -1376
  347. package/resource/doc/chatuikit/faq/flutter_sdk/client-api.md +0 -860
  348. package/resource/doc/chatuikit/faq/ios_sdk/client-api.md +0 -1371
  349. package/resource/doc/chatuikit/flutter/workflow.md +0 -816
  350. package/resource/doc/chatuikit/iOS/workflow.md +0 -0
  351. package/resource/doc/chatuikit/react/components/conversation-list.md +0 -765
  352. package/resource/doc/chatuikit/react/components/search.md +0 -885
  353. package/resource/doc/chatuikit/react/create-group.md +0 -22
  354. package/resource/doc/chatuikit/react/init.md +0 -25
  355. package/resource/doc/chatuikit/react/workflow.md +0 -254
  356. package/resource/doc/chatuikit/uniapp-app/faq.md +0 -0
  357. package/resource/doc/chatuikit/uniapp-app/integration.md +0 -619
  358. package/resource/doc/chatuikit/uniapp-app/workflow.md +0 -576
  359. package/resource/doc/chatuikit/vue/components/contact-list.md +0 -679
  360. package/resource/doc/chatuikit/vue/components/tuikit.md +0 -110
  361. package/resource/doc/chatuikit/vue/create-group.md +0 -26
  362. package/resource/doc/chatuikit/vue/init.md +0 -35
  363. package/resource/doc/chatuikit/vue/workflow.md +0 -395
  364. package/resource/doc/livekit/live/android/workflow.md +0 -322
  365. package/resource/doc/livekit/live/flutter/workflow.md +0 -353
  366. package/resource/doc/livekit/live/ios/workflow.md +0 -352
  367. package/resource/doc/livekit/live/vue/components/barrage.md +0 -615
  368. package/resource/doc/livekit/live/vue/components/stream-mixer.md +0 -442
  369. package/resource/doc/livekit/live/vue/faq.md +0 -0
  370. package/resource/doc/livekit/live/vue/live-list-integration.md +0 -195
  371. package/resource/doc/livekit/live/vue/live-player-desk-integration.md +0 -293
  372. package/resource/doc/livekit/live/vue/live-player-h5-integration.md +0 -381
  373. package/resource/doc/livekit/live/vue/live-pusher-integration.md +0 -598
  374. package/resource/doc/livekit/live/vue/states/live-state.md +0 -2656
  375. package/resource/doc/livekit/live/vue/workflow.md +0 -219
  376. package/resource/doc/livekit/voice/android/workflow.md +0 -333
  377. package/resource/doc/livekit/voice/flutter/workflow.md +0 -359
  378. package/resource/doc/livekit/voice/ios/voice-integration.md +0 -853
  379. package/resource/doc/livekit/voice/ios/workflow.md +0 -358
  380. package/resource/doc/livekit/voice/uni-app/voice-integration.md +0 -613
  381. package/resource/doc/livekit/voice/uni-app/workflow.md +0 -369
  382. package/resource/doc/native_live/android/V2TXLiveCode_api_android.md +0 -334
  383. package/resource/doc/native_live/android/V2TXLiveDef_api_android.md +0 -434
  384. package/resource/doc/native_live/android/V2TXLivePlayerObserver_api_android.md +0 -685
  385. package/resource/doc/native_live/android/V2TXLivePlayer_api_android.md +0 -712
  386. package/resource/doc/native_live/android/V2TXLivePremier_api_android.md +0 -284
  387. package/resource/doc/native_live/android/V2TXLivePusherObserver_api_android.md +0 -849
  388. package/resource/doc/native_live/android/V2TXLivePusher_api_android.md +0 -1046
  389. package/resource/doc/native_live/flutter/V2TXLiveCode_api_flutter.md +0 -460
  390. package/resource/doc/native_live/flutter/V2TXLiveDef_api_flutter.md +0 -558
  391. package/resource/doc/native_live/flutter/V2TXLivePlayerObserver_api_flutter.md +0 -879
  392. package/resource/doc/native_live/flutter/V2TXLivePlayer_api_flutter.md +0 -668
  393. package/resource/doc/native_live/flutter/V2TXLivePremier_api_flutter.md +0 -456
  394. package/resource/doc/native_live/flutter/V2TXLivePusherObserver_api_flutter.md +0 -332
  395. package/resource/doc/native_live/flutter/V2TXLivePusher_api_flutter.md +0 -748
  396. package/resource/doc/native_live/iOS/V2TXLiveCode_api_iOS.md +0 -328
  397. package/resource/doc/native_live/iOS/V2TXLiveDef_api_iOS.md +0 -505
  398. package/resource/doc/native_live/iOS/V2TXLivePlayerObserver_api_iOS.md +0 -507
  399. package/resource/doc/native_live/iOS/V2TXLivePlayer_api_iOS.md +0 -676
  400. package/resource/doc/native_live/iOS/V2TXLivePremier_api_iOS.md +0 -284
  401. package/resource/doc/native_live/iOS/V2TXLivePusherObserver_api_iOS.md +0 -820
  402. package/resource/doc/native_live/iOS/V2TXLivePusher_api_iOS.md +0 -1065
  403. package/resource/doc/roomkit/vue/features/workflow.md +0 -553
  404. package/resource/doc/roomkit/vue/workflow.md +0 -733
  405. package/resource/doc/tuicallkit/android/workflow.md +0 -432
  406. package/resource/doc/tuicallkit/faq/android_sdk/call-observer-api.md +0 -786
  407. package/resource/doc/tuicallkit/faq/android_sdk/callkit-api.md +0 -663
  408. package/resource/doc/tuicallkit/faq/flutter_sdk/call-define-api.md +0 -932
  409. package/resource/doc/tuicallkit/faq/flutter_sdk/call-observer-api.md +0 -926
  410. package/resource/doc/tuicallkit/faq/flutter_sdk/callkit-api.md +0 -452
  411. package/resource/doc/tuicallkit/faq/ios_sdk/call-observer-api.md +0 -779
  412. package/resource/doc/tuicallkit/faq/ios_sdk/callkit-api.md +0 -635
  413. package/resource/doc/tuicallkit/flutter/workflow.md +0 -331
  414. package/resource/doc/tuicallkit/react/api.md +0 -1512
  415. package/resource/doc/tuicallkit/react/faq.md +0 -986
  416. package/resource/doc/tuicallkit/vue/api.md +0 -1512
  417. package/tools/call/get-native-call-integration.js +0 -43
  418. package/tools/call/get-native-call-integration.js.map +0 -1
  419. package/tools/call/get-web-call-api.js +0 -27
  420. package/tools/call/get-web-call-api.js.map +0 -1
  421. package/tools/call/get-web-call-integration.js.map +0 -1
  422. package/tools/chat/get-native-chat-feature-detail.js +0 -30
  423. package/tools/chat/get-native-chat-feature-detail.js.map +0 -1
  424. package/tools/chat/get-native-chat-integration.js +0 -45
  425. package/tools/chat/get-native-chat-integration.js.map +0 -1
  426. package/tools/chat/get-web-chat-component-detail.js +0 -31
  427. package/tools/chat/get-web-chat-component-detail.js.map +0 -1
  428. package/tools/chat/get-web-chat-integration.js +0 -45
  429. package/tools/chat/get-web-chat-integration.js.map +0 -1
  430. package/tools/chat/get-web-chat-uikit-init.js +0 -28
  431. package/tools/chat/get-web-chat-uikit-init.js.map +0 -1
  432. package/tools/chat/get-web-create-group-doc.js +0 -28
  433. package/tools/chat/get-web-create-group-doc.js.map +0 -1
  434. package/tools/common/get-faq.js +0 -91
  435. package/tools/common/get-faq.js.map +0 -1
  436. package/tools/common/get-usersig.js.map +0 -1
  437. package/tools/common/present-framework-choice.js +0 -16
  438. package/tools/common/present-framework-choice.js.map +0 -1
  439. package/tools/common/present-scenario-choice.js +0 -16
  440. package/tools/common/present-scenario-choice.js.map +0 -1
  441. package/tools/common/record-prompt.js +0 -55
  442. package/tools/common/record-prompt.js.map +0 -1
  443. package/tools/common/record-result.js +0 -60
  444. package/tools/common/record-result.js.map +0 -1
  445. package/tools/definitions/get_native_chat_feature_detail_def.js +0 -32
  446. package/tools/definitions/get_native_chat_feature_detail_def.js.map +0 -1
  447. package/tools/definitions/get_native_live_api_def.js +0 -22
  448. package/tools/definitions/get_native_live_api_def.js.map +0 -1
  449. package/tools/definitions/get_native_live_uikit_extra_features_def.js +0 -109
  450. package/tools/definitions/get_native_live_uikit_extra_features_def.js.map +0 -1
  451. package/tools/definitions/get_native_live_uikit_integration_def.js +0 -75
  452. package/tools/definitions/get_native_live_uikit_integration_def.js.map +0 -1
  453. package/tools/definitions/get_native_live_uikit_interaction_def.js +0 -63
  454. package/tools/definitions/get_native_live_uikit_interaction_def.js.map +0 -1
  455. package/tools/definitions/get_trtc_native_api_def.js +0 -17
  456. package/tools/definitions/get_trtc_native_api_def.js.map +0 -1
  457. package/tools/definitions/get_web_call_uikit_api_def.js +0 -23
  458. package/tools/definitions/get_web_call_uikit_api_def.js.map +0 -1
  459. package/tools/definitions/get_web_chat_uikit_init_def.js +0 -23
  460. package/tools/definitions/get_web_chat_uikit_init_def.js.map +0 -1
  461. package/tools/definitions/get_web_create_group_doc_def.js +0 -18
  462. package/tools/definitions/get_web_create_group_doc_def.js.map +0 -1
  463. package/tools/definitions/get_web_live_state_detail_def.js +0 -19
  464. package/tools/definitions/get_web_live_state_detail_def.js.map +0 -1
  465. package/tools/definitions/get_web_live_uikit_component_detail_def.js +0 -27
  466. package/tools/definitions/get_web_live_uikit_component_detail_def.js.map +0 -1
  467. package/tools/definitions/get_web_room_feature_detail_def.js +0 -92
  468. package/tools/definitions/get_web_room_feature_detail_def.js.map +0 -1
  469. package/tools/definitions/present_scenario_choice_def.js +0 -53
  470. package/tools/definitions/present_scenario_choice_def.js.map +0 -1
  471. package/tools/definitions/record_prompt_def.js +0 -58
  472. package/tools/definitions/record_prompt_def.js.map +0 -1
  473. package/tools/definitions/record_result_def.js +0 -46
  474. package/tools/definitions/record_result_def.js.map +0 -1
  475. package/tools/live/get-native-live-uikit-integration.js +0 -177
  476. package/tools/live/get-native-live-uikit-integration.js.map +0 -1
  477. package/tools/live/get-web-live-component-detail.js +0 -31
  478. package/tools/live/get-web-live-component-detail.js.map +0 -1
  479. package/tools/live/get-web-live-state-detail.js +0 -31
  480. package/tools/live/get-web-live-state-detail.js.map +0 -1
  481. package/tools/live/get-web-live-uikit-integration.js +0 -52
  482. package/tools/live/get-web-live-uikit-integration.js.map +0 -1
  483. package/tools/live/get_native_live_uikit_extra_features.js +0 -105
  484. package/tools/live/get_native_live_uikit_extra_features.js.map +0 -1
  485. package/tools/live/get_native_live_uikit_interaction.js +0 -194
  486. package/tools/live/get_native_live_uikit_interaction.js.map +0 -1
  487. package/tools/native_live/get-native-live-api.js +0 -31
  488. package/tools/native_live/get-native-live-api.js.map +0 -1
  489. package/tools/room/get-web-room-feature-detail.js.map +0 -1
  490. package/tools/room/get-web-room-integration.js.map +0 -1
  491. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js +0 -28
  492. package/tools/rtcengine/get-rtcengine-web-sdk-integration.js.map +0 -1
  493. package/tools/rtcengine/get-trtc-sdk-faq.js +0 -32
  494. package/tools/rtcengine/get-trtc-sdk-faq.js.map +0 -1
  495. package/tools/rtcengine/get-trtc-web-sdk-api.js +0 -28
  496. package/tools/rtcengine/get-trtc-web-sdk-api.js.map +0 -1
  497. package/tools/rtcengine/get-trtc-web-sdk-faq.js +0 -30
  498. package/tools/rtcengine/get-trtc-web-sdk-faq.js.map +0 -1
  499. package/tools/rtcengine/get-trtc-web-sdk-integration.js +0 -29
  500. package/tools/rtcengine/get-trtc-web-sdk-integration.js.map +0 -1
  501. package/tools/rtcengine/get-trtc-web-sdk-plugin.js +0 -45
  502. package/tools/rtcengine/get-trtc-web-sdk-plugin.js.map +0 -1
  503. package/tools/trtc/get-trtc-native-api.js +0 -31
  504. package/tools/trtc/get-trtc-native-api.js.map +0 -1
  505. package/utils/handle-component-name.js +0 -33
  506. package/utils/handle-component-name.js.map +0 -1
  507. /package/resource/doc/{rtcengine/web → callkit/core-sdk}/.gitkeep +0 -0
  508. /package/resource/doc/{chatuikit → chatkit}/faq/common/server_error_code.md +0 -0
  509. /package/resource/doc/{chatuikit → chatkit}/flutter/faq.md +0 -0
  510. /package/resource/doc/{chatuikit → chatkit}/react/faq.md +0 -0
@@ -1,71 +1,18 @@
1
1
  `AtomicXCore` 提供了 `CoHostStore` 和 `BattleStore` 两个模块,分别用于处理**跨房连线**和 **PK 对战**。本文将指导您如何组合使用这两个工具,完成语聊房场景下的连线和 PK 功能的开发。
2
2
 
3
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9a1b8a61cc3111f084a45254005ef0f7.jpeg)
4
-
5
-
6
3
  ## 核心概念
7
- <table>
8
- <tr>
9
- <td rowspan="1" colSpan="1" >**核心概念**</td>
10
-
11
- <td rowspan="1" colSpan="1" >**类型**</td>
12
-
13
- <td rowspan="1" colSpan="1" >**核心职责与描述**</td>
14
- </tr>
15
-
16
- <tr>
17
- <td rowspan="1" colSpan="1" >**CoHostStore**</td>
18
-
19
- <td rowspan="1" colSpan="1" >class</td>
20
-
21
- <td rowspan="1" colSpan="1" >管理主播间的连线生命周期,提供连线功能 API(requestHostConnection、acceptHostConnection)。</td>
22
- </tr>
23
-
24
- <tr>
25
- <td rowspan="1" colSpan="1" >**BattleStore**</td>
26
-
27
- <td rowspan="1" colSpan="1" >class</td>
28
-
29
- <td rowspan="1" colSpan="1" >管理跨房 PK 对战的信令与数据,包括 PK 状态。</td>
30
- </tr>
31
-
32
- <tr>
33
- <td rowspan="1" colSpan="1" >**LiveListStore**</td>
34
-
35
- <td rowspan="1" colSpan="1" >class</td>
36
-
37
- <td rowspan="1" colSpan="1" >提供直播房间列表的拉取功能 (`fetchLiveList`),用于获取可连线的其他房间信息。</td>
38
- </tr>
39
-
40
- <tr>
41
- <td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
42
-
43
- <td rowspan="1" colSpan="1" >class</td>
44
-
45
- <td rowspan="1" colSpan="1" >管理房间内所有麦位状态(包括连线状态下的跨房间麦位),用于监听用户上下麦、麦克风等状态。</td>
46
- </tr>
47
-
48
- <tr>
49
- <td rowspan="1" colSpan="1" >**CoHostLayoutTemplate**</td>
50
-
51
- <td rowspan="1" colSpan="1" >enum</td>
52
-
53
- <td rowspan="1" colSpan="1" >连线时,用于指定房间麦位布局模板,例如`.hostStaticVoice6v6`。</td>
54
- </tr>
55
-
56
- <tr>
57
- <td rowspan="1" colSpan="1" >**BattleConfig**</td>
58
-
59
- <td rowspan="1" colSpan="1" >struct</td>
60
-
61
- <td rowspan="1" colSpan="1" >配置 PK 的详细信息,例如 PK 时长 (`duration`) 和是否需要二次响应 (`needResponse`)。</td>
62
- </tr>
63
- </table>
64
-
4
+ | **核心概念** | **类型** | **核心职责与描述** |
5
+ | --- | --- | --- |
6
+ | **CoHostStore** | class | 管理主播间的连线生命周期,提供连线功能 API(requestHostConnection、acceptHostConnection)。 |
7
+ | **BattleStore** | class | 管理跨房 PK 对战的信令与数据,包括 PK 状态。 |
8
+ | **LiveListStore** | class | 提供直播房间列表的拉取功能 (`fetchLiveList`),用于获取可连线的其他房间信息。 |
9
+ | **LiveSeatStore** | class | 管理房间内所有麦位状态(包括连线状态下的跨房间麦位),用于监听用户上下麦、麦克风等状态。 |
10
+ | **CoHostLayoutTemplate** | enum | 连线时,用于指定房间麦位布局模板,例如`.hostStaticVoice6v6`。 |
11
+ | **BattleConfig** | struct | 配置 PK 的详细信息,例如 PK 时长 (`duration`) 和是否需要二次响应 (`needResponse`)。 |
65
12
 
66
13
  ## 前提条件
67
14
 
68
- 请参考 [快速接入](https://write.woa.com/document/192834898445422592) 集成 **AtomicXCore SDK**,并完成 **主播开播** 和 **观众观看** 的功能实现。
15
+ 请参考 快速接入 集成 **AtomicXCore SDK**,并完成 **主播开播** 和 **观众观看** 的功能实现。
69
16
 
70
17
  ## 主播发起一场连线
71
18
 
@@ -76,9 +23,9 @@
76
23
  **实现方式: **调用 `LiveListStore.shared.fetchLiveList`。
77
24
 
78
25
  > **注意:**
79
- >
26
+ >
80
27
  > - 如果接口返回的列表中没有找到您想要的直播间,您需要检查开播时设置的 `TUILiveInfo` 的 `isPublicVisible` 字段是否为 `true`;
81
- > - 该接口支持分页继续拉取,您可以使用`result`为 `success` 时的`cursor`作为下一次续拉的游标,如果返回的 `cursor` 为空,则表示直播间列表已全部拉取完;
28
+ > - 该接口支持分页继续拉取,您可以使用`result`为 `success` 时的`cursor`作为下一次续拉的游标,如果返回的 `cursor` 为空,则表示直播间列表已全部拉取完;
82
29
  > - 为了性能考虑,建议您将count设置为 20。
83
30
 
84
31
  ``` swift
@@ -108,7 +55,7 @@ func fetchLiveListForCoHost() {
108
55
  您可以在主播选中指定的主播连线时,调用 `CoHostStore` 的 `requestHostConnection` 接口发起连线邀请。
109
56
 
110
57
  > **说明:**
111
- >
58
+ >
112
59
  > - AtomicXCore最大支持 **9** 个房间互相连线,每个房间支持 **50 **路用户。
113
60
  > - 该接口支持批量发起邀请,您可以按需使用;单个直播间是否邀请成功,您需要在 `completion` 回调中检查`Result`是否为`.success`。
114
61
  > - 该接口支持扩展字段,邀请发送成功后,该字段会随着 `CoHostEventPublisher ` 的 `onCoHostRequestReceived` 回调通知给对端主播,您可以在这个字段中携带 “**是否立即开始 PK 对战**” 等信息,来实现自己的特殊业务。
@@ -131,7 +78,7 @@ coHostStore.requestHostConnection(
131
78
  completion: { [weak self] result in
132
79
  guard let self = self else { return }
133
80
  switch result {
134
- case .success():
81
+ case .success():
135
82
  print("邀请发送成功")
136
83
  break
137
84
  case .failure(let error):
@@ -269,7 +216,7 @@ coHostStore.requestHostConnection(
269
216
  completion: { [weak self] result in
270
217
  guard let self = self else { return }
271
218
  switch result {
272
- case .success():
219
+ case .success():
273
220
  print("邀请发送成功")
274
221
  break
275
222
  case .failure(let error):
@@ -299,32 +246,10 @@ func onExitButtonClicked() {
299
246
  ## 主播发起 PK
300
247
 
301
248
  主播发起 PK 支持两种主要业务流程,以满足不同直播互动需求。核心区别在于 PK 发起前房间的状态。
302
- <table>
303
- <tr>
304
- <td rowspan="1" colSpan="1" >**PK 模式**</td>
305
-
306
- <td rowspan="1" colSpan="1" >**房间状态(PK 前)**</td>
307
-
308
- <td rowspan="1" colSpan="1" >**房间状态(PK 后)**</td>
309
- </tr>
310
-
311
- <tr>
312
- <td rowspan="1" colSpan="1" >**场景一:主播在连线后再发起 PK**</td>
313
-
314
- <td rowspan="1" colSpan="1" >双方**已连线**</td>
315
-
316
- <td rowspan="1" colSpan="1" >恢复连线状态</td>
317
- </tr>
318
-
319
- <tr>
320
- <td rowspan="1" colSpan="1" >**场景二:主播发起带 PK 模式的连线**</td>
321
-
322
- <td rowspan="1" colSpan="1" >双方**未连线**</td>
323
-
324
- <td rowspan="1" colSpan="1" >恢复连线状态</td>
325
- </tr>
326
- </table>
327
-
249
+ | **PK 模式** | **房间状态(PK 前)** | **房间状态(PK 后)** |
250
+ | --- | --- | --- |
251
+ | **场景一:主播在连线后再发起 PK** | 双方**已连线** | 恢复连线状态 |
252
+ | **场景二:主播发起带 PK 模式的连线** | 双方**未连线** | 恢复连线状态 |
328
253
 
329
254
  ### 场景一:主播在连线后再发起 PK
330
255
 
@@ -341,17 +266,12 @@ AtomicXCore 支持您在这些主播中发起限时的对战 PK。交互如下
341
266
 
342
267
  6. 当 PK 完全结束后又恢复到连线状态。
343
268
 
344
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9ee5406bcc3111f08e74525400bf7822.png)
345
-
346
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9b49a9bacc3111f093295254001c06ec.png)
347
-
348
-
349
269
  #### 步骤 1. 连线主播发起 PK 邀请
350
270
 
351
271
  当主播已经处于跨房连线时,可以在参与连线的主播之间发起一场限时 PK,`AtomicXCore` 支持您设置 PK 的时长、是否需要对端主播同意才开始 PK 以及发起 PK 时携带扩展信息。您可以调用 `BattleStore` 的 `requestBattle` 接口发起 PK 邀请。
352
272
 
353
273
  > **说明:**
354
- >
274
+ >
355
275
  > - 当您不设置 `BattleConfig` 的 `duration` 字段时, PK 默认时长为 5 分钟。
356
276
  > - 当您不需要对端主播同意时,您可以设置 `BattleConfig` 的 `needResponse` 字段为 `false`,当邀请发出后 PK 会立即开始。
357
277
  > - 当 `BattleConfig` 的 `needResponse` 字段为 `false` 时,`requestBattle` 接口的 `timeout` 字段必须设置为 0。
@@ -368,7 +288,7 @@ let config = BattleConfig(
368
288
  duration: 30, // PK 持续 30 秒
369
289
  needResponse: true, // 需要对方响应
370
290
  extensionInfo: ""
371
- )
291
+ )
372
292
  battleStore.requestBattle(config: config, userIDList: [targetUserID], timeout: 10) { [weak self] result in
373
293
  guard let self else { return }
374
294
  switch result {
@@ -409,9 +329,6 @@ battleStore.battleEventPublisher
409
329
 
410
330
  - 进入 PK 状态之后,参与 PK 的所有主播均会收到 `BattleEventPublisher ` 的 `onBattleStarted` 回调。
411
331
 
412
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9bacf5a2cc3111f091ab5254007c27c5.png)
413
-
414
-
415
332
  #### 步骤 4. 结束 PK 状态
416
333
 
417
334
  有以下两种方式可以结束 PK 状态。
@@ -442,15 +359,14 @@ battleStore.exitBattle(battleID: battleID, completion: { [weak self] result in
442
359
  当 PK 结束之后 (也即 `BattleEventPublisher` 的 `onBattleEnded` 回调触发时),您可以通过该回调在 UI 上展示 PK 结束,并区分出胜负(详见区分胜负章节)
443
360
 
444
361
  > **说明:**
445
- >
362
+ >
446
363
  > - 在连线过程中发起的 PK,当 PK 结束后会自动恢复到跨房连线状态。
447
364
  > - 如果您想在 PK 结束之后同步结束跨房连线,可以调用 `CoHostStore` 的 `exitHostConnection` 结束连线。
448
365
 
449
-
450
366
  ### 场景二:主播发起带 PK 模式的连线
451
367
 
452
368
  AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历连线的交互过程),当 PK 结束后自动恢复到房间内直播状态。如下图所示:
453
- 1. 主播在个人直播过程中,点击 PK 按钮,打开 UI 面板展示当前正在开播的主播列表(详见[《主播发起一场连线》的步骤 1](https://write.woa.com/#1ce7ad55-e199-4098-a9bb-554c204fdd97))。
369
+ 1. 主播在个人直播过程中,点击 PK 按钮,打开 UI 面板展示当前正在开播的主播列表(详见《主播发起一场连线》的步骤 1)。
454
370
 
455
371
  2. 主播选中其中一个主播,发起 PK 邀请。
456
372
 
@@ -460,17 +376,11 @@ AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历
460
376
 
461
377
  5. 当 PK 结束之后,根据 PK 过程中的积分来区分胜负。
462
378
 
463
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9a888cebcc3111f0afdc52540044a08e.png)
464
-
465
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9bfbf06fcc3111f093295254001c06ec.png)
466
-
467
-
468
379
  > **说明:**
469
- >
380
+ >
470
381
 
471
382
  > 该功能需要同时使用 CoHostStore 和 BattleStore,并且借助 BattleConfig 的 needResponse 为 false 完成。
472
- >
473
-
383
+ >
474
384
 
475
385
  #### 步骤 1. 主播发起连线请求
476
386
 
@@ -483,14 +393,14 @@ AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历
483
393
 
484
394
  ``` swift
485
395
  import AtomicXCore
486
-
396
+
487
397
  // 从 LiveListStore 中获取的目标房间 ID
488
398
  let targetHostLiveID = "target_host_room_id"
489
399
  // 使用 6v6 语聊房静态布局为例
490
400
  let layoutTemplate = .hostStaticVoice6v6
491
401
  let timeout: TimeInterval = 10 // 邀请超时时间(秒)
492
402
  let extraInfo: String = "" // 额外的业务信息,用于“直连 PK”时携带标识
493
-
403
+
494
404
  coHostStore.requestHostConnection(
495
405
  targetHost: targetHostLiveID,
496
406
  layoutTemplate: layoutTemplate,
@@ -499,7 +409,7 @@ AtomicXCore 支持您在房间内直播时,直接发起 PK (中间不经历
499
409
  completion: { [weak self] result in
500
410
  guard let self = self else { return }
501
411
  switch result {
502
- case .success():
412
+ case .success():
503
413
  print("邀请发送成功")
504
414
  break
505
415
  case .failure(let error):
@@ -604,7 +514,7 @@ coHostStore.coHostEventPublisher
604
514
 
605
515
  #### 步骤 4. 自动进入 PK 状态
606
516
 
607
- 此步骤与 [主播在连线后再发起 PK - 步骤 3](https://write.woa.com/#b775b648-c9e2-480c-8678-f7e419e32bfa) 相同,此处不再赘述。
517
+ 此步骤与 主播在连线后再发起 PK - 步骤 3 相同,此处不再赘述。
608
518
 
609
519
  ## PK 分数更新与胜负判断
610
520
 
@@ -613,125 +523,45 @@ coHostStore.coHostEventPublisher
613
523
  通常在**直播主播 PK 场景**下,会将主播收到的礼物价值与 PK 数值挂钩(例如:观众送 "火箭" 礼物,主播 PK 分数增加 500 分),您可以通过我们的 REST API,轻松实现直播 PK 场景下的分数实时更新。
614
524
 
615
525
  > **重要说明:**
616
- >
526
+ >
617
527
 
618
528
  > LiveKit 后台的 PK 分数系统采用纯数值计算和累加机制,所以您需要根据自身的运营策略和业务需求,调用更新接口前完成 PK 分数的计算,您可以参考以下的 PK 分数计算示例:
619
- >
620
- <table>
621
- <tr>
622
- <td rowspan="1" colSpan="1" >礼物类型</td>
623
-
624
- <td rowspan="1" colSpan="1" >分数计算规则</td>
625
-
626
- <td rowspan="1" colSpan="1" >示例</td>
627
- </tr>
628
-
629
- <tr>
630
- <td rowspan="1" colSpan="1" >​基础礼物​</td>
631
-
632
- <td rowspan="1" colSpan="1" >礼物价值 × 5</td>
633
-
634
- <td rowspan="1" colSpan="1" >10元礼物 → 50分</td>
635
- </tr>
636
-
637
- <tr>
638
- <td rowspan="1" colSpan="1" >​中级礼物​</td>
639
-
640
- <td rowspan="1" colSpan="1" >礼物价值 × 8</td>
641
-
642
- <td rowspan="1" colSpan="1" >50元礼物 → 400分</td>
643
- </tr>
644
-
645
- <tr>
646
- <td rowspan="1" colSpan="1" >​高级礼物​</td>
647
-
648
- <td rowspan="1" colSpan="1" >礼物价值 × 12</td>
649
-
650
- <td rowspan="1" colSpan="1" >100元礼物 → 1200分</td>
651
- </tr>
652
-
653
- <tr>
654
- <td rowspan="1" colSpan="1" >​特效礼物​</td>
655
-
656
- <td rowspan="1" colSpan="1" >固定高分数</td>
657
-
658
- <td rowspan="1" colSpan="1" >520元礼物 → 1314分<br></td>
659
- </tr>
660
- </table>
661
-
662
-
529
+ >
530
+ | 礼物类型 | 分数计算规则 | 示例 |
531
+ | --- | --- | --- |
532
+ | ​基础礼物​ | 礼物价值 × 5 | 10元礼物 → 50分 |
533
+ | ​中级礼物​ | 礼物价值 × 8 | 50元礼物 → 400分 |
534
+ | ​高级礼物​ | 礼物价值 × 12 | 100元礼物 → 1200分 |
535
+ | ​特效礼物​ | 固定高分数 | 520元礼物 → 1314分 |
663
536
 
664
537
  #### REST API 调用流程
665
538
 
666
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/998bd59ecc3111f08658525400454e06.png)
667
-
668
-
669
539
  #### 关键流程说明
670
540
  1. ​**获取 PK 状态​**:
671
541
 
672
- - 回调配置​:您可以通过配置 [PK 状态回调](https://write.woa.com/document/170122621675196416),由 LiveKit 后台在 PK 开始、结束时,主动通知您的系统 PK 状态。
542
+ - 回调配置​:您可以通过配置 PK 状态回调,由 LiveKit 后台在 PK 开始、结束时,主动通知您的系统 PK 状态。
673
543
 
674
- - 主动查询​:您的后台服务可主动调用 [PK 状态查询](https://write.woa.com/document/169572228815638528) 接口,随时查询当前 PK 状态。
544
+ - 主动查询​:您的后台服务可主动调用 PK 状态查询 接口,随时查询当前 PK 状态。
675
545
 
676
546
  2. **PK分数计算**​:您的后台服务根据业务规则(如上述示例),计算 PK 分数增量。
677
547
 
678
- 3. **PK分数更新​**:您的后台服务调用 [修改 PK 分数](https://write.woa.com/document/169571965752266752) 接口,向 LiveKit 后台更新 PK 分数。
548
+ 3. **PK分数更新​**:您的后台服务调用 修改 PK 分数 接口,向 LiveKit 后台更新 PK 分数。
679
549
 
680
550
  4. **LiveKit后台 同步客户端**​:LiveKit 后台自动将更新后的 PK 分数同步到所有客户端。
681
551
 
682
-
683
552
  #### 涉及的 REST API 接口
684
- <table>
685
- <tr>
686
- <td rowspan="1" colSpan="1" >接口</td>
687
-
688
- <td rowspan="1" colSpan="1" >功能描述</td>
689
-
690
- <td rowspan="1" colSpan="1" >请求示例</td>
691
- </tr>
692
-
693
- <tr>
694
- <td rowspan="1" colSpan="1" >主动接口 - 查询 PK 状态</td>
695
-
696
- <td rowspan="1" colSpan="1" >可根据此接口查询当前房间是否在 PK</td>
697
-
698
- <td rowspan="1" colSpan="1" >[请求示例](https://write.woa.com/document/169572228815638528)</td>
699
- </tr>
700
-
701
- <tr>
702
- <td rowspan="1" colSpan="1" >主动接口 - 修改 PK 分数</td>
703
-
704
- <td rowspan="1" colSpan="1" >将计算后的 PK 数值通过此接口更新</td>
705
-
706
- <td rowspan="1" colSpan="1" >[请求示例](https://write.woa.com/document/169571965752266752)</td>
707
- </tr>
708
-
709
- <tr>
710
- <td rowspan="1" colSpan="1" >回调配置 - PK 开始时回调</td>
711
-
712
- <td rowspan="1" colSpan="1" >客户后台可以通过该回调及时知晓 PK 开启</td>
713
-
714
- <td rowspan="1" colSpan="1" >[回调示例](https://write.woa.com/document/170122621675196416)</td>
715
- </tr>
716
-
717
- <tr>
718
- <td rowspan="1" colSpan="1" >回调配置 - PK 结束时回调</td>
719
-
720
- <td rowspan="1" colSpan="1" >客户后台可以通过该回调及时知晓 PK 结束</td>
721
-
722
- <td rowspan="1" colSpan="1" >[回调示例](https://write.woa.com/document/170123212271988736)</td>
723
- </tr>
724
- </table>
725
-
553
+ | 接口 | 功能描述 | 请求示例 |
554
+ | --- | --- | --- |
555
+ | 主动接口 - 查询 PK 状态 | 可根据此接口查询当前房间是否在 PK | 请求示例 |
556
+ | 主动接口 - 修改 PK 分数 | 将计算后的 PK 数值通过此接口更新 | 请求示例 |
557
+ | 回调配置 - PK 开始时回调 | 客户后台可以通过该回调及时知晓 PK 开启 | 回调示例 |
558
+ | 回调配置 - PK 结束时回调 | 客户后台可以通过该回调及时知晓 PK 结束 | 回调示例 |
726
559
 
727
560
  ### 区分 PK 胜负
728
561
 
729
562
  通常在**主播 PK 场景**下,需将主播收到的礼物价值与 PK 分值挂钩(例如:观众送 “火箭” 礼物,主播 PK 分值增加 500 分),通过礼物互动提升 PK 竞技性与直播氛围。AtomicXCore 的 PK 模块提供了 PK 分值的更新与广播系统,您只需要将观众送礼与之相关联即可。
730
563
 
731
- ![](https://write-document-release-1258344699.cos.ap-guangzhou.tencentcos.cn/100038646063/9a24172fcc3111f0afdc52540044a08e.png)
732
-
733
-
734
- 如上图所示,当您的计费系统检测到有观众送礼并且计费成功后,您可以调用 [修改 PK 分数](https://write.woa.com/document/169571965752266752) 更新当前主播的 PK 分值。当主播的 PK 分值发生变化后,参与 PK 的直播间中的所有用户(包含主播和观众)的 `BattleState` 的 `battleScore` 均会发生改变。您可以在 `battleScore` 发生改变的时候,更新 PK 进度条中的分值。
564
+ 如上图所示,当您的计费系统检测到有观众送礼并且计费成功后,您可以调用 修改 PK 分数 更新当前主播的 PK 分值。当主播的 PK 分值发生变化后,参与 PK 的直播间中的所有用户(包含主播和观众)的 `BattleState` 的 `battleScore` 均会发生改变。您可以在 `battleScore` 发生改变的时候,更新 PK 进度条中的分值。
735
565
  ``` swift
736
566
  battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleScore))
737
567
  .receive(on: RunLoop.main)
@@ -745,48 +575,12 @@ battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleS
745
575
  ## API 文档
746
576
 
747
577
  关于 `CoHostStore`、`BattleStore`、`LiveListStore` 和 `LiveSeatStore` 及其相关类的所有公开接口、属性和方法的详细信息,请参阅随 [**AtomicXCore**](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore) 框架的官方 API 文档。
748
- <table>
749
- <tr>
750
- <td rowspan="1" colSpan="1" >**Store/Component**</td>
751
-
752
- <td rowspan="1" colSpan="1" >**功能描述**</td>
753
-
754
- <td rowspan="1" colSpan="1" >**API 文档**</td>
755
- </tr>
756
-
757
- <tr>
758
- <td rowspan="1" colSpan="1" >**CoHostStore**</td>
759
-
760
- <td rowspan="1" colSpan="1" >主播连线生命周期管理: 负责管理和协调主播间连线的生命周期,包括发起连线邀请、处理接受/拒绝、连线状态切换、连线中的视频流管理以及断开连线等任务。</td>
761
-
762
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cohoststore)</td>
763
- </tr>
764
-
765
- <tr>
766
- <td rowspan="1" colSpan="1" >**BattleStore**</td>
767
-
768
- <td rowspan="1" colSpan="1" >主播 PK 对战生命周期管理: 负责管理主播间的限时 PK 对战全生命周期,包括发起 PK 邀请、开始对战、实时更新 PK 分数、PK 结束结算胜负以及惩罚时间等流程。</td>
769
-
770
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/battlestore)</td>
771
- </tr>
772
-
773
- <tr>
774
- <td rowspan="1" colSpan="1" >**LiveListStore**</td>
775
-
776
- <td rowspan="1" colSpan="1" >直播间全生命周期管理:查询房间列表,修改直播信息等。</td>
777
-
778
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore)</td>
779
- </tr>
780
-
781
- <tr>
782
- <td rowspan="1" colSpan="1" >**LiveSeatStore**</td>
783
-
784
- <td rowspan="1" colSpan="1" >麦位状态管理: 管理房间内所有麦位状态(包括连线状态下的跨房间麦位),用于监听用户上下麦、麦克风、麦位状态等信息。</td>
785
-
786
- <td rowspan="1" colSpan="1" >[API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore)</td>
787
- </tr>
788
- </table>
789
-
578
+ | **Store/Component** | **功能描述** | **API 文档** |
579
+ | --- | --- | --- |
580
+ | **CoHostStore** | 主播连线生命周期管理: 负责管理和协调主播间连线的生命周期,包括发起连线邀请、处理接受/拒绝、连线状态切换、连线中的视频流管理以及断开连线等任务。 | [API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/cohoststore) |
581
+ | **BattleStore** | 主播 PK 对战生命周期管理: 负责管理主播间的限时 PK 对战全生命周期,包括发起 PK 邀请、开始对战、实时更新 PK 分数、PK 结束结算胜负以及惩罚时间等流程。 | [API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/battlestore) |
582
+ | **LiveListStore** | 直播间全生命周期管理:查询房间列表,修改直播信息等。 | [API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveliststore) |
583
+ | **LiveSeatStore** | 麦位状态管理: 管理房间内所有麦位状态(包括连线状态下的跨房间麦位),用于监听用户上下麦、麦克风、麦位状态等信息。 | [API 文档](https://tencent-rtc.github.io/TUIKit_iOS/documentation/atomicxcore/liveseatstore) |
790
584
 
791
585
  ## 常见问题
792
586
 
@@ -803,7 +597,6 @@ battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleS
803
597
 
804
598
  - 检查网络连接是否通畅,邀请信令有 30 秒默认超时时间。
805
599
 
806
-
807
600
  #### 连线或 PK 过程中,一方主播网络断开或App崩溃了怎么办?
808
601
 
809
602
  **CoHostStore** 和 **BattleStore** 内部都有心跳和超时检测机制。如果一方异常退出,另一方会通过 **onCoHostUserLeft** 或 **onUserExitBattle** 等事件收到通知,您可以根据这些事件来处理UI,例如提示"对方已掉线"并结束互动。
@@ -816,5 +609,3 @@ battleStore.state.subscribe(StatePublisherSelector(keyPath: \BattleState.battleS
816
609
  - **多端实时同步**:用标准化格式(例如 JSON)快速对接礼物、PK、展示系统,确保主播 / 观众 / 后台分数实时一致,无延迟。
817
610
 
818
611
  - **灵活适配规则**:后端改配置(例如调整礼物对应分数、加成分数)即可适配业务变化,无需改前端,降低迭代成本。
819
-
820
-